RFR(M): 8027754: Enable loop optimizations for loops with MathExact inside

Rickard Bäckman rickard.backman at oracle.com
Fri Jan 24 03:48:01 PST 2014


Florian,

thanks for the suggestion and catching that mistake.
New webrev is on its ways.

/R

On 01/24, Florian Weimer wrote:
> On 01/23/2014 12:27 PM, Rickard Bäckman wrote:
> 
> >In the end we generate assembly like:
> >
> >mov rdx, rdi
> >add rdx, rsi
> >...
> >mov rax, rdi
> >add rax, rsi
> >jo <overflow label>
> >
> >With one add instruction for the data and one for flags. Future
> >improvements could be to try to match the Overflow and the math
> >operation and remove one of them.
> 
> You could use cmp instead of sub on x86 for the overflow case, which
> should be beneficial because the cmp instruction preserves both
> inputs and only updates the flags.  Unfortunately, there is no
> similar companion instruction in the other cases, so I'm not sure if
> that's worth the effort.
> 
> The mulofI_rReg_imm pattern definitions in x86_32.ad and x86_64.ad
> do not include the immediate operand in the format string.
> 
> -- 
> Florian Weimer / Red Hat Product Security Team
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
Url : http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20140124/4574107f/attachment.bin 


More information about the hotspot-compiler-dev mailing list