MovePCtoLR (which is `bl' in disguise) modifies LR implicitly


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15272 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/PowerPC/PPCInstrInfo.td b/lib/Target/PowerPC/PPCInstrInfo.td
index 55447a2..02e33f3 100644
--- a/lib/Target/PowerPC/PPCInstrInfo.td
+++ b/lib/Target/PowerPC/PPCInstrInfo.td
@@ -1254,7 +1254,8 @@
 def PHI : PPC32InstPatternPseudo<"PHI", Pseudo>;          // PHI node...
 def ADJCALLSTACKDOWN : PPC32InstPatternPseudo<"ADJCALLSTACKDOWN", Pseudo>;
 def ADJCALLSTACKUP : PPC32InstPatternPseudo<"ADJCALLSTACKUP", Pseudo>;
-def MovePCtoLR : PPC32InstPatternPseudo<"MovePCtoLR", Pseudo>;
+let Defs = [LR] in
+  def MovePCtoLR : PPC32InstPatternPseudo<"MovePCtoLR", Pseudo>;
 def IMPLICIT_DEF : PPC32InstPatternPseudo<"IMPLICIT_DEF", Pseudo>;
 
 def LOADLoIndirect : PPC32InstPattern0 <"lwz", Gpr, Gpr0, Simm16, 14, 0, 0>;