Implement PPC counter loops as a late IR-level pass
[oota-llvm.git] / lib / Target / PowerPC / PPCInstrInfo.td
index 9c39b34ab079f91f2d4e948a277b2d5a0b9c3b2e..6501ef713f65e27350a159c773043b31ad391c4b 100644 (file)
@@ -1700,6 +1700,12 @@ def MTCTR : XFXForm_7_ext<31, 467, 9, (outs), (ins gprc:$rS),
                           "mtctr $rS", SprMTSPR>,
             PPC970_DGroup_First, PPC970_Unit_FXU;
 }
+let hasSideEffects = 1, isCodeGenOnly = 1, Defs = [CTR] in {
+let Pattern = [(int_ppc_mtctr i32:$rS)] in
+def MTCTRse : XFXForm_7_ext<31, 467, 9, (outs), (ins gprc:$rS),
+                            "mtctr $rS", SprMTSPR>,
+              PPC970_DGroup_First, PPC970_Unit_FXU;
+}
 
 let Defs = [LR] in {
 def MTLR  : XFXForm_7_ext<31, 467, 8, (outs), (ins gprc:$rS),