summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/MachineFunction.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-02-28 01:15:01 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-02-28 01:15:01 +0000
commit92c15b2b2cddbfb842530e4c4ebfdf90e612aaf9 (patch)
tree33d149da0582e45ff1eb1bf4296fa9fd695dfe41 /llvm/lib/CodeGen/MachineFunction.cpp
parentec75fec805a7dec0c9a4e29bebdeca0bc8ad1e5b (diff)
downloadbcm5719-llvm-92c15b2b2cddbfb842530e4c4ebfdf90e612aaf9.tar.gz
bcm5719-llvm-92c15b2b2cddbfb842530e4c4ebfdf90e612aaf9.zip
Enable ARM base pointer when calling functions with large arguments.
When an outgoing call takes more than 2k of arguments on the stack, we don't allocate that call frame in the prolog, but adjust the stack pointer immediately before the call instead. This causes problems with the emergency spill slot because PEI can't track stack pointer adjustments on the second pass, and if the outgoing arguments are too big, SP can't be used to reach the emergency spill slot at all. Work around these problems by ensuring there is a base or frame pointer that can be used to access the emergency spill slot. <rdar://problem/10917166> llvm-svn: 151604
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud