Changes in directory llvm/lib/Target/CBackend:

Writer.cpp updated: 1.254 -> 1.255
---
Log message:

Add #line support for CBE.


---
Diffs of the changes:  (+17 -0)

 Writer.cpp |   17 +++++++++++++++++
 1 files changed, 17 insertions(+)


Index: llvm/lib/Target/CBackend/Writer.cpp
diff -u llvm/lib/Target/CBackend/Writer.cpp:1.254 
llvm/lib/Target/CBackend/Writer.cpp:1.255
--- llvm/lib/Target/CBackend/Writer.cpp:1.254   Tue Mar  7 16:58:23 2006
+++ llvm/lib/Target/CBackend/Writer.cpp Wed Mar  8 13:31:15 2006
@@ -1598,6 +1598,7 @@
           case Intrinsic::setjmp:
           case Intrinsic::longjmp:
           case Intrinsic::prefetch:
+          case Intrinsic::dbg_stoppoint:
             // We directly implement these intrinsics
             break;
           default:
@@ -1687,6 +1688,22 @@
         writeOperand(I.getOperand(3));
         Out << ")";
         return;
+      case Intrinsic::dbg_stoppoint: {
+        // If we use writeOperand directly we get a "u" suffix which is 
rejected
+        // by gcc.
+        ConstantUInt *SI = cast<ConstantUInt>(I.getOperand(2));
+        GlobalVariable *GV = cast<GlobalVariable>(I.getOperand(4));
+        ConstantStruct *CS = cast<ConstantStruct>(GV->getInitializer());
+        std::string FileName = CS->getOperand(4)->getStringValue();
+        std::string Directory = CS->getOperand(5)->getStringValue();
+
+        Out << "\n#line "
+            << SI->getValue()
+            << " \"" << Directory << FileName << "\"\n";
+        // Need to set result.
+        Out << "0";
+        return;
+      }
       }
     }
 



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to