summaryrefslogtreecommitdiff
path: root/compiler/optimizing/optimizing_compiler.cc
diff options
context:
space:
mode:
author David Srbecky <dsrbecky@google.com> 2022-01-12 13:31:00 +0000
committer Treehugger Robot <treehugger-gerrit@google.com> 2022-04-07 17:50:17 +0000
commit8bb486a78e350ce6072d71e15cc4f01a142e80d4 (patch)
treece4a98de895bb081c67417271bd560523364704c /compiler/optimizing/optimizing_compiler.cc
parent608a9158b06598c6403dea766822534a347b1f27 (diff)
Add CFI-checking script and fix found CFI issues.
It is essential for the unwinder to know the stack size at any point. Our assembly is manually annotated with this information, but it is easy to make mistakes (e.g. cfi_restore_state handles register spills, but does not restore CFI offset as one might easily assume). Add python script which compares the CFI information to disassembly and checks that they match (that is, it is checking that push/pop instructions result in the expected CFI offset increment/decrement). In general, this is unfeasible (as we would not need CFI otherwise), but even conservative checks can catch many bugs. Test: ./art/test.py -b -r Change-Id: I232fc0a31fa6f28381e18fdf6aceaf0b8323f550
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
0 files changed, 0 insertions, 0 deletions