Recent commit causes incorrect compilation of boehm gc.
Marcus Shawcroft
marcus.shawcroft@arm.com
Mon Oct 11 13:28:00 GMT 2010
Hi,
The commit below introduces a miss compilation of boehm gc for ARM target
which I have raised in bugzilla
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45966
The issue appears to be that the combiner deletes an instruction, but has
not correctly replaced a use of the instructions output.
Thanks
/Marcus
2010-08-19 Bernd Schmidt <bernds@codesourcery.com>
PR target/42172
* combine.c (combine_validate_cost): New arg I0. All callers
changed.
Take its cost into account if nonnull.
(insn_a_feeds_b): New static function.
(combine_instructions): Look for four-insn combinations.
(can_combine_p): New args PRED2, SUCC2. All callers changed. Take
them into account when computing all_adjacent and looking for other
uses.
(combinable_i3pat): New args I0DEST, I0_NOT_IN_SRC. All callers
changed. Treat them like I1DEST and I1_NOT_IN_SRC.
(try_combine): New arg I0. Handle four-insn combinations.
(distribute_notes): New arg ELIM_I0. All callers changed. Treat it
like ELIM_I1.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45966
More information about the Gcc-patches
mailing list