[Bug ada/13849] New: backend ICE (verify_flow_info) on ACATS test cxa5011 when using -O3 -funroll-all-loops
laurent at guerby dot net
gcc-bugzilla@gcc.gnu.org
Sat Jan 24 22:15:00 GMT 2004
The problem does not occur
$ gcc -c -O3 -funroll-all-loops cxa5011.adb
cxa5011.adb: In function `CXA5011':
cxa5011.adb:3: error: verify_flow_info: REG_BR_PROB does not match cfg 29 0
cxa5011.adb:3: error: verify_flow_info: REG_BR_PROB does not match cfg 29 0
cxa5011.adb:3: error: verify_flow_info: REG_BR_PROB does not match cfg 29 0
cxa5011.adb:3: error: verify_flow_info: REG_BR_PROB does not match cfg 29 0
+===========================GNAT BUG DETECTED==============================+
| 3.5.0 20040123 (experimental) (i686-pc-linux-gnu) verify_flow_info failed|
| Error detected at cxa5011.adb:25:5 |
| Please submit a bug report; see http://gcc.gnu.org/bugs.html. |
| Include the entire contents of this bug box in the report. |
| Include the exact gcc or gnatmake command that you entered. |
| Also include sources listed below in gnatchop format |
| (concatenated together with no headers between files). |
+==========================================================================+
Please include these source files with error report
Note that list may not be accurate in some cases,
so please double check that the problem can still
be reproduced with the set of files listed.
cxa5011.adb
compilation abandoned
$ gcc -v
Reading specs from
/home/guerby/work/gcc/install/install-20040123T214648/lib/gcc/i686-pc-linux-gnu/3.5.0/specs
Configured with: /home/guerby/work/gcc/gcc/configure
--prefix=/home/guerby/work/gcc/install/install-20040123T214648
--enable-languages=ada,c --enable-threads --disable-nls
Thread model: posix
gcc version 3.5.0 20040123 (experimental)
The source is reduced from the ACATS test:
$ cat cxa5011.adb
with Ada.Numerics.Discrete_Random;
procedure CXA5011 is
type Discrete_Range is mod 2**(Integer'Size-1);
package Discrete_Package is new Ada.Numerics.Discrete_Random(Discrete_Range);
TC_Max_Loop_Count : constant Natural := 1000;
procedure Toto (X : String) is
begin
null;
end Toto;
Gen_1, Gen_2 : Discrete_Package.Generator;
Check_Failed : Boolean := False;
begin
for i in 1..TC_Max_Loop_Count loop
if Discrete_Package.Random(Gen_1) /=
Discrete_Package.Random(Gen_2)
then
Check_Failed := True;
exit;
end if;
end loop;
Toto (Integer'Image (0));
end CXA5011;
--
Summary: backend ICE (verify_flow_info) on ACATS test cxa5011
when using -O3 -funroll-all-loops
Product: gcc
Version: 3.5.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P2
Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: laurent at guerby dot net
CC: gcc-bugs at gcc dot gnu dot org,laurent at guerby dot
net
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13849
More information about the Gcc-bugs
mailing list