Request for reviews (XS): 6875866 for HS16

Vladimir Kozlov Vladimir.Kozlov at Sun.COM
Thu Aug 27 09:29:05 PDT 2009


Thanks, Christian

I will fix typo. There is addptr(r1,r2) instruction which does
what you want but I think using addq() should be enough since
it is 64-bit VM. rdx is String.count which is int (32-bit) value
so it is fine to use either, addq or addl.

Thanks,
Vladimir

Christian Thalinger wrote:
> Vladimir Kozlov wrote:
>> http://cr.openjdk.java.net/~kvn/6875866_hs16/webrev.00
>>
>> Fixed 6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2
>>
>> Problem:
>> String.indexOf SSE4.2 code starts string rescanning from
>> a wrong place after failing to match a part of substring.
>>
>> Solution:
>> Start from the next element after the previous match.
> 
> There is a small typo:
> 
> +     // We came here after the beginninig of the substring was
> 
> src/cpu/x86/vm/x86_64.ad:
> 
> +     masm.addl(rdx, rsi);
> 
> I had a quick look at the code and sometimes rdx is changed with
> addl/subl and sometimes with addq/subq.  Shouldn't we use xxxl
> instructions everywhere?
> 
> -- Christian


More information about the hotspot-compiler-dev mailing list