diff options
author | Jakub Jelinek <jakub@redhat.com> | 2015-04-17 09:44:30 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2015-04-17 09:44:30 +0200 |
commit | d7cb230a931ffc5e4356bbffdb05998162df900c (patch) | |
tree | 690826deecdec1e9c6fc9f4f8f535bd56f0c5d5a /gcc | |
parent | 86f46e3972ce44064990c1fcd97fa97a9492ee44 (diff) | |
download | gcc-d7cb230a931ffc5e4356bbffdb05998162df900c.zip gcc-d7cb230a931ffc5e4356bbffdb05998162df900c.tar.gz gcc-d7cb230a931ffc5e4356bbffdb05998162df900c.tar.bz2 |
re PR debug/65771 (ICE (in loc_list_from_tree, at dwarf2out.c:14964) on arm-linux-gnueabihf)
PR debug/65771
* dwarf2out.c (loc_list_from_tree): Return NULL
for DEBUG_EXPR_DECL.
* gcc.dg/debug/pr65771.c: New test.
From-SVN: r222166
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/debug/pr65771.c | 15 |
4 files changed, 27 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eba141d..d572d49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-04-17 Jakub Jelinek <jakub@redhat.com> + + PR debug/65771 + * dwarf2out.c (loc_list_from_tree): Return NULL + for DEBUG_EXPR_DECL. + 2015-04-17 Christian Bruel <christian.bruel@st.com> * ipa-inline.c (can_inline_edge_p): Allow inlining of functions with diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 6c8e51f..b34a3ed 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -14642,6 +14642,7 @@ loc_list_from_tree (tree loc, int want_address, case TARGET_MEM_REF: case SSA_NAME: + case DEBUG_EXPR_DECL: return NULL; case COMPOUND_EXPR: diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index adb1192..2bf8576 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-04-17 Jakub Jelinek <jakub@redhat.com> + + PR debug/65771 + * gcc.dg/debug/pr65771.c: New test. + 2015-04-16 H.J. Lu <hongjiu.lu@intel.com> * gcc.target/i386/mpx/alloca-1-lbv.c (mpx_test): Replace diff --git a/gcc/testsuite/gcc.dg/debug/pr65771.c b/gcc/testsuite/gcc.dg/debug/pr65771.c new file mode 100644 index 0000000..2629901 --- /dev/null +++ b/gcc/testsuite/gcc.dg/debug/pr65771.c @@ -0,0 +1,15 @@ +/* PR debug/65771 */ +/* { dg-do link } */ +/* { dg-require-effective-target tls } */ + +struct S { int s; int t; }; +__thread struct S a[10]; +int b; + +int +main () +{ + int c = a[b].t; + (void) c; + return 0; +} |