Commit 0ca26aa8 authored by Matthias Braun's avatar Matthias Braun
Browse files

fix bad comparison

! binds tighter than <
parent 5a316806
......@@ -139,11 +139,10 @@ static void dca_transfer(ir_node *irn, pdeq *q)
unsigned pred_bits = get_mode_size_bits(pred_mode);
unsigned bits = get_mode_size_bits(mode);
if (pred_bits < bits
&& mode_is_signed(pred_mode)) {
if (pred_bits < bits && mode_is_signed(pred_mode)) {
/* Bits still care about the sign bit even if they
* don't fit into the smaller mode. */
if (!get_tarval_highest_bit(care) < pred_bits)
if (get_tarval_highest_bit(care) >= (int)pred_bits)
care = tarval_or(care,
tarval_shl(get_tarval_one(mode),
new_tarval_from_long(
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment