hg: panama/dev: 27 new changesets

henry.jen at oracle.com henry.jen at oracle.com
Wed Dec 20 09:38:00 UTC 2017


Changeset: 7cda0e4266e7
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-10-17 15:07 -0700
URL:       http://hg.openjdk.java.net/panama/dev/rev/7cda0e4266e7

Vector API: Derive return box type from receiver

Currently, Vector API requires for the type profile to be adequate to recover
types from return profile. This means using -XX:TypeProfileLevel=121.
However, it is possible to recover type from receiver by deriving it based
on method and receiver type.

! src/hotspot/share/opto/library_call.cpp

Changeset: 5fb77eb2476f
Author:    rlupusoru
Date:      2017-09-29 10:37 -0700
URL:       http://hg.openjdk.java.net/panama/dev/rev/5fb77eb2476f

Vector API: trueMask, falseMask, non-abstract zero

-trueMask and falseMask methods were added to be able to initialize masks.
-zero method was made non-abstract due to limitation in how intrinsics dispatching works.

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/GenericMask.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template

Changeset: 79af5242f3d3
Author:    rlupusoru
Date:      2017-10-31 15:42 -0700
URL:       http://hg.openjdk.java.net/panama/dev/rev/79af5242f3d3

Fix issue with zero index for shuffle/swizzle

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template

Changeset: bf73c9e7d82f
Author:    rlupusoru
Date:      2017-10-31 15:55 -0700
URL:       http://hg.openjdk.java.net/panama/dev/rev/bf73c9e7d82f

Add support for generation of VectorBox

VectorBox is unconditionally placed in graph along with allocations
during the initial intrinsifications. However, VectorBox is considered
for elimination when its output object is not being used.

In order to also deal with VectorMask boxing, additional nodes have
been added to "convert" between internal representation of masks
to the array representation used in GenericMask.

! src/hotspot/cpu/x86/assembler_x86.cpp
! src/hotspot/cpu/x86/assembler_x86.hpp
! src/hotspot/cpu/x86/x86.ad
! src/hotspot/share/ci/ciType.cpp
! src/hotspot/share/opto/classes.hpp
! src/hotspot/share/opto/compile.hpp
! src/hotspot/share/opto/doCall.cpp
! src/hotspot/share/opto/library_call.cpp
! src/hotspot/share/opto/macro.cpp
! src/hotspot/share/opto/macro.hpp
! src/hotspot/share/opto/vectornode.hpp

Changeset: ccd725c6c05a
Author:    psandoz
Date:      2017-11-16 12:00 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/ccd725c6c05a

Specialize masks.

+ src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractMask.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Byte64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java
- src/jdk.incubator.vector/share/classes/jdk/incubator/vector/GenericMask.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Long64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Short64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/gen-src.sh

Changeset: dd1ea1334b7b
Author:    psandoz
Date:      2017-11-16 18:36 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/dd1ea1334b7b

reduction all operations should prefix with the scalar operation name

! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/opto/library_call.cpp
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template
! test/jdk/jdk/incubator/vector/VectorArrays.java
! test/jdk/jdk/incubator/vector/VectorHash.java

Changeset: 5c286017f8f0
Author:    vlivanov
Date:      2017-11-20 19:34 +0300
URL:       http://hg.openjdk.java.net/panama/dev/rev/5c286017f8f0

Fix build issues on Solaris.

! src/hotspot/share/opto/macro.hpp
! src/hotspot/share/opto/vectornode.hpp

Changeset: 9fdce1c50b35
Author:    vlivanov
Date:      2017-11-21 23:28 +0300
URL:       http://hg.openjdk.java.net/panama/dev/rev/9fdce1c50b35

Introduce C2-specific query: getMaxVectorSize()

! src/hotspot/share/prims/unsafe.cpp
! src/java.base/share/classes/jdk/internal/misc/Unsafe.java
+ test/jdk/panama/vector/MaxVectorSize.java

Changeset: 711fe8c0d6c1
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-11-22 14:15 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/711fe8c0d6c1

Finish boxing support for masks

After mask specialization for type and shape, the compiler has now
been updated to support the new specialized classes. This work includes
being able to recover information to know what kind of mask to create.
Boxing support is fully implemented now.

! src/hotspot/share/ci/ciType.cpp
! src/hotspot/share/ci/ciType.hpp
! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/opto/library_call.cpp
! src/hotspot/share/opto/macro.cpp
! src/hotspot/share/opto/vectornode.hpp

Changeset: 076efafeb8d6
Author:    psandoz
Date:      2017-11-27 19:04 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/076efafeb8d6

Use correct Java operators for arithmetic shift right (>>)
and logical shift right (>>>)

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template

Changeset: 60d7d32ff986
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-11-28 11:31 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/60d7d32ff986

Blend needs to select second source when mask is true

The blend operation currently selects from the first operand when mask bits
are set to true. This patch updates it so it selects from second source instead.
Although it can be argued both ways, this change will keep the blend operation
consistent with all others that use mask. Namely, the thought process works as
follows: if mask is true, apply operation. In case of blend, it should be the
same: if mask is true, apply operation. Since the operation to be applied is blend,
it means that when mask is true, the blending should be happening. So therefore,
when mask is true, select from second operand. When mask is false, keep original
result (aka no blend happened).

In addition to correcting semantic intent to be consistent with rest of API using
masks, this change also makes it consistent with x86 blend instruction which uses
similar logic and selects from second source when mask is true.

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template

Changeset: 9773048d500e
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-11-28 14:36 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/9773048d500e

Add sanity check for Vector API class before trying to intrinsify

Last commit accidentally removed the check that recovered type must
be known Vector API class. This is because mapping information like
type and size must be recovered and this is only possible with a
manual mapping at this time. This check should not be needed when
Vector API intrinsification support is complete.

! src/hotspot/share/opto/library_call.cpp

Changeset: 0c7ab9a1bf00
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-11-28 15:31 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/0c7ab9a1bf00

Swap blend instruction operands to match updated API semantics

! src/hotspot/cpu/x86/x86.ad

Changeset: 35bd5946c41d
Author:    vlivanov
Date:      2017-12-01 20:48 +0300
URL:       http://hg.openjdk.java.net/panama/dev/rev/35bd5946c41d

Fix IGV dump when incremental inlining fails.

! src/hotspot/share/opto/compile.cpp

Changeset: a114c522cbed
Author:    psandoz
Date:      2017-12-04 12:00 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/a114c522cbed

Gather/scatter with from/toArray for primitive arrays.
An int[] array provides a relative mapping from vector indexes
to array indexes. The mapping array length may be greater than
the vector length.
TODO: ByteBuffer/byte[]

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template
! test/jdk/jdk/incubator/vector/AddTest.java

Changeset: e30065ff0568
Author:    psandoz
Date:      2017-12-04 12:36 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/e30065ff0568

Support larger index mapping arrays by providing an offset to
the gather/scatter from/into array.

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template
! test/jdk/jdk/incubator/vector/AddTest.java

Changeset: 5de7ea830840
Author:    psandoz
Date:      2017-12-04 15:18 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/5de7ea830840

Generate vector from a sequence of scalar values.
Currently implemented using varargs so as not to expose
the concrete type+shape implementations.

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/LongVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ShortVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template

Changeset: 1c47d633f8be
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-04 16:21 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/1c47d633f8be

Add more diagnostic error messages when DebugVectorApi is set

! src/hotspot/share/opto/library_call.cpp

Changeset: 636124a377c3
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-05 10:58 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/636124a377c3

Add support for mask ops and mask making

Added support for code generation for or/and operation on masks.

Also, fixed the issue related to intrinsification of calls to trueMask
and falseMask. Unfortunately, due to the way intrinsics dispatch works,
I needed to add an intrinsic for every class currently supported - this
should be cleaned up in future.

! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/opto/library_call.cpp

Changeset: d9044ce22fd9
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-05 10:58 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/d9044ce22fd9

Mark trueMask and falseMask as hotspot intrinsics

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Double64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Float64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int128Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int256Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int512Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Int64Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-VectorBits.java.template

Changeset: 2d442f94846e
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-07 10:07 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/2d442f94846e

Add flag to capture missing intrinsics when running application

The flag -XX:+DebugVectorApiMissingIntrinsics is useful to find
what Vector API methods are not intrinsified. This tends to print
more than necessary including lambda methods which are called due
to higher level API functionality being called, but it is a good
guide to help detect what is missing.

! src/hotspot/share/ci/ciMethod.cpp
! src/hotspot/share/ci/ciMethod.hpp
! src/hotspot/share/opto/c2_globals.hpp
! src/hotspot/share/opto/callGenerator.cpp
! src/hotspot/share/opto/doCall.cpp

Changeset: 558799aa6d5d
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-07 10:09 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/558799aa6d5d

Make vector stores change memory state

To help maintain proper ordering and also prevent weird memory
control being created (also due to fact that VectorBox exposes
a memory projection), simply create a new memory state when
stores are involved.

! src/hotspot/share/opto/library_call.cpp

Changeset: 61d22aa9523c
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-07 13:32 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/61d22aa9523c

Add support for simple Vector rebracket that does not change resulting shape

! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/opto/classes.hpp
! src/hotspot/share/opto/library_call.cpp
! src/hotspot/share/opto/vectornode.hpp

Changeset: a686db41cbc0
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-07 14:28 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/a686db41cbc0

Add greaterThan support for float and int

! src/hotspot/cpu/x86/x86.ad
! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/opto/library_call.cpp

Changeset: 8d5856004702
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-08 13:27 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/8d5856004702

Implement IntVector and, or, xor, shiftL, shiftR, AShiftR

! src/hotspot/share/classfile/vmSymbols.hpp
! src/hotspot/share/opto/library_call.cpp

Changeset: 6989d3fd5d1c
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-08 13:28 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/6989d3fd5d1c

Add hotspot intrinsic flag to greaterThan, or, xor, and, shiftL, shiftR, AShiftR

! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/DoubleVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/FloatVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/IntVector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/Vector.java
! src/jdk.incubator.vector/share/classes/jdk/incubator/vector/X-Vector.java.template

Changeset: bc0f328322be
Author:    Razvan A Lupusoru <razvan.a.lupusoru at intel.com>
Date:      2017-12-08 13:39 -0800
URL:       http://hg.openjdk.java.net/panama/dev/rev/bc0f328322be

Add missing byte, short, and long to class name recovery technique

! src/hotspot/share/opto/library_call.cpp



More information about the panama-dev mailing list