summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Generic/2006-09-06-SwitchLowering.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-07-11 20:29:19 +0000
committerChris Lattner <sabre@nondot.org>2009-07-11 20:29:19 +0000
commite91900097ee066970b19337d6eb2cf1b46ef93ed (patch)
treecf4b01187dc1681d8da2597ef73c33be08fcdaf2 /llvm/test/CodeGen/Generic/2006-09-06-SwitchLowering.ll
parent631a57e30fb29accd403bef5d7c84b43e348058a (diff)
downloadbcm5719-llvm-e91900097ee066970b19337d6eb2cf1b46ef93ed.tar.gz
bcm5719-llvm-e91900097ee066970b19337d6eb2cf1b46ef93ed.zip
Fix PR4533, which is about buggy codegen in x86-64 -static mode.
Basically, using: lea symbol(%rip), %rax is not valid in -static mode, because the current RIP may not be within 32-bits of "symbol" when an app is built partially pic and partially static. The fix for this is to compile it to: lea symbol, %rax It would be better to codegen this as: movq $symbol, %rax but that will come next. The hard part of fixing this bug was fixing abi-isel, which was actively testing for the wrong behavior. Also, the RUN lines are completely impossible to understand what they are testing. To help with this, convert the -static x86-64 codegen tests to use filecheck. This is much more stable and makes it more clear what the codegen is expected to be. llvm-svn: 75382
Diffstat (limited to 'llvm/test/CodeGen/Generic/2006-09-06-SwitchLowering.ll')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud