summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2022-12-04 11:55:57 +0100
committerLéo Lam <leo@leolam.fr>2022-12-04 11:56:32 +0100
commit8dbd0d7839f8c42b94290da31b3e80964e5b392e (patch)
tree5d3360de07e601b42ae33c968c42edfc066f58a9
parent965b45426ca08bba046ac58150135a9bccd5bd6f (diff)
Add a script to detect function overlaps in the CSV
Helps identify and fix function sizes in the function CSV
-rwxr-xr-xtools/detect_function_csv_overlaps.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/detect_function_csv_overlaps.py b/tools/detect_function_csv_overlaps.py
new file mode 100755
index 00000000..417dd0ea
--- /dev/null
+++ b/tools/detect_function_csv_overlaps.py
@@ -0,0 +1,13 @@
+#!/usr/bin/env python3
+from common.util import utils
+
+prev = None
+
+for info in utils.get_functions():
+ if prev is not None:
+ if (prev.addr <= info.addr < prev.addr + prev.size) or \
+ (prev.addr <= info.addr + info.size < prev.addr + prev.size):
+ print(
+ f"overlap between {prev.addr:x} and {info.addr:x} (expected size: {info.addr - prev.addr:06})")
+
+ prev = info