RFR (XS) 8241128: x86_32 build failure after JDK-8241042
Aleksey Shipilev
shade at redhat.com
Wed Mar 18 05:44:22 UTC 2020
Bug:
https://bugs.openjdk.java.net/browse/JDK-8241128
JDK-8241042 changed the lines below incorrectly. There is no multi-arg emit_int8, and it must be
emit_int16 or emit_int24.
Fix:
diff -r 82d11846109a -r 3d86b4b4701b src/hotspot/cpu/x86/assembler_x86.cpp
--- a/src/hotspot/cpu/x86/assembler_x86.cpp Wed Mar 18 06:28:50 2020 +0100
+++ b/src/hotspot/cpu/x86/assembler_x86.cpp Wed Mar 18 06:39:55 2020 +0100
@@ -6838,7 +6838,7 @@
void Assembler::cmp_literal32(Register src1, int32_t imm32, RelocationHolder const& rspec) {
// NO PREFIX AS NEVER 64BIT
InstructionMark im(this);
- emit_int8((unsigned char)0x81, (0xF8 | src1->encoding()));
+ emit_int16((unsigned char)0x81, (0xF8 | src1->encoding()));
emit_data(imm32, rspec, 0);
}
@@ -7638,7 +7638,7 @@
}
void Assembler::set_byte_if_not_zero(Register dst) {
- emit_int8(0x0F, (unsigned char)0x95, (0xE0 | dst->encoding()));
+ emit_int24(0x0F, (unsigned char)0x95, (0xE0 | dst->encoding()));
}
#else // LP64
Testing: x86_32 build
--
Thanks,
-Aleksey
More information about the hotspot-runtime-dev
mailing list