+2015-09-15 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha.c (alpha_expand_block_clear): Use
+ HOST_WIDE_INT_M1U instead of ~(HOST_WIDE_INT)0 when shifting.
+
2015-09-15 Jeff Law <law@redhat.com>
PR tree-optimization/47679
mem = adjust_address (orig_dst, mode, ofs - inv_alignofs);
set_mem_alias_set (mem, 0);
- mask = ~(~(HOST_WIDE_INT)0 << (inv_alignofs * 8));
+ mask = ~(HOST_WIDE_INT_M1U << (inv_alignofs * 8));
if (bytes < alignofs)
{
- mask |= ~(HOST_WIDE_INT)0 << ((inv_alignofs + bytes) * 8);
+ mask |= HOST_WIDE_INT_M1U << ((inv_alignofs + bytes) * 8);
ofs += bytes;
bytes = 0;
}
mem = adjust_address (orig_dst, DImode, ofs);
set_mem_alias_set (mem, 0);
- mask = ~(HOST_WIDE_INT)0 << (bytes * 8);
+ mask = HOST_WIDE_INT_M1U << (bytes * 8);
tmp = expand_binop (DImode, and_optab, mem, GEN_INT (mask),
NULL_RTX, 1, OPTAB_WIDEN);
mem = adjust_address (orig_dst, SImode, ofs);
set_mem_alias_set (mem, 0);
- mask = ~(HOST_WIDE_INT)0 << (bytes * 8);
+ mask = HOST_WIDE_INT_M1U << (bytes * 8);
tmp = expand_binop (SImode, and_optab, mem, GEN_INT (mask),
NULL_RTX, 1, OPTAB_WIDEN);