JDK-8269274 : [lworld] Withfield instruction fails to verify when operand stack contains LPrimitiveClass;
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: repo-valhalla
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2021-06-24
  • Updated: 2021-06-29
  • Resolved: 2021-06-28
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.
Other
repo-valhallaFixed
Related Reports
Blocks :  
Duplicate :  
Description
The following code (generated via wip javac)

static X$Point makePoint(int, int);
    descriptor: (II)QX$Point;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
         0: defaultvalue  #1                  // class X$Point
         3: checkcast     #3                  // class X$Point
         6: astore_2
         7: iload_0
         8: aload_2
         9: swap
        10: withfield     #4                  // Field x:I
        13: astore_2
        14: iload_1
        15: aload_2
        16: swap
        17: withfield     #8                  // Field y:I
        20: astore_2
        21: aload_2
        22: checkcast     #11                 // class "QX$Point;"
        25: areturn
      LineNumberTable:
        line 5: 0
        line 6: 7
        line 7: 14
        line 8: 21
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0      26     0     x   I
            0      26     1     y   I
            7      19     2     p   LX$Point;

fails to verify at @bci 10 : Type 'X$Point' (current frame, stack[0]) is not assignable to inline type