[llvm] r266144 - [AArch64] Fuse AES{D,E}/AESMC for Exynos M1. (NFC)

Evandro Menezes via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 12 15:42:37 PDT 2016


Author: evandro
Date: Tue Apr 12 17:42:36 2016
New Revision: 266144

URL: http://llvm.org/viewvc/llvm-project?rev=266144&view=rev
Log:
[AArch64] Fuse AES{D,E}/AESMC for Exynos M1. (NFC)

Modified:
    llvm/trunk/lib/Target/AArch64/AArch64SchedM1.td

Modified: llvm/trunk/lib/Target/AArch64/AArch64SchedM1.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AArch64/AArch64SchedM1.td?rev=266144&r1=266143&r2=266144&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AArch64/AArch64SchedM1.td (original)
+++ llvm/trunk/lib/Target/AArch64/AArch64SchedM1.td Tue Apr 12 17:42:36 2016
@@ -347,7 +347,10 @@ def : InstRW<[M1WriteNALU1],  (instregex
 // ASIMD store instructions.
 
 // Cryptography instructions.
-def : InstRW<[M1WriteNCRYPT1], (instregex "^AES")>;
+def M1WriteAES : SchedWriteRes<[M1UnitNCRYPT]> { let Latency = 1; }
+def M1ReadAES  : SchedReadAdvance<1, [M1WriteAES]>;
+def : InstRW<[M1WriteAES, M1ReadAES], (instregex "^AES")>;
+
 def : InstRW<[M1WriteNCRYPT1], (instregex "^PMUL")>;
 def : InstRW<[M1WriteNCRYPT1], (instregex "^SHA1(H|SU)")>;
 def : InstRW<[M1WriteNCRYPT5], (instregex "^SHA1[CMP]")>;




More information about the llvm-commits mailing list