This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [SH] PR 53976 - Add RTL pass to eliminate clrt, sett insns
- From: Oleg Endo <oleg dot endo at t-online dot de>
- To: Steven Bosscher <stevenb dot gcc at gmail dot com>
- Cc: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 21 Nov 2013 13:29:15 +0100
- Subject: Re: [SH] PR 53976 - Add RTL pass to eliminate clrt, sett insns
- Authentication-results: sourceware.org; auth=none
- References: <1384975779 dot 2438 dot 119 dot camel at yam-132-YW-E178-FTW> <CABu31nPbcThrjzPN49E=VO3BrZjz5noaE95gjj-vx=0ikPj6+g at mail dot gmail dot com> <1385032930 dot 2438 dot 209 dot camel at yam-132-YW-E178-FTW>
On Thu, 2013-11-21 at 12:22 +0100, Oleg Endo wrote:
> Sorry for the confusion. Initially I had it inserted right before
> machine dependent reorg, at which point I was getting nullptr from
> BLOCK_FOR_INSN all over the place. So not using it was the fix.
> However, only after I've noticed that SH's machine dependent reorg
> leaves the basic block structure in a 'broken' state (PR 59189) and thus
> I moved the pass before sched2.
> I'll try using BLOCK_FOR_INSN again.
... which won't work, since it sometimes also adds "unknown" ccreg_value
entries where insn is NULL_RTX, but bb is valid. I'd like to keep it
that way. It will be useful when moving sett / clrt insns around
between basic blocks. I'll fix the confusing comment.
Cheers,
Oleg