JDK-8227431 : [Windows] Fix assertion failure on X86 32-bit when enabling CLOOP based JavaScript interpreter
  • Type: Bug
  • Component: javafx
  • Sub-Component: web
  • Affected Version: 8u231,openjfx13
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2019-07-09
  • Updated: 2020-01-31
  • Resolved: 2019-07-31
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8 Other
8u231Fixed openjfx11.0.5Fixed
Description
inline Opcode getOpcodeWide(OpcodeID id)
{
#if ENABLE(COMPUTED_GOTO_OPCODES)
    return g_opcodeMapWide[id];
#else
    UNUSED_PARAM(id);
    RELEASE_ASSERT_NOT_REACHED();
#endif
}
Comments
Changeset: 50ee4c9d7932 Author: ghb Date: 2019-07-31 14:00 +0530 URL: https://hg.openjdk.java.net/openjfx/13-dev/rt/rev/50ee4c9d7932
31-07-2019

A follow-up PR that includes the previous is now under review here: https://github.com/javafxports/openjdk-jfx/pull/545
30-07-2019

Raising to P2 as a regression of the recent WebKit update.
09-07-2019

WebKit's JavaScript interpreter has 2 types of implementation 1) C_LOOP - Implemented using C constructs (CPU agnostic) 2) LLInt - Implemented in Low level assembly (CPU specific) Interpreter logics are expressed using DSL which is written using Ruby and actual interpreter code is generated(#1 or #2) during the build time. As of today C_LOOP is the supported interpreter mode on 32-bit X86 platform. Since 32-bit X86 is not so commonly used now a days, WebKit's JavaScript interpreter has few unimplemented logics related to C_LOOP. Implement the function getOpcodeWide which is nothing but a reverse operation of OpcodeID enum value generation. The below PR implements the missing logic, https://github.com/javafxports/openjdk-jfx/pull/525
09-07-2019