From 910139f9ca53fc20a680d51ae61bb1e072095141 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Thu, 9 Jul 2009 06:53:48 +0000 Subject: Targets sometimes assign fixed stack object to spill certain callee-saved registers based on dynamic conditions. For example, X86 EBP/RBP, when used as frame register has to be spilled in the first fixed object. It should inform PEI this so it doesn't get allocated another stack object. Also, it should not be spilled as other callee-saved registers but rather its spilling and restoring are being handled by emitPrologue and emitEpilogue. Avoid spilling it twice. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75116 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/X86/2004-02-13-FrameReturnAddress.ll | 2 ++ 1 file changed, 2 insertions(+) (limited to 'test/CodeGen/X86/2004-02-13-FrameReturnAddress.ll') diff --git a/test/CodeGen/X86/2004-02-13-FrameReturnAddress.ll b/test/CodeGen/X86/2004-02-13-FrameReturnAddress.ll index f48b1d3adf..ee3169af04 100644 --- a/test/CodeGen/X86/2004-02-13-FrameReturnAddress.ll +++ b/test/CodeGen/X86/2004-02-13-FrameReturnAddress.ll @@ -1,4 +1,6 @@ ; RUN: llvm-as < %s | llc -march=x86 | grep {(%esp} +; RUN: llvm-as < %s | llc -march=x86 | grep {pushl %ebp} | count 1 +; RUN: llvm-as < %s | llc -march=x86 | grep {popl %ebp} | count 1 declare i8* @llvm.returnaddress(i32) -- cgit v1.2.3