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.

llvm-svn: 225846

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

index 5d6a030..b13f394 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 1df0ea4..a3cd000 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 9e93a57..9aba3f8 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 99a9205..7b32831 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);
 }