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

[lworld] Investigate false adapter sharing due to inherited fields in the calling convention

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: P4 P4
    • repo-valhalla
    • repo-valhalla
    • hotspot

      Attached Test.java used to fail with -XX:+VerifyAdapterSharing due to false sharing of the adapters for MyValue1::test and MyValue2:test. The problem is that both methods have a byte "receiver" but with different offsets. I added code to InlineKlass::collect_fields to detect this situation and add some "garbage" to the signature to distinguish it from a "local" field with a different offset. I'm not 100% convinced though that this is correct, so we should investigate in more detail. Do we need different "garbage"? Could an empty inline type produce the same signature?

        1. Test.java
          1 kB
          Tobias Hartmann

            Unassigned Unassigned
            thartmann Tobias Hartmann
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: