* alpha.c (final_prescan_insn): Gut, remove and transform to ...
commit18adf4f6b8263e2d96aea6e26fbe3d18fd0b1b67
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 16 Oct 1997 01:23:23 +0000 (16 01:23 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 16 Oct 1997 01:23:23 +0000 (16 01:23 +0000)
tree3c5866969f731e54eba0b87c2304d5ce11eb5d0b
parent3680ac41485c87245ddef452feecaa8a4e698238
    * alpha.c (final_prescan_insn): Gut, remove and transform to ...
        (alpha_handle_trap_shadows): ... a new function.  Handle the entire
        function in one go.  Emit RTL for trapb, instead of printf directly.
        (alpha_reorg): New function.  Call alpha_handle_trap_shadows.
        (trap_pending): Kill global variable.
        (output_epilog): Don't call final_prescan_insn.
        (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
        * alpha.h (FINAL_PRESCAN_INSN): Remove.
        (MACHINE_DEPENENT_REORG): Define.
        * alpha.md (jsr patterns with trapb): Stupid and useless.  Kill.
        (trapb): New insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@15917 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/alpha/alpha.c
gcc/config/alpha/alpha.h
gcc/config/alpha/alpha.md