r226390 - DebugInfo: Attribute complex expressions to the source location of the expression
David Blaikie
dblaikie at gmail.com
Sat Jan 17 17:57:54 PST 2015
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,
More information about the cfe-commits
mailing list