AMD AOCC 3.1 Compiler Released - Rebased On LLVM 12.0
AMD earlier this week quietly published a new version of its AOCC code compiler that is now rebased against the upstream LLVM/Clang 12.0 compiler state.
AMD Optimizing C/C++ Compiler 3.0 was released back in March alongside the EPYC 7003 "Milan" launch. AOCC 3.1 is now available as the latest incremental improvement to this LLVM/Clang downstream that focuses on carrying various out-of-tree patches optimizing the open-source compiler for AMD's Zen microarchitecture family, making Flang suitable for compiling more Fortran code-bases, and other enhancements when building code for AMD CPUs.
With AOCC 3.1 the main change is re-basing its LLVM code-base and associated sub-projects against the state of upstream LLVM 12.0 from April. Thus AOCC is now shipping against the latest stable code-base for LLVM while it will be succeeded by the upstream LLVM 13.0 release due out in September.
AOCC 3.1 also adds vector / inline / unroll related pragma directives in the Flang Fortran compiler and expanded its OpenMP 4.5 coverage with Fortran. Those are the only changes officially listed for the AOCC 3.1 release, which remains available as a binary-only compiler release.
AOCC 3.1 downloads and more information are available from developer.amd.com. I'll have up some new AOCC 3.1 compiler benchmarks on Zen 3 shortly.