summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/990617-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/compile/990617-1.c')
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/990617-1.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/990617-1.c b/gcc/testsuite/gcc.c-torture/compile/990617-1.c
new file mode 100644
index 000000000..e9d3cf336
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/990617-1.c
@@ -0,0 +1,21 @@
+/* 0x70000000 is too large a constant to become a pointer on
+ xstormy16. */
+/* { dg-do assemble } */
+/* { dg-xfail-if "" { xstormy16-*-* } { "*" } { "" } } */
+
+int main()
+{
+ do {
+ long l;
+ long *p = &l;
+
+ *p = 0x0000000070000000L;
+ p += 2;
+ {
+ unsigned int *addr = (unsigned int *)0x70000000;
+ printf("%d, %d\n", addr[1], addr[0]);
+ }
+
+ } while (1);
+}
+