* config/mips/mips.c (mips_print_operand): Remove 'y' operand code.
* config/mips/mips.md (<GPR:d>lsa): Rewrite with shift operator.
* config/mips/predicates.md (const_immlsa_operand): Remove log call.
From-SVN: r223101
+2015-05-12 Steve Ellcey <sellcey@imgtec.com>
+
+ * config/mips/mips.c (mips_print_operand): Remove 'y' operand code.
+ * config/mips/mips.md (<GPR:d>lsa): Rewrite with shift operator.
+ * config/mips/predicates.md (const_immlsa_operand): Remove log call.
+
2015-05-12 David Malcolm <dmalcolm@redhat.com>
* doc/invoke.texi (Warning Options): Add -Wmisleading-indentation.
'x' Print the low 16 bits of CONST_INT OP in hexadecimal format.
'd' Print CONST_INT OP in decimal.
'm' Print one less than CONST_INT OP in decimal.
- 'y' Print exact log2 of CONST_INT OP in decimal.
'h' Print the high-part relocation associated with OP, after stripping
any outermost HIGH.
'R' Print the low-part relocation associated with OP.
output_operand_lossage ("invalid use of '%%%c'", letter);
break;
- case 'y':
- if (CONST_INT_P (op))
- {
- int val = exact_log2 (INTVAL (op));
- if (val != -1)
- fprintf (file, "%d", val);
- else
- output_operand_lossage ("invalid use of '%%%c'", letter);
- }
- else
- output_operand_lossage ("invalid use of '%%%c'", letter);
- break;
-
case 'h':
if (code == HIGH)
op = XEXP (op, 0);
(define_insn "<GPR:d>lsa"
[(set (match_operand:GPR 0 "register_operand" "=d")
- (plus:GPR (mult:GPR (match_operand:GPR 1 "register_operand" "d")
- (match_operand 2 "const_immlsa_operand" ""))
+ (plus:GPR (ashift:GPR (match_operand:GPR 1 "register_operand" "d")
+ (match_operand 2 "const_immlsa_operand" ""))
(match_operand:GPR 3 "register_operand" "d")))]
"ISA_HAS_<GPR:D>LSA"
- "<GPR:d>lsa\t%0,%1,%3,%y2"
+ "<GPR:d>lsa\t%0,%1,%3,%2"
[(set_attr "type" "arith")
(set_attr "mode" "<GPR:MODE>")])
(define_predicate "const_immlsa_operand"
(and (match_code "const_int")
- (match_test "IN_RANGE (exact_log2 (INTVAL (op)), 1, 4)")))
+ (match_test "IN_RANGE (INTVAL (op), 1, 4)")))
(define_predicate "const_uimm6_operand"
(and (match_code "const_int")