Debug Info: Turn DIExpression::getFrameRegister() into an isFrameRegister()
authorAdrian Prantl <aprantl@apple.com>
Tue, 13 Jan 2015 23:10:43 +0000 (23:10 +0000)
committerAdrian Prantl <aprantl@apple.com>
Tue, 13 Jan 2015 23:10:43 +0000 (23:10 +0000)
function.

NFC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225846 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
lib/CodeGen/AsmPrinter/DwarfExpression.cpp
lib/CodeGen/AsmPrinter/DwarfExpression.h
lib/CodeGen/AsmPrinter/DwarfUnit.cpp

index 5d6a03080c4f92683052c90bcd544ebb731fb85e..b13f394b4c0786f541ea7a0ccee1c6a84fb80142 100644 (file)
@@ -46,8 +46,9 @@ void DebugLocDwarfExpression::EmitUnsigned(unsigned Value) {
   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.
+  return false;
 }
 
 //===----------------------------------------------------------------------===//
index 1df0ea4f79f2fe9bedc1070ed90cf41c6216f007..a3cd000b8719c35086e14258463e8e6bf4d1d20a 100644 (file)
@@ -79,7 +79,7 @@ bool DwarfExpression::AddMachineRegIndirect(unsigned MachineReg, int Offset) {
   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);
index 9e93a573a3d11f631196b351163792912770116f..9aba3f82ffb8a6be986f06902a7b240b7350641b 100644 (file)
@@ -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;
 };
 
 }
index 99a9205b8b23e41b4267ac6429031b4b7dc2555c..7b32831c77f5db2ed7ece1196f2e0362c7d968ca 100644 (file)
@@ -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 Value) {
 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);
 }