Use the HOST_WIDE_INT_1U macro instead of literal 1 when constructing constants for RTL.
gcc/ChangeLog: * config/pru/pru.md (lshrdi3): Use HOST_WIDE_INT_1U macro. (ashldi3): Ditto. Signed-off-by: Dimitar Dimitrov <dimi...@dinux.eu> --- gcc/config/pru/pru.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gcc/config/pru/pru.md b/gcc/config/pru/pru.md index 2ceea2e7b1c..db7a5af6875 100644 --- a/gcc/config/pru/pru.md +++ b/gcc/config/pru/pru.md @@ -870,7 +870,8 @@ (define_expand "lshrdi3" JUMP_LABEL (j) = skip_hiset_label; LABEL_NUSES (skip_hiset_label)++; - emit_insn (gen_iorsi3 (dst_lo, dst_lo, GEN_INT (1 << 31))); + const HOST_WIDE_INT bit31_mask = HOST_WIDE_INT_1U << 31; + emit_insn (gen_iorsi3 (dst_lo, dst_lo, GEN_INT (bit31_mask))); emit_label (skip_hiset_label); emit_insn (gen_rtx_SET (dst_hi, gen_rtx_LSHIFTRT (SImode, src_hi, const1_rtx))); @@ -959,7 +960,8 @@ (define_expand "ashldi3" JUMP_LABEL (j) = skip_hiset_label; LABEL_NUSES (skip_hiset_label)++; - emit_insn (gen_iorsi3 (dst_hi, dst_hi, GEN_INT (1 << 0))); + const HOST_WIDE_INT bit0_mask = HOST_WIDE_INT_1U << 0; + emit_insn (gen_iorsi3 (dst_hi, dst_hi, GEN_INT (bit0_mask))); emit_label (skip_hiset_label); emit_insn (gen_rtx_SET (dst_lo, gen_rtx_ASHIFT (SImode, src_lo, const1_rtx))); -- 2.45.0