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

Missing load acquire when checking if ConstantPoolCacheEntry is resolved

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 9
    • 9
    • hotspot
    • None
    • b96
    • aarch64
    • generic

      In InterpreterMacroAssembler::get_cache_and_index_and_bytecode_at_bcp, rewrite bytecode in ConstantPoolCacheEntry._indices is read with ldrw. Following loads (for example ConstantPoolCacheEntry._flags and field offset) might finish before ConstantPoolCacheEntry._indices load and get unexpected values. ConstantPoolCacheEntry._indices is read and write with load acquire and store release in all other places. It also need load acquire here to guarantee read correct field offset and flags from ConstantPoolCacheEntry.

            hshi Hui Shi
            hshi Hui Shi
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: