aboutsummaryrefslogtreecommitdiff
path: root/SingleSource/Regression/C/gcc-c-torture/execute/pr81913.c
diff options
context:
space:
mode:
Diffstat (limited to 'SingleSource/Regression/C/gcc-c-torture/execute/pr81913.c')
-rw-r--r--SingleSource/Regression/C/gcc-c-torture/execute/pr81913.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/SingleSource/Regression/C/gcc-c-torture/execute/pr81913.c b/SingleSource/Regression/C/gcc-c-torture/execute/pr81913.c
new file mode 100644
index 00000000..f170b36e
--- /dev/null
+++ b/SingleSource/Regression/C/gcc-c-torture/execute/pr81913.c
@@ -0,0 +1,26 @@
+/* PR tree-optimization/81913 */
+
+typedef __UINT8_TYPE__ u8;
+typedef __UINT32_TYPE__ u32;
+
+static u32
+b (u8 d, u32 e, u32 g)
+{
+ do
+ {
+ e += g + 1;
+ d--;
+ }
+ while (d >= (u8) e);
+
+ return e;
+}
+
+int
+main (void)
+{
+ u32 x = b (1, -0x378704, ~0xba64fc);
+ if (x != 0xd93190d0)
+ __builtin_abort ();
+ return 0;
+}