[ARM] Don't Enable AES Pass for Generic Cores

This brings clang/llvm into line with GCC. The Pass is still enabled for
the affected cores, but is now opt-in when using `-march=`.

I also took the opportunity to add release notes for this change.

Reviewed By: john.brawn

Differential Revision: https://reviews.llvm.org/D125775
This commit is contained in:
Archibald Elliott 2022-05-18 13:10:22 +01:00
parent e497871356
commit 2321c36fbf
3 changed files with 8 additions and 1 deletions

View File

@ -265,6 +265,11 @@ New Compiler Flags
the parameter list were ``void``. There is no ``-fknr-functions`` or
``-fno-no-knr-functions`` flag; this feature cannot be disabled in language
modes where it is required, such as C++ or C2x.
- A new ARM pass to workaround Cortex-A57 Erratum 1742098 and Cortex-A72 Erratum
1655431 can be enabled using ``-mfix-cortex-a57-aes-1742098`` or
``-mfix-cortex-a72-aes-1655431``. The pass is enabled when using either of
these cpus with ``-mcpu=`` and can be disabled using
``-mno-fix-cortex-a57-aes-1742098`` or ``-mno-fix-cortex-a72-aes-1655431``.
Deprecated Compiler Flags
-------------------------

View File

@ -99,6 +99,8 @@ Changes to the ARM Backend
warnings will be generated and -mrestrict-it is now always off by default.
Previously it was on by default for Armv8 and off for all other architecture
versions.
* Added a pass to workaround Cortex-A57 Erratum 1742098 and Cortex-A72
Erratum 1655431. This is enabled by default when targeting either CPU.
Changes to the AVR Backend
--------------------------

View File

@ -1161,7 +1161,7 @@ include "ARMScheduleM7.td"
// ARM processors
//
// Dummy CPU, used to target architectures
def : ProcessorModel<"generic", CortexA8Model, [FeatureFixCortexA57AES1742098]>;
def : ProcessorModel<"generic", CortexA8Model, []>;
// FIXME: Several processors below are not using their own scheduler
// model, but one of similar/previous processor. These should be fixed.