mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
hasFP should return true if frame address is taken.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73893 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
08367b6163
commit
8dcbbdd00e
@ -497,7 +497,9 @@ ARMRegisterInfo::requiresRegisterScavenging(const MachineFunction &MF) const {
|
||||
///
|
||||
bool ARMRegisterInfo::hasFP(const MachineFunction &MF) const {
|
||||
const MachineFrameInfo *MFI = MF.getFrameInfo();
|
||||
return NoFramePointerElim || MFI->hasVarSizedObjects();
|
||||
return (NoFramePointerElim ||
|
||||
MFI->hasVarSizedObjects() ||
|
||||
MFI->isFrameAddressTaken());
|
||||
}
|
||||
|
||||
// hasReservedCallFrame - Under normal circumstances, when a frame pointer is
|
||||
|
12
test/CodeGen/ARM/arm-frameaddr.ll
Normal file
12
test/CodeGen/ARM/arm-frameaddr.ll
Normal file
@ -0,0 +1,12 @@
|
||||
; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin | grep mov | grep r7
|
||||
; RUN: llvm-as < %s | llc -mtriple=arm-linux-gnueabi | grep mov | grep r11
|
||||
; PR4344
|
||||
; PR4416
|
||||
|
||||
define arm_aapcscc i8* @t() nounwind {
|
||||
entry:
|
||||
%0 = call i8* @llvm.frameaddress(i32 0)
|
||||
ret i8* %0
|
||||
}
|
||||
|
||||
declare i8* @llvm.frameaddress(i32) nounwind readnone
|
Loading…
Reference in New Issue
Block a user