On Wed, Jun 12, 2024 at 05:10:13PM -0700, Patrick O'Neill wrote: > Andrea Parri recently pointed out that we were emitting overly conservative > fences for seq_cst atomic loads/stores. This adds support for the optimized > fences specified in the PSABI: > https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/2092568f7896ceaa1ec0f02569b19eaa42cd51c9/riscv-atomic.adoc > > gcc/ChangeLog: > > * config/riscv/sync-rvwmo.md: Add support for subword fenced > loads/stores. > * config/riscv/sync-ztso.md: Ditto. > * config/riscv/sync.md: Ditto. > > gcc/testsuite/ChangeLog: > > * gcc.target/riscv/amo/amo-table-a-6-load-1.c: Increase test coverage to > include longs, shorts, chars, and bools. > * gcc.target/riscv/amo/amo-table-a-6-load-2.c: Ditto. > * gcc.target/riscv/amo/amo-table-a-6-load-3.c: Ditto. > * gcc.target/riscv/amo/amo-table-a-6-store-1.c: Ditto. > * gcc.target/riscv/amo/amo-table-a-6-store-2.c: Ditto. > * gcc.target/riscv/amo/amo-table-a-6-store-compat-3.c: Ditto. > * gcc.target/riscv/amo/amo-table-ztso-load-1.c: Ditto. > * gcc.target/riscv/amo/amo-table-ztso-load-2.c: Ditto. > * gcc.target/riscv/amo/amo-table-ztso-load-3.c: Ditto. > * gcc.target/riscv/amo/amo-table-ztso-store-1.c: Ditto. > * gcc.target/riscv/amo/amo-table-ztso-store-2.c: Ditto. > * gcc.target/riscv/amo/amo-table-ztso-store-3.c: Ditto. > > Signed-off-by: Patrick O'Neill <patr...@rivosinc.com>
Tested-by: Andrea Parri <and...@rivosinc.com> Andrea