This pattern shows something strange in the results of Omega.
Looking at the step of array accesses it seems like Omega has
just no mechanism to handle -1 evolutions i.e. 0ffffffff in
unsigned with modulo arithmetics. This occurs in
gcc/gcc/real.c during bootstrap on amd64-linux.
Dist vectors from the first dependence analyzer:
1 1
Omega dist vectors are not the same:
-1 0
Data dependence relation is:
(Data Dep:
access_fn_A: {1, +, 4294967295}_5
access_fn_B: {2, +, 4294967295}_5
(subscript
iterations_that_access_an_element_twice_in_A: {0, +, 1}_1
last_conflict: 1
iterations_that_access_an_element_twice_in_B: {1, +, 1}_1
last_conflict: 1
(Subscript distance: 1
)
)
distance_vect: -1 0
direction_vect: - =
)
--
Summary: [data deps] Overflow problem in Omega
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: sebastian dot pop at cri dot ensmp dot fr
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23413