aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2005-11-07 18:52:24 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2005-11-07 18:52:24 +0000
commita7297856af43a0c5f563ff5a71a4503f9e01f625 (patch)
treeefcd355fd7b8282c5663bd962ea914ec9b2433bd /gcc/testsuite/gcc.dg
parent6afdc7412b108d0e859476472e1a7ea7454819b3 (diff)
downloadgcc-a7297856af43a0c5f563ff5a71a4503f9e01f625.zip
gcc-a7297856af43a0c5f563ff5a71a4503f9e01f625.tar.gz
gcc-a7297856af43a0c5f563ff5a71a4503f9e01f625.tar.bz2
re PR rtl-optimization/24683 (ICE in in extract_insn, at recog.c:2084)
./: PR rtl-optimization/24683 * config/i386/i386.c (legitimize_pic_address): If constant operand to PLUS is too large, put it in a register. testsuite/: PR rtl-optimization/24683 * gcc.dg/pr24683.c: New test. From-SVN: r106601
Diffstat (limited to 'gcc/testsuite/gcc.dg')
-rw-r--r--gcc/testsuite/gcc.dg/pr24683.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr24683.c b/gcc/testsuite/gcc.dg/pr24683.c
new file mode 100644
index 0000000..79d3210
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr24683.c
@@ -0,0 +1,11 @@
+/* { dg-do compile { target fpic } } */
+/* { dg-options "-O2 -fPIC" } */
+int *block;
+void final(unsigned int j)
+{
+ unsigned int i;
+ unsigned char *data = (unsigned char *)"\0";
+ for (i = 0; i < 8; i++)
+ for (; j + 63 < 1; j += 64)
+ block = (int *) &data[j];
+}