check_ext_dependent_givs can not give an exactly
answer whether the BIVs will be wrap around or not. As
check_ext_dependent_givs can only deal with BIVs in
constant-iteration loops or BIVs are the same as the
loop iteration variable, and only small parts of BIVs
satisfy this condition, that in most cases
I modified the code in check_ext_dependent_givs to let
the BIVs always successfully pass the check, then test
the example you have given to me, but the result is
the same as before.
It depends on whether the old loop optimizer will actually decide that
it is worthwhile to use the induction
. The reason is that
check_ext_dependent_givs can not giv an exactly answer
whether the BIVs will be wrap around or not. In most
cases, it only produce a conservative result that the
BIVs may overflow and the corresponding GIVs can not
be reduced.
I modified the code in
Canqun Yang wrote:
Hi, all,
Is there anyone familiar with the check routine
check_ext_dependent_givs defined loop.c, and give me
an example explaining why it is needed.
You should not look at loop.c to modify it, because it will hopefully
disappear before 4.1.
But basically, that function
Hi, all,
Is there anyone familiar with the check routine
check_ext_dependent_givs defined loop.c, and give me
an example explaining why it is needed.
Canqun Yang
Creative Compiler Research Group.
National University of Defense Technology, China.