[PATCH] [PowerPC] Fix unwind info with dynamic stack realignment

Jay Foad jay.foad at gmail.com
Tue Nov 25 15:01:36 PST 2014


Hi hfinkel, willschm,

PowerPC DWARF unwind info defined CFA as SP + offset even in a function
where the stack had been dynamically realigned. This clearly doesn't
work because the offset from SP to CFA is not a constant. Fix it by
defining CFA as BP instead.

This was causing the AddressSanitizer null_deref test to fail 50% of
the time, depending on whether SP happened to be 32-byte aligned on
entry to a particular function or not.

http://reviews.llvm.org/D6410

Files:
  lib/Target/PowerPC/PPCFrameLowering.cpp
  test/CodeGen/PowerPC/stack-realign.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6410.16633.patch
Type: text/x-patch
Size: 2705 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141125/9a26142e/attachment.bin>


More information about the llvm-commits mailing list