diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2014-03-14 16:34:57 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2014-03-14 16:34:57 +0000 |
commit | 9592100294e59ea7c6228d3d575d76d67a88f02b (patch) | |
tree | 0335ed99c11dc128dae54a05698e1f263c068e34 /gcc/testsuite | |
parent | 54ce77893d804574d1386311a2ca44c61d5112e5 (diff) | |
download | gcc-9592100294e59ea7c6228d3d575d76d67a88f02b.zip gcc-9592100294e59ea7c6228d3d575d76d67a88f02b.tar.gz gcc-9592100294e59ea7c6228d3d575d76d67a88f02b.tar.bz2 |
re PR rtl-optimization/60508 (internal compiler error: in lra_set_insn_recog_data, at lra.c:1082)
2014-03-14 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60508
* lra-constraints.c (get_reload_reg): Add new parameter
in_subreg_p.
(process_addr_reg, simplify_operand_subreg, curr_insn_transform):
Pass the new parameter values.
2014-03-14 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60508
* gcc.target/i386/pr60508.c: New.
From-SVN: r208570
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr60508.c | 31 |
2 files changed, 36 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 97e6bba..fa781bd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2014-03-14 Vladimir Makarov <vmakarov@redhat.com> + + PR rtl-optimization/60508 + * gcc.target/i386/pr60508.c: New. + 2014-03-14 Richard Biener <rguenther@suse.de> PR middle-end/60518 diff --git a/gcc/testsuite/gcc.target/i386/pr60508.c b/gcc/testsuite/gcc.target/i386/pr60508.c new file mode 100644 index 0000000..78dfb78 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr60508.c @@ -0,0 +1,31 @@ +/* { dg-do compile } */ +/* { dg-options "-O -w" } */ +int a = 1, g, h = 1, d, e, *f; +char b; +static int c[] = { 0, 0 }; +void fn2 (void); + +void +fn1 (short x, int l) +{ +lab: + { + int k, m[0]; + long j = h ? 0 : 0 / 0; + unsigned char n = j; + unsigned char i = x >= 0 ? n : n >> x; + g = i; + for (;;) + { + if (a) + goto lab; + while (d) + { + e = b = c[l]; + fn2 (); + } + int o = m[0]; + f = &k; + } + } +} |