aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/990106-2.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/execute/990106-2.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/execute/990106-2.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/990106-2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/990106-2.c
new file mode 100644
index 000000000..c2791efaa
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/990106-2.c
@@ -0,0 +1,22 @@
+unsigned calc_mp(unsigned mod)
+{
+ unsigned a,b,c;
+ c=-1;
+ a=c/mod;
+ b=0-a*mod;
+ if (b > mod) { a += 1; b-=mod; }
+ return b;
+}
+
+int main(int argc, char *argv[])
+{
+ unsigned x = 1234;
+ unsigned y = calc_mp(x);
+
+ if ((sizeof (y) == 4 && y != 680)
+ || (sizeof (y) == 2 && y != 134))
+ abort ();
+ exit (0);
+}
+
+