RFR: 8370691: Add new Float16Vector type and enable intrinsification of vector operations supported by auto-vectorizer [v17]
Jatin Bhateja
jbhateja at openjdk.org
Wed Jan 28 09:39:44 UTC 2026
On Tue, 27 Jan 2026 18:25:25 GMT, Paul Sandoz <psandoz at openjdk.org> wrote:
> > We will still need to create T_FLOAT16 basic type and associate it with Float16 LaneType, why not directly pass these basic types to intrinsic entry point ?
>
> The strong feedback from HotSpot folks, which i agree with, is adding a new enum value to `BasicType` is not the way to go - it is too disruptive and does not scale. Sorry if i misled you earlier on, it was my intention in feedback to propose something that was limited in scope to vector support.
>
> The thought about a proxy class was motivated by a question i had - what would we do if `Float16.class` was already present in `java.base`? and answers to that might motivate what we do now in preparation for when that happens. Regardless i think we need to separate out the Vector API's direct dependence on BasicType and its values. Instead we should define our own constants for the vector element types, and provide mapping of those to BasicType values which might result in "erasure" to the carrier type. We should adjust/adapt LaneType accordingly. Does that make sense to you?
Hi @PaulSandoz , Yes this looks good to me, I have modified the patch accordingly.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/28002#issuecomment-3810098116
More information about the core-libs-dev
mailing list