RFR 8080325 SuperWord loop unrolling analysis

Berg, Michael C michael.c.berg at intel.com
Tue Jun 16 06:37:13 UTC 2015


Roland, thanks for the review.
You will find the latest changes in the following webrev:

http://cr.openjdk.java.net/~mcberg/8080325/webrev.02/

All comments below are addressed within the changes.

Regards,
Michael

-----Original Message-----
From: Roland Westrelin [mailto:roland.westrelin at oracle.com] 
Sent: Tuesday, June 09, 2015 6:02 AM
To: Berg, Michael C
Cc: HotSpot Compiler
Subject: Re: RFR 8080325 SuperWord loop unrolling analysis

> http://cr.openjdk.java.net/~mcberg/8080325/webrev.01/

Since you’re touching that code, can you also fix the coding style in:

In loopTransform.cpp

644 bool IdealLoopTree::policy_unroll( PhaseIdealLoop *phase ) {

In loopnode.hpp

462   bool policy_unroll( PhaseIdealLoop *phase );

(no spaces after/before the parenthesis)

In loopnode.hpp:

164   int slp_maximum_unroll_factor;

should be: _slp_maximum_unroll_factor

248   int  slp_max_unroll()                      { return slp_maximum_unroll_factor; }

could be: int  slp_max_unroll() const {

 464   // Return TRUE or FALSE if the loop analyzes to map to a maximal
 465   // superword unrolling for vectorization.
 466   void policy_unroll_slp_analysis(CountedLoopNode *cl, PhaseIdealLoop *phase, int future_unroll_ct);

The comment says the function returns something but it doesn’t return anything.

I don’t see slp_maximum_unroll_factor being initialized to a default value. Isn’t there a risk it’s not set when we read it?

Otherwise, I think it’s good.

Roland.


More information about the hotspot-compiler-dev mailing list