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

fix for 6879921 was insufficient

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      b03
    • CPU:
      sparc
    • OS:
      solaris_9
    • Verification:
      Verified

      Backports

        Description

        6879921 fix a case where it the superword optimization was attempting to handle arrays of oops which we didn't allow. A guard was inserted in stmts_can_pack which fixed the original issue. Testing with bigapps has shown that there are other paths where this problem can manifest. In particular this pattern:

            public static void init(Object src[], boolean[] dst) {
                // initialize the arrays
                for (int i =0; i<src.length; i++) {
                    dst[i] = src[i] != null ? false : true;
                }
            }

        shows that are_adjacent_refs can be reached through est_savings, skipping the added is_java_primitive guard. The fix is to move the is_java_primitive into are_adjacent_refs to guard the data_size calls.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                never Tom Rodriguez
                Reporter:
                never Tom Rodriguez
                Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: