<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; ">That's fine. Thanks.<DIV><BR class="khtml-block-placeholder"></DIV><DIV>Evan</DIV><DIV><BR><DIV><DIV>On Apr 30, 2007, at 6:55 AM, Lauro Ramos Venancio wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite">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><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">_______________________________________________</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">llvm-commits mailing list</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</A></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</A></DIV> </BLOCKQUOTE></DIV><BR></DIV></BODY></HTML>