[llvm] r225846 - Debug Info: Turn DIExpression::getFrameRegister() into an isFrameRegister()

David Blaikie dblaikie at gmail.com
Tue Jan 13 19:08:19 PST 2015


On Tue, Jan 13, 2015 at 3:10 PM, Adrian Prantl <aprantl at apple.com> wrote:

> Author: adrian
> Date: Tue Jan 13 17:10:43 2015
> New Revision: 225846
>
> URL: http://llvm.org/viewvc/llvm-project?rev=225846&view=rev
> Log:
> Debug Info: Turn DIExpression::getFrameRegister() into an isFrameRegister()
> function.
>
> NFC.
>
> Modified:
>     llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
>     llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
>     llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.h
>     llvm/trunk/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
>
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp?rev=225846&r1=225845&r2=225846&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp (original)
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp Tue Jan 13
> 17:10:43 2015
> @@ -46,8 +46,9 @@ void DebugLocDwarfExpression::EmitUnsign
>    BS.EmitULEB128(Value, Twine(Value));
>  }
>
> -unsigned DebugLocDwarfExpression::getFrameRegister() {
> - llvm_unreachable("not available");
> +bool DebugLocDwarfExpression::isFrameRegister(unsigned MachineReg) {
> +  // This information is not available while emitting .debug_loc entries.
>

Should it be? (should we keep track of it when building the DebugLocEntries
in some way?)


> +  return false;
>  }
>
>
>  //===----------------------------------------------------------------------===//
>
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.cpp?rev=225846&r1=225845&r2=225846&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.cpp (original)
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.cpp Tue Jan 13
> 17:10:43 2015
> @@ -79,7 +79,7 @@ bool DwarfExpression::AddMachineRegIndir
>    if (DwarfReg < 0)
>      return false;
>
> -  if (MachineReg == getFrameRegister()) {
> +  if (isFrameRegister(MachineReg)) {
>      // If variable offset is based in frame register then use fbreg.
>      EmitOp(dwarf::DW_OP_fbreg);
>      EmitSigned(Offset);
>
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.h?rev=225846&r1=225845&r2=225846&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.h (original)
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/DwarfExpression.h Tue Jan 13
> 17:10:43 2015
> @@ -40,7 +40,7 @@ public:
>    virtual void EmitSigned(int Value) = 0;
>    virtual void EmitUnsigned(unsigned Value) = 0;
>
> -  virtual unsigned getFrameRegister() = 0;
> +  virtual bool isFrameRegister(unsigned MachineReg) = 0;
>
>    /// Emit a dwarf register operation.
>    void AddReg(int DwarfReg, const char* Comment = nullptr);
> @@ -92,7 +92,7 @@ public:
>    void EmitOp(uint8_t Op, const char *Comment) override;
>    void EmitSigned(int Value) override;
>    void EmitUnsigned(unsigned Value) override;
> -  unsigned getFrameRegister() override;
> +  bool isFrameRegister(unsigned MachineReg) override;
>  };
>
>  }
>
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/DwarfUnit.cpp?rev=225846&r1=225845&r2=225846&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/AsmPrinter/DwarfUnit.cpp (original)
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/DwarfUnit.cpp Tue Jan 13 17:10:43
> 2015
> @@ -55,7 +55,7 @@ public:
>    void EmitOp(uint8_t Op, const char* Comment = nullptr) override;
>    void EmitSigned(int Value) override;
>    void EmitUnsigned(unsigned Value) override;
> -  unsigned getFrameRegister() override;
> +  bool isFrameRegister(unsigned MachineReg) override;
>  };
>
>  void DIEDwarfExpression::EmitOp(uint8_t Op, const char* Comment) {
> @@ -67,8 +67,8 @@ void DIEDwarfExpression::EmitSigned(int
>  void DIEDwarfExpression::EmitUnsigned(unsigned Value) {
>    DU.addUInt(DIE, dwarf::DW_FORM_udata, Value);
>  }
> -unsigned DIEDwarfExpression::getFrameRegister() {
> -  return getTRI()->getFrameRegister(*AP.MF);
> +bool DIEDwarfExpression::isFrameRegister(unsigned MachineReg) {
> +  return MachineReg == getTRI()->getFrameRegister(*AP.MF);
>  }
>
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150113/b6d09752/attachment.html>


More information about the llvm-commits mailing list