This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Suppress handling dead code via conditional execution on special machines
- To: gcc-patches at gcc dot gnu dot org
- Subject: Suppress handling dead code via conditional execution on special machines
- From: Michael Meissner <meissner at redhat dot com>
- Date: Mon, 12 Jun 2000 22:27:54 -0400
This patch goes along with my previous patch that adds the
IFCVT_MODIFY macros. Otherwise IFCVT_MODIFY_INSN is called without
the initial and final macros being done. It would be better if this
code were reorganized so that if the dead code can't be handled via
conditional execution (due to having instructions that don't have
conditional execution formats), it would fall back to the non
conditional execution else block.
2000-06-12 Michael Meissner <meissner@redhat.com>
* ifcvt.c (dead_or_predicable): Don't do conditional execution
path if the machine needs extra support to do conditional
execution.
*** gcc/ifcvt.c.~1~ Mon Jun 12 22:16:20 2000
--- gcc/ifcvt.c Mon Jun 12 22:21:09 2000
*************** dead_or_predicable (test_bb, merge_bb, o
*** 1865,1870 ****
--- 1865,1873 ----
end = PREV_INSN (end);
}
+ /* Disable handling dead code by conditional execution if the machine needs
+ to do anything funny with the tests, etc. */
+ #ifndef IFCVT_MODIFY_TESTS
if (HAVE_conditional_execution)
{
/* In the conditional execution case, we have things easy. We know
*************** dead_or_predicable (test_bb, merge_bb, o
*** 1896,1901 ****
--- 1899,1905 ----
earliest = jump;
}
else
+ #endif
{
/* In the non-conditional execution case, we have to verify that there
are no trapping operations, no calls, no references to memory, and
--
Michael Meissner, Cygnus Solutions, a Red Hat company.
PMB 198, 174 Littleton Road #3, Westford, Massachusetts 01886, USA
Work: meissner@redhat.com phone: +1 978-486-9304
Non-work: meissner@spectacle-pond.org fax: +1 978-692-4482