aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/920501-4.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/compile/920501-4.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/compile/920501-4.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/920501-4.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/920501-4.c
new file mode 100644
index 000000000..48314cc78
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/compile/920501-4.c
@@ -0,0 +1,51 @@
+/* { dg-do assemble } */
+
+foo ()
+{
+ int r0[8186 ];
+ int r1[2 ];
+ int r2[2 ];
+ int bitm0[2 ];
+ int bitm1[2 ];
+ int bitm2[2 ];
+
+ int i,j,k,m,n,m_max;
+ int f;
+ double fm,ft;
+
+ while (1) {
+
+ if (m%4 == 2)
+ ++m;
+
+ if (m_max != 0 && m > m_max)
+ break;
+
+ fm=m;
+
+ r0[k=1]=0;
+ bitm0[0] = 0;
+
+ while ( n%f == 0 ) {
+ while ( (ft != 0) && (ft < fm )) {
+ bitm1[i] = 0;
+ r1[i]=0;
+ }
+
+ while ( r0[i] != 0 && r1[i] != 0 ) {
+ if ( r0[i] < r1[i] ) {
+ bitm2[k] = bitm0[i];
+ r2[k++]=0;
+ }
+ else if ( r0[i] > r1[j] ) {
+ bitm2[k] = bitm1[j];
+ r2[k++]=r1[j++];
+ }
+ else {
+ bitm1[k] = bitm0[i];
+ r2[k++]=r0[i++];
+ }
+ }
+ }
+ }
+}