RISC-V: Support Zalasr extension.
GCC now supports the RISC-V Zalasr extension for load-acquire/store-release operations, improving synchronization primitives.
This commit adds support for the RISC-V Zalasr extension, which introduces new instructions for load-acquire and store-release operations. This extension provides more efficient synchronization primitives for multithreaded programming. The patch includes updates to the compiler, documentation, and testsuite to incorporate the new extension.
In Details
This commit introduces support for the RISC-V Zalasr extension, defining it in riscv-ext.def and riscv-ext.opt. The changes also modify sync-rvwmo.md and sync-ztso.md to account for the new extension. The Zalasr extension provides efficient load-acquire and store-release instructions.
For Context
This commit adds support for the Zalasr extension to the RISC-V architecture in GCC. RISC-V is a modern open-source processor architecture. The Zalasr extension introduces new instructions that provide better support for atomic operations, specifically 'load-acquire' and 'store-release'. These operations are crucial for writing correct and efficient multithreaded programs by ensuring proper synchronization between threads when accessing shared memory.