[PATCH, RFC]: Next stage1, refactoring: propagating rtx subclasses

Mikhail Maltsev maltsevm@gmail.com
Mon May 4 20:32:00 GMT 2015


(the original message was bounced by the mailing list, resending with
compressed attachment)

On 30.04.2015 8:00, Jeff Law wrote:
> 
> Can you please check the changes to do_jump_1, the indention looked 
> weird in the patch.  If it's correct, just say so.
It is ok. Probably that's because the surrounding code is indented with
spaces.

> The definition of PEEP2_EOB looks wrong.  I don't see how you can
> safely cast pc_rtx to an rtx_insn * since it's an RTX rather than rtx
> chain object.  Maybe you're getting away with it because it's used as
> marker. But it still feels wrong.
Yes, FWIW, it is only needed for assertions in peep2_regno_dead_p and
peep2_reg_dead_p which check it against NULL (they are intended to
verify that live_before field in peep2_insn_data struct is valid). At
least, when I removed the assertions and changed PEEP2_EOB to NULL (as
an experiment), the testsuite passed without regressions.

> You'd probably be better off creating a unique rtx_insn * object and
> using that as the marker.
OK. Fixed the patch. Rebased and tested on x86_64-linux (fortunately, it
did not conflict with Trevor's series of rtx_insn-related patches).

I'm trying to continue and the next patch (peep_split.patch,
peep_split.cl) is addressing the same task in some of the generated code
(namely, gen_peephole2_* and gen_split_* series of functions).

> If you're going to continue this work, you should probably get
> write-after-approval access so that you can commit your own approved
> changes.
Is it OK to mention you as a maintainer who can approve my request for
write access?

-- 
Regards,
    Mikhail Maltsev

-------------- next part --------------
A non-text attachment was scrubbed...
Name: as_insn.tar.gz
Type: application/x-gzip
Size: 28642 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20150504/9ae5a127/attachment.bin>


More information about the Gcc-patches mailing list