Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8269275

[lworld] Withfield instruction fails to verify when operand stack contains LPrimitiveClass;

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P4
    • Resolution: Duplicate
    • Affects Version/s: repo-valhalla
    • Fix Version/s: None
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • CPU:
      generic
    • OS:
      generic

      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

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              sadayapalam Srikanth Adayapalam
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: