aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.dg/vla-1.c5
-rw-r--r--gcc/tree-inline.c4
4 files changed, 16 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b97ebca..3f70e46 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2018-07-13 Tom de Vries <tdevries@suse.de>
+
+ * tree-inline.c (remap_ssa_name): Save and reuse debug exprs generated
+ in remap_ssa_name.
+
2018-07-13 Jackson Woodruff <jackson.woodruff@arm.com>
* config/aarch64/aarch64.c (aarch64_operands_adjust_ok_for_ldpstp): Use
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index fd47f3d..49ca6c5 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,9 @@
2018-07-13 Tom de Vries <tdevries@suse.de>
+ * gcc.dg/vla-1.c: Update.
+
+2018-07-13 Tom de Vries <tdevries@suse.de>
+
* gcc.src/maintainers.exp: New file.
2018-07-13 Kugan Vivekanandarajah <kuganv@linaro.org>
diff --git a/gcc/testsuite/gcc.dg/vla-1.c b/gcc/testsuite/gcc.dg/vla-1.c
index 56437ae..902166c 100644
--- a/gcc/testsuite/gcc.dg/vla-1.c
+++ b/gcc/testsuite/gcc.dg/vla-1.c
@@ -20,6 +20,7 @@ main ()
return 0;
}
-/* One debug source bind is generated for the parameter, and two to describe the
+/* One debug source bind is generated for the parameter, and one to describe the
sizes of a and b. */
-/* { dg-final { scan-tree-dump-times " s=> i" 3 "optimized" } } */
+/* { dg-final { scan-tree-dump-times " s=> i" 2 "optimized" } } */
+
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 45aba81..6a16ce5 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -214,12 +214,16 @@ remap_ssa_name (tree name, copy_body_data *id)
processing_debug_stmt = -1;
return name;
}
+ n = id->decl_map->get (val);
+ if (n && TREE_CODE (*n) == DEBUG_EXPR_DECL)
+ return *n;
def_temp = gimple_build_debug_source_bind (vexpr, val, NULL);
DECL_ARTIFICIAL (vexpr) = 1;
TREE_TYPE (vexpr) = TREE_TYPE (name);
SET_DECL_MODE (vexpr, DECL_MODE (SSA_NAME_VAR (name)));
gsi = gsi_after_labels (single_succ (ENTRY_BLOCK_PTR_FOR_FN (cfun)));
gsi_insert_before (&gsi, def_temp, GSI_SAME_STMT);
+ insert_decl_map (id, val, vexpr);
return vexpr;
}