aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Commands/CommandObjectFrame.cpp
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-09-16 20:58:28 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2011-09-16 20:58:28 +0000
commit2d406f02bfbb539a4275324d039c24d1bc2769d8 (patch)
treea10ca0df98c61644beddb82d35d62e6388e6cf73 /lldb/source/Commands/CommandObjectFrame.cpp
parent099c9767c3ff735c8a87707ddf8faced5cee6fa7 (diff)
downloadllvm-2d406f02bfbb539a4275324d039c24d1bc2769d8.zip
llvm-2d406f02bfbb539a4275324d039c24d1bc2769d8.tar.gz
llvm-2d406f02bfbb539a4275324d039c24d1bc2769d8.tar.bz2
Fix PR10884.
This PR basically reports a problem where a crash in generated code happened due to %rbp being clobbered: pushq %rbp movq %rsp, %rbp .... vmovmskps %ymm12, %ebp .... movq %rbp, %rsp popq %rbp ret Since Eric's r123367 commit, the default stack alignment for x86 32-bit has changed to be 16-bytes. Since then, the MaxStackAlignmentHeuristicPass hasn't been really used, but with AVX it becomes useful again, since per ABI compliance we don't always align the stack to 256-bit, but only when there are 256-bit incoming arguments. ReserveFP was only used by this pass, but there's no RA target hook that uses getReserveFP() to check for the presence of FP (since nothing was triggering the pass to run, the uses of getReserveFP() were removed through time without being noticed). Change this pass to use setForceFramePointer, which is properly called by MachineFunction hasFP method. The testcase is very big and dependent on RA, not sure if it's worth adding to test/CodeGen/X86. llvm-svn: 139939
Diffstat (limited to 'lldb/source/Commands/CommandObjectFrame.cpp')
0 files changed, 0 insertions, 0 deletions