summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC
diff options
context:
space:
mode:
authorJoerg Sonnenberger <joerg@bec.de>2014-08-04 22:56:42 +0000
committerJoerg Sonnenberger <joerg@bec.de>2014-08-04 22:56:42 +0000
commit51cf733427c6076bce76a057b4e9b593f3a8b407 (patch)
treecf19812cf9ef3aa6c15ed810de93d7db9a36ab86 /llvm/lib/Target/PowerPC
parent13a4f76d517fdf1c1ec2c31193293e738f86b83e (diff)
downloadbcm5719-llvm-51cf733427c6076bce76a057b4e9b593f3a8b407.tar.gz
bcm5719-llvm-51cf733427c6076bce76a057b4e9b593f3a8b407.zip
Add simplified aliases for access to DCCR, ICCR, DEAR and ESR
llvm-svn: 214797
Diffstat (limited to 'llvm/lib/Target/PowerPC')
-rw-r--r--llvm/lib/Target/PowerPC/PPCInstrInfo.td12
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCInstrInfo.td b/llvm/lib/Target/PowerPC/PPCInstrInfo.td
index 70b61a5047c..7c50a3b763e 100644
--- a/llvm/lib/Target/PowerPC/PPCInstrInfo.td
+++ b/llvm/lib/Target/PowerPC/PPCInstrInfo.td
@@ -3262,6 +3262,18 @@ foreach BATR = 0-3 in {
Requires<[IsPPC6xx]>;
}
+def : InstAlias<"mtdccr $Rx", (MTSPR 1018, gprc:$Rx)>, Requires<[IsPPC4xx]>;
+def : InstAlias<"mfdccr $Rx", (MFSPR gprc:$Rx, 1018)>, Requires<[IsPPC4xx]>;
+
+def : InstAlias<"mticcr $Rx", (MTSPR 1019, gprc:$Rx)>, Requires<[IsPPC4xx]>;
+def : InstAlias<"mficcr $Rx", (MFSPR gprc:$Rx, 1019)>, Requires<[IsPPC4xx]>;
+
+def : InstAlias<"mtdear $Rx", (MTSPR 981, gprc:$Rx)>, Requires<[IsPPC4xx]>;
+def : InstAlias<"mfdear $Rx", (MFSPR gprc:$Rx, 981)>, Requires<[IsPPC4xx]>;
+
+def : InstAlias<"mtesr $Rx", (MTSPR 980, gprc:$Rx)>, Requires<[IsPPC4xx]>;
+def : InstAlias<"mfesr $Rx", (MFSPR gprc:$Rx, 980)>, Requires<[IsPPC4xx]>;
+
def LAx : PPCAsmPseudo<"la $rA, $addr", (ins gprc:$rA, memri:$addr)>;
def SUBI : PPCAsmPseudo<"subi $rA, $rB, $imm",
OpenPOWER on IntegriCloud