Fixed Bug 2751

http://llvm.org/bugs/show_bug.cgi?id=2751

Abicall was enabled even when static code model was provided 
in the command line.
The correct behavior is to disable abicall when static is
specified.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56228 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bruno Cardoso Lopes
2008-09-15 21:06:55 +00:00
parent 5eb0cecbc5
commit b3d7299694
2 changed files with 4 additions and 4 deletions

View File

@@ -65,9 +65,9 @@ MipsSubtarget::MipsSubtarget(const TargetMachine &TM, const Module &M,
HasCondMov = true;
}
// Abicall is the default for O32 ABI and is ignored
// for EABI.
if (NotABICall || isABI_EABI())
// Abicall is the default for O32 ABI, but is disabled within EABI and in
// static code.
if (NotABICall || isABI_EABI() || (TM.getRelocationModel() == Reloc::Static))
HasABICall = false;
// TODO: disable when handling 64 bit symbols in the future.