+2018-04-07 Chung-Ju Wu <jasonwucj@gmail.com>
+
+ * config/nds32/nds32.c (nds32_legitimate_index_p): Modify condition
+ for load/store addressing form.
+ (nds32_print_operand_address): Likewise.
+
2018-04-06 Eric Botcazou <ebotcazou@adacore.com>
PR target/85196
int multiplier;
multiplier = INTVAL (op1);
- /* We only allow (mult reg const_int_1)
- or (mult reg const_int_2) or (mult reg const_int_4). */
- if (multiplier != 1 && multiplier != 2 && multiplier != 4)
+ /* We only allow (mult reg const_int_1), (mult reg const_int_2),
+ (mult reg const_int_4) or (mult reg const_int_8). */
+ if (multiplier != 1 && multiplier != 2
+ && multiplier != 4 && multiplier != 8)
return false;
regno = REGNO (op0);
sv = INTVAL (op1);
/* We only allow (ashift reg const_int_0)
- or (ashift reg const_int_1) or (ashift reg const_int_2). */
- if (sv != 0 && sv != 1 && sv !=2)
+ or (ashift reg const_int_1) or (ashift reg const_int_2) or
+ (ashift reg const_int_3). */
+ if (sv != 0 && sv != 1 && sv !=2 && sv != 3)
return false;
regno = REGNO (op0);
sv = 1;
else if (INTVAL (XEXP (op0, 1)) == 4)
sv = 2;
+ else if (INTVAL (XEXP (op0, 1)) == 8)
+ sv = 3;
else
gcc_unreachable ();