Skip to content

Commit edccce1

Browse files
authored
Merge pull request #20525 from a7ehuo/system-arraycopy-perf-27-threshold-64-128
x86: Increase inline reference arraycopy threshold
2 parents ec1ae09 + f7dc1d8 commit edccce1

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

runtime/compiler/x/codegen/J9TreeEvaluator.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1899,10 +1899,10 @@ TR::Register *J9::X86::TreeEvaluator::arraycopyEvaluator(TR::Node *node, TR::Cod
18991899
comp->target().cpu.supportsAVX() &&
19001900
comp->target().is64Bit();
19011901

1902-
int32_t repMovsThresholdBytes = 32;
1902+
int32_t repMovsThresholdBytes = comp->target().cpu.supportsFeature(OMR_FEATURE_X86_AVX512F) ? 128 : 64;
19031903
int32_t newThreshold = comp->getOptions()->getArraycopyRepMovsReferenceArrayThreshold();
19041904

1905-
if ((repMovsThresholdBytes < newThreshold) && ((newThreshold == 64) || (newThreshold == 128)))
1905+
if ((newThreshold == 32) || (newThreshold == 64) || (newThreshold == 128))
19061906
{
19071907
// If the CPU doesn't support AVX512, reduce the threshold to 64 bytes
19081908
repMovsThresholdBytes = ((newThreshold == 128) && !comp->target().cpu.supportsFeature(OMR_FEATURE_X86_AVX512F)) ? 64 : newThreshold;

0 commit comments

Comments
 (0)