Skip to content

Commit

Permalink
Refactoring and simplifying analysis code.
Browse files Browse the repository at this point in the history
The template-based stuff was too complicated, and didn't seem to be
providing the hoped-for simplicity in implementing more complex
analyses, so taking the approach of simplifying everything and
will reconsider the api once a few more sophisticated analyses are
completed.
  • Loading branch information
c01db33f committed Oct 8, 2018
1 parent f32260d commit 6e8314f
Show file tree
Hide file tree
Showing 25 changed files with 1,249 additions and 2,146 deletions.
44 changes: 16 additions & 28 deletions analysis/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -22,53 +22,41 @@ package(
)

cc_library(
name = "analysis",
name = "constants_analysis",
hdrs = [
"edge_dependent_analysis.h",
"edge_independent_analysis.h",
"dataflow.h",
"map_storage.h",
"register_state.h",
"solver.h",
"temporary_state.h",
"value/immediate.h",
"value/operations.h",
"value/top.h",
"constants_analysis.h",
"session.h",
],
srcs = [
"edge_dependent_analysis.cpp",
"edge_independent_analysis.cpp",
"value/immediate.cpp",
"value/top.cpp",
"constants_analysis.cpp",
],
deps = [
"//flow_graph",
"//memory_image",
"//reil",
"@com_google_abseil//absl/meta:type_traits",
"@com_google_abseil//absl/types:span",
"@com_google_abseil//absl/memory",
],
)

filegroup(
name = "test_data",
srcs = glob([
"test_data/*.mem",
"test_data/*.cfg",
]),
)

cc_test(
name = "dataflow_test",
name = "constants_analysis_test",
srcs = [
"dataflow_test.cpp",
"constants_analysis_test.cpp",
],
data = [
":test_data",
],
deps = [
":analysis",
":constants_analysis",
"@com_google_googletest//:gtest",
],
size = "small",
)

filegroup(
name = "test_data",
srcs = glob([
"test_data/*.mem",
"test_data/*.cfg",
]),
)
Loading

0 comments on commit 6e8314f

Please sign in to comment.