summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/930126-1.c
diff options
context:
space:
mode:
authorupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
committerupstream source tree <ports@midipix.org>2015-03-15 20:14:05 -0400
commit554fd8c5195424bdbcabf5de30fdc183aba391bd (patch)
tree976dc5ab7fddf506dadce60ae936f43f58787092 /gcc/testsuite/gcc.c-torture/compile/930126-1.c
downloadcbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.bz2
cbb-gcc-4.6.4-554fd8c5195424bdbcabf5de30fdc183aba391bd.tar.xz
obtained gcc-4.6.4.tar.bz2 from upstream website;upstream
verified gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream tarball. downloading a git-generated archive based on the 'upstream' tag should provide you with a source tree that is binary identical to the one extracted from the above tarball. if you have obtained the source via the command 'git clone', however, do note that line-endings of files in your working directory might differ from line-endings of the respective files in the upstream repository.
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/compile/930126-1.c')
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/930126-1.c74
1 files changed, 74 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/930126-1.c b/gcc/testsuite/gcc.c-torture/compile/930126-1.c
new file mode 100644
index 000000000..8313c5c45
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/930126-1.c
@@ -0,0 +1,74 @@
+typedef unsigned T;
+typedef char Tchar;
+T mt (long, char *);
+T ms (long, char *);
+T mv (long, T, char);
+T cons (T, T);
+T decl (T * (*) (T *), char *);
+
+T*L92(T*),*L15(T*),*L14(T*),*L13(T*),*L12(T*),*L11(T*),*L10(T*),*L9(T*),*L8(T*),*L7(T*),*L6(T*),*L5(T*),*L4(T*),*L3(T*),*L2(T*),*L1(T*);
+
+static T *
+Ldata (T * my_pc)
+{
+int cc = (((* ((T *) (my_pc))) >> 16) & 0xFF);
+T B92, B91, B90, B15, B14, B13, B12, B11, B10, B9, B8, B7, B6, B5, B4, B3, B2, B1, tO7, tO6, tO5, tO4, tO3, tO2, tO1, tO0;
+T object = mv (168, 0, ((Tchar) 1));
+T * cb = (T *) (((T) (object & 0x3FF)) | 0x400);
+tO0 = mv (92, 0, ((Tchar) 1));
+B92 = decl (L92, "");
+B15 = decl (L15, "");
+B14 = decl (L14, "");
+B13 = decl (L13, "");
+B12 = decl (L12, "");
+B11 = decl (L11, "");
+B10 = decl (L10, "");
+B9 = decl (L9, "");
+B8 = decl (L8, "");
+B7 = decl (L7, "");
+B6 = decl (L6, "");
+B5 = decl (L5, "");
+B4 = decl (L4, "");
+B3 = decl (L3, "");
+B2 = decl (L2, "");
+B1 = decl (L1, "");
+cb[19] = ((((cc) & 0xFF) << 16) | (9 & 0xFF));
+cb[21] = ((((cc) & 0xFF) << 16) | ((10) & 0xFF));
+cb[23] = ((((cc) & 0xFF) << 16) | (11 & 0xFF));
+cb[25] = ((((cc) & 0xFF) << 16) | (12 & 0xFF));
+cb[27] = ((((cc) & 0xFF) << 16) | (13 & 0xFF));
+cb[29] = ((((cc) & 0xFF) << 16) | (14 & 0xFF));
+cb[31] = ((((cc) & 0xFF) << 16) | (15 & 0xFF));
+cb[35] = ((((cc) & 0xFF) << 16) | (17 & 0xFF));
+cb[36] = ((0x1A) << 26) | (((0x39) << 26) | 1) & 0x3FF;
+cb[39] = ms (24, ((char *) ""));
+cb[41] = ((0x1A) << 26) | (((0x39) << 26) | 1) & 0x3FF;
+cb[44] = 3;
+cb[46] = 2;
+cb[48] = 3;
+cb[50] = 6;
+cb[52] = 4;
+cb[146] = tO0;
+((T *) (((tO0 & 0x3FF)) | 0x400))[92] = B1;
+((T *) (((tO0 & 0x3FF)) | 0x400))[91] = B2;
+((T *) (((tO0 & 0x3FF)) | 0x400))[2] = B90;
+((T *) (((tO0 & 0x3FF)) | 0x400))[2] = B91;
+((T *) (((tO0 & 0x3FF)) | 0x400))[1] = B92;
+cb[58] = 0x2800 | (T) ((T *) ((B6 & 0x3FF) | 0x400) + 3);
+cb[57] = 0x2800 | (T) ((T *) ((B7 & 0x3FF) | 0x400) + 3) & ~0xC00;
+cb[56] = 0x2800 | (T) ((T *) ((B8 & 0x3FF) | 0x400) + 3) & ~0xC00;
+cb[55] = 0x2800 | (T) ((T *) ((B9 & 0x3FF) | 0x400) + 3) & ~0xC00;
+tO7 = mv (8, 0, ((Tchar) 1));
+tO4 = ms (9, ((char *) ""));
+tO3 = mv (58, 0, ((Tchar) 1));
+tO6 = ms (4, ((char *) ""));
+tO2 = mv (4, 0, ((Tchar) 1));
+tO5 = ms (4, ((char *) ""));
+tO1 = mv (28, 0, ((Tchar) 1));
+cb[165] = tO1;
+cb[163] = cons (((ms (10, ((char *) "")))), (cons (tO5, 0)));
+cb[162] = cons (1, (cons (2, 0)));
+cb[150] = cons (1, (cons (2, (cons (3, (cons (4, (cons (5, (cons (6, 0)))))))))));
+cb[148] = tO7;
+return cb;
+}