aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2022-02-04 17:41:55 +0100
committerEric Botcazou <ebotcazou@adacore.com>2022-02-04 17:44:44 +0100
commit1f722e35ab3805de6eeace770508a9085944e93e (patch)
tree18ee05f3de2054bd7d5e1965f6f8b7cfd4df0fd8 /gcc/testsuite/gnat.dg
parentf62156eab7b757d1ee03a11d5c96c72bd3de079c (diff)
downloadgcc-1f722e35ab3805de6eeace770508a9085944e93e.zip
gcc-1f722e35ab3805de6eeace770508a9085944e93e.tar.gz
gcc-1f722e35ab3805de6eeace770508a9085944e93e.tar.bz2
Add optmization testcase for incorrect optimization in Ada
gcc/testsuite/ PR tree-optimization/104356 * gnat.dg/opt97.adb: New test.
Diffstat (limited to 'gcc/testsuite/gnat.dg')
-rw-r--r--gcc/testsuite/gnat.dg/opt97.adb25
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/opt97.adb b/gcc/testsuite/gnat.dg/opt97.adb
new file mode 100644
index 0000000..1bf6a75
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/opt97.adb
@@ -0,0 +1,25 @@
+-- { dg-do compile }
+-- { dg-options "-O2 -fdump-tree-optimized" }
+
+with System.Unsigned_Types; use System.Unsigned_Types;
+
+function Opt97 (X, Y : Unsigned) return Unsigned is
+
+ pragma Suppress (All_Checks);
+
+ Z : Unsigned;
+
+begin
+ if X >= 2 then
+ return 0;
+ end if;
+
+ Z := Y;
+ if X = 1 then
+ Z := Y + 4;
+ end if;
+
+ return Z / X;
+end;
+
+-- { dg-final { scan-tree-dump "/" "optimized" } }