Evan,<br><br>The problem is the semantics. A possible solution is rename UseThumbBacktraces to UseThumbFramePtrReg.<br><br>Lauro<br><br><div><span class="gmail_quote">2007/4/27, Evan Cheng <<a href="mailto:evan.cheng@apple.com">
evan.cheng@apple.com</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi Lauro,<br><br>It would be better to fix ARMSubtarget.cpp
 instead. Just initialize<br>UseThumbBacktraces to the value of input parameter thumb to the<br>ARMSubtarget ctor.<br><br>Evan<br><br>On Apr 27, 2007, at 10:58 AM, Lauro Ramos Venancio wrote:<br><br>><br>><br>> Changes in directory llvm/lib/Target/ARM:
<br>><br>> ARMRegisterInfo.cpp updated: 1.88 -> 1.89<br>> ---<br>> Log message:<br>><br>> In Thumb mode, the frame register must be R7.<br>><br>><br>> ---<br>> Diffs of the changes:  (+2 -2)
<br>><br>>  ARMRegisterInfo.cpp |    4 ++--<br>>  1 files changed, 2 insertions(+), 2 deletions(-)<br>><br>><br>> Index: llvm/lib/Target/ARM/ARMRegisterInfo.cpp<br>> diff -u llvm/lib/Target/ARM/ARMRegisterInfo.cpp:
1.88 llvm/lib/<br>> Target/ARM/ARMRegisterInfo.cpp:1.89<br>> --- llvm/lib/Target/ARM/ARMRegisterInfo.cpp:1.88      Wed Apr 25<br>> 17:13:27 2007<br>> +++ llvm/lib/Target/ARM/ARMRegisterInfo.cpp   Fri Apr 27 12:58:03 2007
<br>> @@ -85,7 +85,7 @@<br>>                                   const ARMSubtarget &sti)<br>>    : ARMGenRegisterInfo(ARM::ADJCALLSTACKDOWN, ARM::ADJCALLSTACKUP),<br>>      TII(tii), STI(sti),<br>> -    FramePtr(
STI.useThumbBacktraces() ? ARM::R7 : ARM::R11) {<br>> +    FramePtr(STI.useThumbBacktraces() || STI.isThumb() ? ARM::R7 :<br>> ARM::R11) {<br>>  }<br>><br>>  bool ARMRegisterInfo::spillCalleeSavedRegisters(MachineBasicBlock
<br>> &MBB,<br>> @@ -1472,7 +1472,7 @@<br>><br>>  unsigned ARMRegisterInfo::getFrameRegister(MachineFunction &MF)<br>> const {<br>>    if (STI.isTargetDarwin() || hasFP(MF))<br>> -    return STI.useThumbBacktraces
() ? ARM::R7 : ARM::R11;<br>> +    return STI.useThumbBacktraces() || STI.isThumb() ? ARM::R7 :<br>> ARM::R11;<br>>    else<br>>      return ARM::SP;<br>>  }<br>><br>><br>><br>> _______________________________________________
<br>> llvm-commits mailing list<br>> <a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
</a><br><br>_______________________________________________<br>llvm-commits mailing list<br><a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br></blockquote></div><br>