On Thu, 14 Mar 2024 09:14:04 GMT, Hamlin Li <m...@openjdk.org> wrote:

>> Hi,
>> Can you help to review this patch?
>> Thanks
>> 
>> This is a continuation of work based on [1] by @XiaohongGong, most work was 
>> done in that pr. In this new pr, just rebased the code in [1], then added 
>> some minor changes (renaming of calling method, add libsleef as extra lib in 
>> CI cross-build on aarch64 in github workflow); I aslo tested the combination 
>> of following scenarios:
>> * at build time
>>   * with/without sleef
>>   * with/without sve support 
>> * at runtime
>>   * with/without sleef
>>   * with/without sve support 
>> 
>> [1] https://github.com/openjdk/jdk/pull/16234
>> 
>> ## Regression Test
>> * test/jdk/jdk/incubator/vector/
>> * test/hotspot/jtreg/compiler/vectorapi/
>> 
>> ## Performance Test
>> Previously, @XiaohongGong has shared the data: 
>> https://github.com/openjdk/jdk/pull/16234#issuecomment-1767727028
>
> Hamlin Li has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   fix variable name in github workflow

make/autoconf/flags-cflags.m4 line 994:

> 992:   # for SVE. Set SVE_CFLAGS to -march=armv8-a+sve if it does. Empty 
> otherwise.
> 993:   # ACLE and this flag are required to build the Arm SVE related 
> functions in
> 994:   # libvmath.

Suggestion:

  # Check whether the compiler supports the Arm C Language Extensions (ACLE)
  # for SVE. Set SVE_CFLAGS to -march=armv8-a+sve if it does.
  # ACLE and this flag are required to build the aarch64 SVE related functions 
in
  # libvectormath.

src/jdk.incubator.vector/linux/native/libvmath/vect_math.h line 1:

> 1: /*

I'd just like to raise the question of naming. Right now the terms "vmath", 
"vect_math" and "vector_math" seems to be used interchangeably. I think it 
would be good to standardize on one name, and my suggestion is to go with the 
complete name -- that fits with a general theme in Java. It has the benefit 
that if there are many ways to abbreviate a term, there is only one way to not 
abbreviate it.

On the other hand, using `_` in library names is not really that common, so I'd 
suggest this file should be named `libvectormath/vector_math.h`. (And 
correspondingly for the other files.)

src/jdk.incubator.vector/linux/native/libvmath/vect_math.h line 31:

> 29: #endif
> 30: 
> 31: #ifndef VMATH_EXPORT

You can just use `JNIEXPORT` instead of trying to brew your own solution.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/18294#discussion_r1524748090
PR Review Comment: https://git.openjdk.org/jdk/pull/18294#discussion_r1524745947
PR Review Comment: https://git.openjdk.org/jdk/pull/18294#discussion_r1524746666

Reply via email to