This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, alpha]: Introduce handle_trap_shadows and align_insns passes


On Mon, Jun 30, 2014 at 9:59 PM, Uros Bizjak <ubizjak@gmail.com> wrote:

> After fixing _.barriers and _.eh_range passes w.r.t. CALL_ARG_LOCATION
> notes, we can finaly move handling of trap shadows (PR 56858) and insn
> alignments into their own passes.
>
> Additionally, the patch skips handling of BARRIERs in
> alpha_pad_function_end, since CALL_ARG_LOCATION notes are not split
> away from their call insn anymore.
>
> 2014-06-30  Uros Bizjak  <ubizjak@gmail.com>
>
>     PR target/56858
>     * config/alpha/alpha.c: Include tree-pass.h, context.h
>     and pass_manager.h.
>     (pass_data_handle_trap_shadows): New pass.
>     (pass_handle_trap_shadows::gate): New pass gate function.
>     (make_pass_handle_trap_shadows): New function.
>     (rest_of_handle_trap_shadows): Ditto.
>
>     (alpha_align_insns_1): Rename from alpha_align_insns.
>     (pass_data_align_insns): New pass.
>     (pass_align_insns::gate): New pass gate function.
>     (make_pass_aling_insns): New function.
>     (rest_of_align_insns): Ditto.
>     (alpha_align_insns): Ditto.
>
>     (alpha_option_override): Declare handle_trap_shadows info
>     and align_insns_info.  Register handle_trap_shadows and align_insns
>     passes here.
>     (alpha_reorg): Do not call alpha_trap_shadows and
>     alpha_align_insn from here.
>
>     (alpha_pad_function_end): Do not skip BARRIERs.

I went agead and installed the patch on mainline SVN. The patch just
fixes existing approach and doesn't introduce new functionality.

Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]