aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8.1/gcc/testsuite/gcc.target/spu/muldivti3.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8.1/gcc/testsuite/gcc.target/spu/muldivti3.c')
-rw-r--r--gcc-4.8.1/gcc/testsuite/gcc.target/spu/muldivti3.c46
1 files changed, 0 insertions, 46 deletions
diff --git a/gcc-4.8.1/gcc/testsuite/gcc.target/spu/muldivti3.c b/gcc-4.8.1/gcc/testsuite/gcc.target/spu/muldivti3.c
deleted file mode 100644
index 0363e3420..000000000
--- a/gcc-4.8.1/gcc/testsuite/gcc.target/spu/muldivti3.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* { dg-do run } */
-/* { dg-options "-std=c99" } */
-#include <stdlib.h>
-typedef unsigned int uqword __attribute__((mode(TI)));
-typedef int qword __attribute__((mode(TI)));
-
-typedef union
-{
- uqword uq;
- qword q;
- unsigned long long ull[2];
-} u;
-
-int main(void)
-{
- uqword e, f;
- qword g, h;
-
- e = 0x1111111111111111ULL;
- f = 0xFULL;
- g = 0x0000000000111100ULL;
- h = 0x0000000000000000ULL;
-
- u m, n, o, p, q;
-
- m.ull[0] = f;
- m.ull[1] = e;
- n.ull[0] = h;
- n.ull[1] = g;
-
- /* __multi3 */
- o.q = m.q * n.q;
-
- o.q = o.q + n.q + 0x1110FF;
- /* __udivti3, __umodti3 */
- p.uq = o.uq / n.uq;
- q.uq = o.uq % n.uq;
- if (p.uq != (m.uq+1)) abort();
- if (q.uq != 0x1110FF) abort();
- /* __divti3, __modti3 */
- p.q = -o.q / n.q;
- q.q = -o.q % n.q;
- if ((-p.q * n.q - q.q) != o.q) abort();
-
- return 0;
-}