aboutsummaryrefslogtreecommitdiff
path: root/llvm/docs/CommandGuide
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2023-06-05 15:15:01 -0700
committerMatthias Braun <matze@braunis.de>2023-06-26 13:50:36 -0700
commit02ba5b8c6b9f0c1ce6df421db5dd5eb307d7d27d (patch)
tree752ea7db9ee879f79ddd878cc7bbe6a5dff0750b /llvm/docs/CommandGuide
parent759b21762634b906ff545353deae47dfbfc45c0b (diff)
downloadllvm-02ba5b8c6b9f0c1ce6df421db5dd5eb307d7d27d.zip
llvm-02ba5b8c6b9f0c1ce6df421db5dd5eb307d7d27d.tar.gz
llvm-02ba5b8c6b9f0c1ce6df421db5dd5eb307d7d27d.tar.bz2
Ignore load/store until stack address computation
No longer conservatively assume a load/store accesses the stack when we can prove that we did not compute any stack-relative address up to this point in the program. We do this in a cheap not-quite-a-dataflow-analysis: Assume `NoStackAddressUsed` when all predecessors of a block already guarantee it. Process blocks in reverse post order to guarantee that except for loop headers we have processed all predecessors of a block before processing the block itself. For loops we accept the conservative answer as they are unlikely to be shrink-wrappable anyway. Differential Revision: https://reviews.llvm.org/D152213
Diffstat (limited to 'llvm/docs/CommandGuide')
0 files changed, 0 insertions, 0 deletions