Author: dblaikie
Date: Sat Jan 17 19:57:54 2015
New Revision: 226390

URL: http://llvm.org/viewvc/llvm-project?rev=226390&view=rev
Log:
DebugInfo: Attribute complex expressions to the source location of the 
expression

Just as r225956 did for scalar expressions (CGExprScalar::Visit), do the
same for complex expressions.

Modified:
    cfe/trunk/lib/CodeGen/CGExprComplex.cpp
    cfe/trunk/test/CodeGenCXX/debug-info-line.cpp

Modified: cfe/trunk/lib/CodeGen/CGExprComplex.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGExprComplex.cpp?rev=226390&r1=226389&r2=226390&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGExprComplex.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGExprComplex.cpp Sat Jan 17 19:57:54 2015
@@ -95,6 +95,7 @@ public:
   
//===--------------------------------------------------------------------===//
 
   ComplexPairTy Visit(Expr *E) {
+    ApplyDebugLocation DL(CGF, E->getLocStart());
     return StmtVisitor<ComplexExprEmitter, ComplexPairTy>::Visit(E);
   }
 

Modified: cfe/trunk/test/CodeGenCXX/debug-info-line.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/debug-info-line.cpp?rev=226390&r1=226389&r2=226390&view=diff
==============================================================================
--- cfe/trunk/test/CodeGenCXX/debug-info-line.cpp (original)
+++ cfe/trunk/test/CodeGenCXX/debug-info-line.cpp Sat Jan 17 19:57:54 2015
@@ -182,6 +182,7 @@ struct f14_use {
 f14_use::f14_use() = default;
 
 // CHECK-LABEL: define
+// CHECK-LABEL: define
 void func(foo);
 void f15(foo *f) {
   func(
@@ -190,6 +191,14 @@ void f15(foo *f) {
       f[3]);
 }
 
+// CHECK-LABEL: define
+void f16(__complex float f) {
+  __complex float g = //
+// CHECK: add {{.*}}, !dbg [[DBG_F16:![0-9]*]]
+#line 1800
+      f + 1;
+}
+
 // CHECK: [[DBG_F1]] = !MDLocation(line: 100,
 // CHECK: [[DBG_FOO_VALUE]] = !MDLocation(line: 200,
 // CHECK: [[DBG_FOO_REF]] = !MDLocation(line: 202,
@@ -211,3 +220,4 @@ void f15(foo *f) {
 // CHECK: [[DBG_F13]] = !MDLocation(line: 1500,
 // CHECK: [[DBG_F14_CTOR_CALL]] = !MDLocation(line: 1600,
 // CHECK: [[DBG_F15]] = !MDLocation(line: 1700,
+// CHECK: [[DBG_F16]] = !MDLocation(line: 1800,


_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to