On Tue, Dec 1, 2020 at 6:26 AM Krunal Bauskar <krunalbaus...@gmail.com> wrote: > On Tue, 1 Dec 2020 at 02:31, Alexander Korotkov <aekorot...@gmail.com> wrote: >> BTW, how do you get that required gcc version is 9.4? I've managed to >> use LSE with gcc 9.3. > > Did they backported it to 9.3? > I am just looking at the gcc guide. > https://gcc.gnu.org/gcc-9/changes.html > > GCC 9.4 > > Target Specific Changes > > AArch64 > > The option -moutline-atomics has been added to aid deployment of the Large > System Extensions (LSE)
No, you've misread this release notes item. This item relates to a new option for LSE support. See the rest of the description. "When the option is specified code is emitted to detect the presence of LSE instructions at runtime and use them for standard atomic operations. For more information please refer to the documentation." LSE support itself was introduced in gcc 6. https://gcc.gnu.org/gcc-6/changes.html * The ARMv8.1-A architecture and the Large System Extensions are now supported. They can be used by specifying the -march=armv8.1-a option. Additionally, the +lse option extension can be used in a similar fashion to other option extensions. The Large System Extensions introduce new instructions that are used in the implementation of atomic operations. But, -moutline-atomics looks very interesting itself. I think we should add this option to our arm64 packages if we haven't already. ------ Regards, Alexander Korotkov