-
Bug
-
Resolution: Fixed
-
P3
-
8, 11, 16, 17
-
b06
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8260983 | 16.0.2 | Tobias Hartmann | P3 | Resolved | Fixed | b01 |
JDK-8260886 | 16.0.1 | Tobias Hartmann | P3 | Resolved | Fixed | b04 |
JDK-8263493 | 13.0.7 | Sergey Nazarkin | P3 | Resolved | Fixed | b04 |
JDK-8260953 | 11.0.12-oracle | Dukebot | P3 | Resolved | Fixed | b01 |
JDK-8261313 | 11.0.11 | Aleksey Shipilev | P3 | Resolved | Fixed | b02 |
JDK-8262911 | openjdk8u302 | Fei Yang | P3 | Resolved | Fixed | b01 |
int StubAssembler::call_RT(Register oop_result1, Register metadata_result, address entry, Register arg1, Register arg2, Register arg3) {
#ifdef _LP64
// if there is any conflict use the stack
if (arg1 == c_rarg2 || arg1 == c_rarg3 ||
arg2 == c_rarg1 || arg1 == c_rarg3 ||
arg3 == c_rarg1 || arg1 == c_rarg2) { <---- HERE
push(arg3);
push(arg2);
push(arg1);
pop(c_rarg1);
pop(c_rarg2);
pop(c_rarg3);
} else {
mov(c_rarg1, arg1);
mov(c_rarg2, arg2);
mov(c_rarg3, arg3);
}
It seems obvious that the right column in the condition should have been arg1, arg2, arg3.
- backported by
-
JDK-8260886 C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
- Resolved
-
JDK-8260953 C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
- Resolved
-
JDK-8260983 C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
- Resolved
-
JDK-8261313 C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
- Resolved
-
JDK-8262911 C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
- Resolved
-
JDK-8263493 C1: 3-arg StubAssembler::call_RT stack-use condition is incorrect
- Resolved
- links to
-
Commit openjdk/jdk13u-dev/e0aac4a5
-
Commit openjdk/jdk16u/58ff0df2
-
Commit openjdk/jdk/ce945120
-
Review openjdk/jdk13u-dev/142
-
Review openjdk/jdk16u/12
-
Review openjdk/jdk/2048