On 4/18/07, Maksim Ananjev <[EMAIL PROTECTED]> wrote:
Mikhail, thanks! Your guidelines helped. Now I see that ABCD fully eliminates the check in my example if placed between uce and lower: -XX:jit.CS_OPT.path.optimizer=ssa ,devirt,inline,uce,purge,simplify,dce,uce,lazyexc, memopt,simplify,dce,uce,classic_abcd,lower,dessa,statprof,markglobals I tried to place classic_abcd earlier in the optimization path, but got segmentation fault or upper bound was not eliminated. That looks a bit strange for me, because I thought that ABCD relies only on ssa. But if classic_abcd is placed just after ssa, check won't be eliminated
Be careful with dead and unreachable code. Not all algorithms know how to work with it. So the most simple advice is to append 'simplify,dce,uce' sequence after any optimiation that modifies IR. -- Mikhail Fursov
