+2019-11-10 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.md (CC_any): New mode iterator.
+ (*movcc_internal1): Rename to...
+ (*movcc_<mode> for CC_any): ... this. Support moves of all CC modes.
+
2019-11-09 Jan Hubicka <hubicka@ucw.cz>
* cgraph.h (struct cgraph_node): Add ipcp_clone flag.
""
"")
-(define_insn "*movcc_internal1"
- [(set (match_operand:CC 0 "nonimmediate_operand"
- "=y,x,?y,y,r,r,r,r, r,*c*l,r,m")
- (match_operand:CC 1 "general_operand"
- " y,r, r,O,x,y,r,I,*h, r,m,r"))]
- "register_operand (operands[0], CCmode)
- || register_operand (operands[1], CCmode)"
+(define_mode_iterator CC_any [CC CCUNS CCEQ CCFP])
+
+(define_insn "*movcc_<mode>"
+ [(set (match_operand:CC_any 0 "nonimmediate_operand"
+ "=y,x,?y,y,r,r,r,r, r,*c*l,r,m")
+ (match_operand:CC_any 1 "general_operand"
+ " y,r, r,O,x,y,r,I,*h, r,m,r"))]
+ "register_operand (operands[0], <MODE>mode)
+ || register_operand (operands[1], <MODE>mode)"
"@
mcrf %0,%1
mtcrf 128,%1