Mark MFCR as reading all condition code registers.
authorDale Johannesen <dalej@apple.com>
Fri, 24 Oct 2008 22:08:01 +0000 (22:08 +0000)
committerDale Johannesen <dalej@apple.com>
Fri, 24 Oct 2008 22:08:01 +0000 (22:08 +0000)
Prevents some more overzealous deletions (mostly
in AltiVec code).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58121 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/PPCInstrInfo.td

index 430e9ef4e6d22300753271741ed7a6e437da8c72..0673361be442724ee89ce133fafbe8cf6cd58ab8 100644 (file)
@@ -1095,8 +1095,10 @@ def MFVRSAVE : XFXForm_1_ext<31, 339, 256, (outs GPRC:$rT), (ins),
 def MTCRF : XFXForm_5<31, 144, (outs), (ins crbitm:$FXM, GPRC:$rS),
                       "mtcrf $FXM, $rS", BrMCRX>,
             PPC970_MicroCode, PPC970_Unit_CRU;
+let Uses = [CR0, CR1, CR2, CR3, CR4, CR5, CR6, CR7] in {
 def MFCR  : XFXForm_3<31, 19, (outs GPRC:$rT), (ins), "mfcr $rT", SprMFCR>,
             PPC970_MicroCode, PPC970_Unit_CRU;
+}
 def MFOCRF: XFXForm_5a<31, 19, (outs GPRC:$rT), (ins crbitm:$FXM),
                        "mfcr $rT, $FXM", SprMFCR>,
             PPC970_DGroup_First, PPC970_Unit_CRU;