> > And this is just recent too.
> >
> > Anyways here is the reduced testcase:
> > long long
> > __fixunsdfdi (unsigned hi, unsigned lo)
> > {
> > return ((unsigned long long) hi << (32)) | lo;
> > }
>
> flow2 is where the diference comes in:
> I don't understand why it is not being split at all.
Only the trunk is broken so that leaves the following patches which could have
caused it:
2005-11-19 Richard Guenther <[EMAIL PROTECTED]>
* fold-const.c (fold_indirect_ref_1): Make sure we fold
ARRAY_REFs of constant strings.
2005-11-19 Joseph S. Myers <[EMAIL PROTECTED]>
* combine.c (make_compound_operation): Swap operands of
commutative operation if necessary before returning.
2005-11-19 Richard Guenther <[EMAIL PROTECTED]>
PR middle-end/23294
* fold-const.c (fold_plusminus_mult_expr): New function.
(fold_binary): Use to canonicalize PLUS_EXPR and MINUS_EXPR
cases, remove now unnecessary code.
2005-11-19 Paolo Bonzini <[EMAIL PROTECTED]>
* gensupport.c (old_preds): Rename to std_preds, add special field.
(struct old_pred_table): Rename to struct std_pred_table, add special
field.
(NUM_KNOWN_OLD_PREDS): Rename to NUM_KNOWN_STD_PREDS.
(NUM_OLD_SPECIAL_MODE_PREDS): Remove.
(init_predicate_table): Adjust, and set along the way whether a
predicate is special.
--------
I am thinking it is the last one but I have not gone through a hunt yet to make
sure
but I will do so soon.
-- Pinski