提交 f9cc7d1d 编写于 作者: A asaha

Merge

...@@ -468,6 +468,7 @@ bd2ad7acb217391747dae8263c090483af454313 jdk8u65-b07 ...@@ -468,6 +468,7 @@ bd2ad7acb217391747dae8263c090483af454313 jdk8u65-b07
d215cd281678e4b89a4155755cd6e03e37b7e9b1 jdk8u65-b08 d215cd281678e4b89a4155755cd6e03e37b7e9b1 jdk8u65-b08
e9de15763a5a3cef64ef1d4bc40a018d4d572325 jdk8u65-b09 e9de15763a5a3cef64ef1d4bc40a018d4d572325 jdk8u65-b09
ed9e7ba6a419a80cbcdc60f4634388af054bdc76 jdk8u65-b10 ed9e7ba6a419a80cbcdc60f4634388af054bdc76 jdk8u65-b10
22ae2d11ff54b758b648b5fcd6ea90e03a4c6781 jdk8u65-b11
e9f82302d5fdef8a0976640e09363895e9dcde3c jdk8u66-b00 e9f82302d5fdef8a0976640e09363895e9dcde3c jdk8u66-b00
64d7bd4e98150447916f210e3bfd6875a4c2728a jdk8u66-b01 64d7bd4e98150447916f210e3bfd6875a4c2728a jdk8u66-b01
d8210091911b14930192abd3138ee37c281fb632 jdk8u66-b02 d8210091911b14930192abd3138ee37c281fb632 jdk8u66-b02
......
...@@ -242,7 +242,7 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -242,7 +242,7 @@ class Direct$Type$Buffer$RW$$BO$
} }
private long ix(int i) { private long ix(int i) {
return address + (i << $LG_BYTES_PER_VALUE$); return address + ((long)i << $LG_BYTES_PER_VALUE$);
} }
public $type$ get() { public $type$ get() {
...@@ -261,7 +261,7 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -261,7 +261,7 @@ class Direct$Type$Buffer$RW$$BO$
public $Type$Buffer get($type$[] dst, int offset, int length) { public $Type$Buffer get($type$[] dst, int offset, int length) {
#if[rw] #if[rw]
if ((length << $LG_BYTES_PER_VALUE$) > Bits.JNI_COPY_TO_ARRAY_THRESHOLD) { if (((long)length << $LG_BYTES_PER_VALUE$) > Bits.JNI_COPY_TO_ARRAY_THRESHOLD) {
checkBounds(offset, length, dst.length); checkBounds(offset, length, dst.length);
int pos = position(); int pos = position();
int lim = limit(); int lim = limit();
...@@ -273,13 +273,13 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -273,13 +273,13 @@ class Direct$Type$Buffer$RW$$BO$
#if[!byte] #if[!byte]
if (order() != ByteOrder.nativeOrder()) if (order() != ByteOrder.nativeOrder())
Bits.copyTo$Memtype$Array(ix(pos), dst, Bits.copyTo$Memtype$Array(ix(pos), dst,
offset << $LG_BYTES_PER_VALUE$, (long)offset << $LG_BYTES_PER_VALUE$,
length << $LG_BYTES_PER_VALUE$); (long)length << $LG_BYTES_PER_VALUE$);
else else
#end[!byte] #end[!byte]
Bits.copyToArray(ix(pos), dst, arrayBaseOffset, Bits.copyToArray(ix(pos), dst, arrayBaseOffset,
offset << $LG_BYTES_PER_VALUE$, (long)offset << $LG_BYTES_PER_VALUE$,
length << $LG_BYTES_PER_VALUE$); (long)length << $LG_BYTES_PER_VALUE$);
position(pos + length); position(pos + length);
} else { } else {
super.get(dst, offset, length); super.get(dst, offset, length);
...@@ -329,7 +329,7 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -329,7 +329,7 @@ class Direct$Type$Buffer$RW$$BO$
if (srem > rem) if (srem > rem)
throw new BufferOverflowException(); throw new BufferOverflowException();
unsafe.copyMemory(sb.ix(spos), ix(pos), srem << $LG_BYTES_PER_VALUE$); unsafe.copyMemory(sb.ix(spos), ix(pos), (long)srem << $LG_BYTES_PER_VALUE$);
sb.position(spos + srem); sb.position(spos + srem);
position(pos + srem); position(pos + srem);
} else if (src.hb != null) { } else if (src.hb != null) {
...@@ -353,7 +353,7 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -353,7 +353,7 @@ class Direct$Type$Buffer$RW$$BO$
public $Type$Buffer put($type$[] src, int offset, int length) { public $Type$Buffer put($type$[] src, int offset, int length) {
#if[rw] #if[rw]
if ((length << $LG_BYTES_PER_VALUE$) > Bits.JNI_COPY_FROM_ARRAY_THRESHOLD) { if (((long)length << $LG_BYTES_PER_VALUE$) > Bits.JNI_COPY_FROM_ARRAY_THRESHOLD) {
checkBounds(offset, length, src.length); checkBounds(offset, length, src.length);
int pos = position(); int pos = position();
int lim = limit(); int lim = limit();
...@@ -364,12 +364,16 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -364,12 +364,16 @@ class Direct$Type$Buffer$RW$$BO$
#if[!byte] #if[!byte]
if (order() != ByteOrder.nativeOrder()) if (order() != ByteOrder.nativeOrder())
Bits.copyFrom$Memtype$Array(src, offset << $LG_BYTES_PER_VALUE$, Bits.copyFrom$Memtype$Array(src,
ix(pos), length << $LG_BYTES_PER_VALUE$); (long)offset << $LG_BYTES_PER_VALUE$,
ix(pos),
(long)length << $LG_BYTES_PER_VALUE$);
else else
#end[!byte] #end[!byte]
Bits.copyFromArray(src, arrayBaseOffset, offset << $LG_BYTES_PER_VALUE$, Bits.copyFromArray(src, arrayBaseOffset,
ix(pos), length << $LG_BYTES_PER_VALUE$); (long)offset << $LG_BYTES_PER_VALUE$,
ix(pos),
(long)length << $LG_BYTES_PER_VALUE$);
position(pos + length); position(pos + length);
} else { } else {
super.put(src, offset, length); super.put(src, offset, length);
...@@ -387,7 +391,7 @@ class Direct$Type$Buffer$RW$$BO$ ...@@ -387,7 +391,7 @@ class Direct$Type$Buffer$RW$$BO$
assert (pos <= lim); assert (pos <= lim);
int rem = (pos <= lim ? lim - pos : 0); int rem = (pos <= lim ? lim - pos : 0);
unsafe.copyMemory(ix(pos), ix(0), rem << $LG_BYTES_PER_VALUE$); unsafe.copyMemory(ix(pos), ix(0), (long)rem << $LG_BYTES_PER_VALUE$);
position(rem); position(rem);
limit(capacity()); limit(capacity());
discardMark(); discardMark();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册