aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/execute/memcheck/blkarg.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/memcheck/blkarg.c')
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/memcheck/blkarg.c75
1 files changed, 0 insertions, 75 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/memcheck/blkarg.c b/gcc/testsuite/gcc.c-torture/execute/memcheck/blkarg.c
deleted file mode 100644
index 4f448d661d6..00000000000
--- a/gcc/testsuite/gcc.c-torture/execute/memcheck/blkarg.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Must define:
- int expect_error;
- void test ();
- void setup () NOCHECK; */
-
-#include "driver.h"
-
-/* Test permissions of BLKmode arguments constructed purely on the
- stack.
-
- Maybe we can't guarantee that we'll always wind up with stack args,
- but if we don't, they're in registers, and permissions should just
- always yield success. So while this test may not be effective on
- all platforms, failure probably does indicate a real bug.
-
- Note that because of the implementation, we do want to test BLKmode
- arguments that live purely on the stack and are constructed there.
- We want to test other situations of function arguments, of course,
- but don't assume this case would be covered by using one monster
- argument that is read from memory (including using constructor
- syntax but constant values), or may live partially in registers. */
-
-int expect_error = 0;
-
-/* Must be BLKmode. Using only two fields gets TImode on Alpha. */
-struct S
-{
- unsigned long long ll;
- long xx;
- long yy;
-};
-
-unsigned long long x = 0x12345689ULL;
-#define I2 42
-
-static int first_time = 1;
-
-/* Leading ten arguments force struct S onto the stack on both Alpha and MIPS. */
-int
-foo (int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8, int a9, int a10,
- struct S s)
-{
- if (a1 != 1 || a2 != 2 || a3 != 3 || a4 != 4 || a5 != 5 || a6 != 6 || a7 != 7
- || a8 != 8 || a9 !=9 || a10 != 10)
- abort ();
-
- if (first_time)
- {
- if (s.ll != x || s.xx != I2 || s.yy != 0)
- abort ();
-
- first_time = 0;
- }
- else
- {
- if (s.ll != 0 || s.xx != 0 || s.yy != 0)
- abort ();
- }
-
- return 0;
-}
-
-void
-test ()
-{
- foo (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, (struct S) { x, I2 });
- foo (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, (struct S) { 0 });
-}
-
-void
-setup () /* NOCHECK */
-{
- mark_region (&x, sizeof (x), ACCESS_RO);
- mark_region (&first_time, sizeof (first_time), ACCESS_RW);
-}