OSDN Git Service

Make PrologEpilogInserter save/restore all callee saved registers
authorDerek Schuff <dschuff@google.com>
Fri, 14 Jun 2013 16:15:29 +0000 (16:15 +0000)
committerDerek Schuff <dschuff@google.com>
Fri, 14 Jun 2013 16:15:29 +0000 (16:15 +0000)
commit8a0d41e1a649c32e1f0e22c6c201a2e0d8463e30
treea7de62d1e90c8cec19f2fdd9378ebc25ce9f5ce7
parent80cecc8c6091b03905cdd35c4c374c20ad0702c1
Make PrologEpilogInserter save/restore all callee saved registers
in functions which call __builtin_unwind_init()

__builtin_unwind_init() is an undocumented gcc intrinsic which has this effect,
and is used in libgcc_eh.

Goes part of the way toward fixing PR8541.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183984 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/IR/Intrinsics.td
lib/CodeGen/PrologEpilogInserter.cpp
test/CodeGen/ARM/unwind-init.ll [new file with mode: 0644]
test/CodeGen/X86/unwind-init.ll [new file with mode: 0644]