Spaces:
Sleeping
Sleeping
Commit
·
5bf0310
1
Parent(s):
52b18ab
Print relocs
Browse files
main.py
CHANGED
@@ -96,6 +96,18 @@ def compile(compiler, flags, source):
|
|
96 |
# Filter out .text
|
97 |
json_relocs = [r for r in json_relocs if r["Symbol"]["Name"] != ".text"]
|
98 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
if result.returncode == 0:
|
100 |
return json_relocs, compiled_bytes, compile_output, disassembly
|
101 |
else:
|
|
|
96 |
# Filter out .text
|
97 |
json_relocs = [r for r in json_relocs if r["Symbol"]["Name"] != ".text"]
|
98 |
|
99 |
+
def reloc_type2size(s):
|
100 |
+
match s:
|
101 |
+
case "R_X86_64_PC32":
|
102 |
+
return 32
|
103 |
+
case "R_X86_64_PLT32":
|
104 |
+
return 32
|
105 |
+
case _:
|
106 |
+
assert False, f"Unknown reloc {s}"
|
107 |
+
|
108 |
+
relocs = [(r["Offset"], reloc_type2size(r["Type"]["Name"])) for r in json_relocs]
|
109 |
+
print(f"relocs: {relocs}")
|
110 |
+
|
111 |
if result.returncode == 0:
|
112 |
return json_relocs, compiled_bytes, compile_output, disassembly
|
113 |
else:
|