RFR: 8239454: LLIntData : invalid opcode returned for 16 and 32 bit wide instructions
ajoseph at openjdk.java.net
Wed Feb 19 12:19:50 UTC 2020
With new bytecode format introduced in Webkit 608.1, the unlinked and linked bytecodes were replaced by narrow (1-byte operand) and wide (4-byte operand) bytecodes. These were extended to narrow, wide16 and wide32 bytecodes in WebKit 609.1. In narrow instructions, each argument of the opcode has a fixed size of 1-byte. The same applies for wide 16 and wide32 with 2-byte and 4-byte, respectively.
Bug: When `getOpcodeWide(id)` is called in `LLIntData.h`, the value (`id` - `numOpcodesIDs`) is returned.
Fix: It's modified to (`id` + `numOpcodesIDs`) in `getOpcodeWide16()` and (`id` + `numOpcodesIDs`*2) in `getOpcodeWide32()`.
- eed20431: 8239454: LLIntData : invalid opcode returned for 16 and 32 bit wide instructions
Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
Fetch: git fetch https://git.openjdk.java.net/jfx pull/115/head:pull/115
More information about the openjfx-dev