Unsafe.{get,put}-X-Unaligned; Efficient array comparison intrinsics
Paul Sandoz
paul.sandoz at oracle.com
Wed Mar 4 15:51:03 UTC 2015
On Mar 4, 2015, at 4:35 PM, Andrew Haley <aph at redhat.com> wrote:
> On 03/04/2015 03:07 PM, Paul Sandoz wrote:
>
>> If so then presumably that would be applicable to both get* and
>> set*?
>
> I think so.
>
>> Could those boolean accepting methods be intrinsified or would they
>> always be Java only?
>
> Sure, but I've been wondering if it's necessary.
In that case maybe they don't carry their weight. Some (i am presuming static ) helper methods as you suggest in your previous email seem reasonable in that context.
> Suppose we had some
> hypothetical machine which is natively little-endian and has big- and
> little-endian unaligned stores. We could match a big-endian store
> with something like
>
> instruct bigEndianStoreL(iRegL src, memory mem)
> %{
> match(Set mem (StoreL mem (ReverseBytesI src)));
> format %{ "str.be $src, $mem\t" %}
>
> so maybe there aren't any architectures where we'd gain any advantage
> from intrinsifying such loads and stores?
>
Yeah, it seems hypothetical to me, but i lack knowledge in this area.
Paul.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20150304/667faeee/signature.asc>
More information about the hotspot-compiler-dev
mailing list