eclipse-openj9 / openj9-omr

Eclipse OpenJ9's clone of the Eclipse OMR (https://github.com/eclipse/omr) project. PRs should be opened against the upstream OMR project whenever possible.
Other
38 stars 135 forks source link

(0.46) x86-64: Use rep movs instructions if array copy size greater than 32 bytes #209

Closed a7ehuo closed 4 months ago

a7ehuo commented 4 months ago

This PR ports https://github.com/eclipse/omr/pull/7384 to v0.46


This change applies to byte and char array System.arraycopy sequence. It avoids using vector instructions for copy size between 32 bytes to 64 bytes due to an observed regression.

a7ehuo commented 4 months ago

@0xdaryl @vijaysun-omr @ymanton @hzongaro fyi

0xdaryl commented 4 months ago

This needs to wait until eclipse/omr#7384 promotes and passes OMR acceptance.

@pshipton : for awareness and concerns

a7ehuo commented 4 months ago

There are some failures from the OMR acceptance build: https://openj9-jenkins.osuosl.org/job/Pipeline-OMR-Acceptance/707/, which look to me are known issues

aarch64_linux jdk 11 sanity.openjdk: jdk_security4_0_failed

ppc64_aix jdk 17 sanity.openjdk: jdk_lang_VarHandleTest_j9_1_FAILED, jdk_lang_VarHandleTest_j9_0_FAILED

s390x_linux jdk 17 sanity.openjdk: jdk_lang_VarHandleTest_j9_0_FAILED, jdk_lang_VarHandleTest_j9_1_FAILED

pshipton commented 4 months ago

I already promoted the OMR acceptance build earlier today.