Request for reviews (M): 7004555: Add new policy for one iteration loops
Tom Rodriguez
tom.rodriguez at oracle.com
Fri Apr 8 10:15:48 PDT 2011
loopTransform.cpp:
bounderies -> boundaries
There's a use UseNewCode left behind
loopnode.hpp:
The relationship between the loop_flags enum in LoopNode and the one in CountedLoopNode is kind of obscure. Could you declare them together so it's more obvious?
Otherwise it looks good.
tom
On Apr 6, 2011, at 12:24 PM, Vladimir Kozlov wrote:
> http://cr.openjdk.java.net/~kvn/7004555/webrev
>
> Fixed 7004555: Add new policy for one iteration loops
>
> Add new policy for one iteration loops (mostly formal pre- loops) to fold exit condition and avoid going through do_maximally_unroll() as we do currently for such cases.
> Move exact trip count calculation from policy_maximally_unroll() into separate method. Note, trip_count type is changed to unsigned int and its range is changed to [0, max_juint). Add new flag HasExactTripCount to indicate that loop's limits and trip count are constants.
> Check for non overlaping init and limit values to avoid zero trip guard generation in remove_empty_loop.
> Rename some CountedLoopNode flags.
> Print loop iv range for counted loops dumps:
>
> Loop: N286/N193 predicated counted [0,2),+1
More information about the hotspot-compiler-dev
mailing list