> On 23 Jan 2016, at 21:31, Andrew Haley <a...@redhat.com> wrote:
> 
> BTW, does anyone here know why we don't have humongous ByteBuffers
> with a long index?
> 

Probably in part because of Java arrays. IMO we need Arrays 2.0 (+ panama i 
suspect).

Here’s some "shoot from the hip" thinking…

In principle a direct ByteBuffer could bound a region larger than that which 
can be expressed with an int limit (i suppose a heap ByteBuffer could do the 
same if it holds multiple instances if byte[], although that would require more 
work).

The direct BB can be used to access the first 2^31 - 1 values. A VarHandle 
could be produced that accesses the whole range since it could accept long 
index values and check bounds against a special long limit field. That might 
require some additional HotSpot work to optimize bounds checks and any loops to 
reduce or avoid a safe point check per iteration.

Paul.

Reply via email to