Skip to content

Commit 7c23491

Browse files
Joshua Zhuy1yang0
Joshua Zhu
authored andcommittedJul 15, 2021
8269598: Regressions up to 5% on aarch64 seems due to JDK-8268858
Reviewed-by: kvn, dlong
1 parent 7d0edb5 commit 7c23491

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed
 

‎src/hotspot/cpu/aarch64/aarch64.ad

+8
Original file line numberDiff line numberDiff line change
@@ -2591,6 +2591,14 @@ uint Matcher::int_pressure_limit()
25912591
// a high register pressure area of the code so that split_DEF can
25922592
// generate DefinitionSpillCopy for the derived pointer.
25932593
uint default_int_pressure_threshold = _NO_SPECIAL_REG32_mask.Size() - 1;
2594+
if (!PreserveFramePointer) {
2595+
// When PreserveFramePointer is off, frame pointer is allocatable,
2596+
// but different from other SOC registers, it is excluded from
2597+
// fatproj's mask because its save type is No-Save. Decrease 1 to
2598+
// ensure high pressure at fatproj when PreserveFramePointer is off.
2599+
// See check_pressure_at_fatproj().
2600+
default_int_pressure_threshold--;
2601+
}
25942602
return (INTPRESSURE == -1) ? default_int_pressure_threshold : INTPRESSURE;
25952603
}
25962604

0 commit comments

Comments
 (0)