aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/TransformInternals.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
commitf4e6c3a69b3cf3a381811900c0f3768f626e90b8 (patch)
treecc21a8b71d17292877f51bf2d2095bddfd2494c2 /lib/Transforms/TransformInternals.cpp
parentfe15830f962bb7fef046203a77d438d087772b34 (diff)
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23477 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/TransformInternals.cpp')
0 files changed, 0 insertions, 0 deletions