summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/Reassociate.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-09-27 21:18:17 +0000
committerChris Lattner <sabre@nondot.org>2005-09-27 21:18:17 +0000
commit87eb24930006dbe32ef9159d58834a7a00121543 (patch)
tree8d3477362f36e149834696465ff524ce434da6c6 /llvm/lib/Transforms/Scalar/Reassociate.cpp
parent92233d21759b20bd9fa6c14ea123bb043988e056 (diff)
downloadbcm5719-llvm-87eb24930006dbe32ef9159d58834a7a00121543.tar.gz
bcm5719-llvm-87eb24930006dbe32ef9159d58834a7a00121543.zip
Completely rewrite 'correct' eh support. This changes how setjmp insertion
is performed so it is only at most once per function that contains an invoke instead of once per invoke in the function. This patch has the following perks: 1. It fixes PR631, which complains about slowness. 2. If fixes PR240, which complains about non-volatile vars being live across setjmp/longjmps. 3. It improves (but does not fix) the jmpbuf alignment issue on itanium by not forcing the jmpbufs to always be 8-bytes off the alignment of the structure. 4. It speeds up 253.perlbmk from 338s to 13.70s (a 25x improvement!), making us now about 4% faster than GCC. Further improvements are also possible. llvm-svn: 23477
Diffstat (limited to 'llvm/lib/Transforms/Scalar/Reassociate.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud