llvm.org GIT mirror llvm / e533c8c
[AArch64] Add command-line option predres Prediction control instructions are only mandatory from v8.5a onwards but is optional from Armv8.0-A. This patch adds a command line option to enable it by it's own. Differential Revision: https://reviews.llvm.org/D56007 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350385 91177308-0d34-0410-b5e6-96231b3b80d8 Diogo N. Sampaio 1 year, 9 months ago
3 changed file(s) with 5 addition(s) and 1 deletion(s). Raw diff Collapse all Expand all
7373 AARCH64_ARCH_EXT_NAME("memtag", AArch64::AEK_MTE, "+mte", "-mte")
7474 AARCH64_ARCH_EXT_NAME("ssbs", AArch64::AEK_SSBS, "+ssbs", "-ssbs")
7575 AARCH64_ARCH_EXT_NAME("sb", AArch64::AEK_SB, "+sb", "-sb")
76 AARCH64_ARCH_EXT_NAME("predres", AArch64::AEK_PREDRES, "+predres", "-predres")
7677 #undef AARCH64_ARCH_EXT_NAME
7778
7879 #ifndef AARCH64_CPU_NAME
4848 AEK_MTE = 1 << 19,
4949 AEK_SSBS = 1 << 20,
5050 AEK_SB = 1 << 21,
51 AEK_PREDRES = 1 << 22,
5152 };
5253
5354 enum class ArchKind {
989989 {"rng", "norng", "+rand", "-rand"},
990990 {"memtag", "nomemtag", "+mte", "-mte"},
991991 {"ssbs", "nossbs", "+ssbs", "-ssbs"},
992 {"sb", "nosb", "+sb", "-sb"}};
992 {"sb", "nosb", "+sb", "-sb"},
993 {"predres", "nopredres", "+predres", "-predres"}
994 };
993995
994996 for (unsigned i = 0; i < array_lengthof(ArchExt); i++) {
995997 EXPECT_EQ(StringRef(ArchExt[i][2]),