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

aarch64: missing LoadStore barrier in TemplateTable::fast_storefield

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      b10
    • CPU:
      aarch64
    • OS:
      generic

      Backports

        Description

        Reported by: patrick@os.amperecomputing.com

        https://mail.openjdk.java.net/pipermail/aarch64-port-dev/2019-February/006942.html
        ===================
        Perhaps TemplateTable::fast_storefield needs the additional " | MacroAssembler::LoadStore" as well, please double check, thanks.
        http://hg.openjdk.java.net/jdk/jdk/file/f41793b5b83f/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp#l2984
        ===================

        Proposed fix: https://mail.openjdk.java.net/pipermail/aarch64-port-dev/2019-February/006947.html

        diff -r 2a78b2963793 src/hotspot/cpu/aarch64/templateTable_aarch64.cpp
        --- a/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Wed Feb 13 13:27:17 2019 +0100
        +++ b/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Fri Feb 22 17:18:20 2019 +0800
        @@ -2981,7 +2981,7 @@
           {
             Label notVolatile;
             __ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile);
        - __ membar(MacroAssembler::StoreStore);
        + __ membar(MacroAssembler::StoreStore | MacroAssembler::LoadStore);
             __ bind(notVolatile);
           }

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                fyang Fei Yang
                Reporter:
                fyang Fei Yang
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: