diff options
author | Jason Molenda <jmolenda@apple.com> | 2015-01-08 06:41:12 +0000 |
---|---|---|
committer | Jason Molenda <jmolenda@apple.com> | 2015-01-08 06:41:12 +0000 |
commit | 4535ecb1f37ee1e16c8a5ec008e22d6bc89515c8 (patch) | |
tree | 3eef1067a8e45327de9f6702e276550f215b7c27 /llvm/lib/CodeGen/LocalStackSlotAllocation.cpp | |
parent | a257ab08038df7a2ef0262d04548f25e62cf7cc1 (diff) | |
download | bcm5719-llvm-4535ecb1f37ee1e16c8a5ec008e22d6bc89515c8.tar.gz bcm5719-llvm-4535ecb1f37ee1e16c8a5ec008e22d6bc89515c8.zip |
Have AssemblyParse_x86::get_non_call_site_unwind_plan track
which registers have been spilled (saved to the stack) - and
if we see that same register being saved to the stack again,
don't record that, it's something specific to this stack frame.
I found a code sequence for i386 where clang did a push %esi
and then later in the function it did movl %esi, -0x7c(%ebp)
and that second save of a scratch value overrode the original
push location.
<rdar://problem/19171178>
llvm-svn: 225431
Diffstat (limited to 'llvm/lib/CodeGen/LocalStackSlotAllocation.cpp')
0 files changed, 0 insertions, 0 deletions