This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Dealing with NOP instructions
- From: Dorit Naishlos <DORIT at il dot ibm dot com>
- To: Hsin-Hsien Wu <sinsen dot wu at msa dot hinet dot net>
- Cc: gcc at gcc dot gnu dot org, Jim Wilson <wilson at specifixinc dot com>
- Date: Thu, 1 Jul 2004 11:18:59 +0300
- Subject: Re: Dealing with NOP instructions
> > Does any one know about how gcc instruction scheduler deals
> > with the nop operation?
> > What would happen if there is a pipeline stall?
>
> The scheduler doesn't inset nops when it finds a pipeline stall, if
> that is the question you are asking. If you need this, you have to do >
it manually in machine dependent reorg.
or in the sched_finish target hook, as in -
http://gcc.gnu.org/ml/gcc-patches/2003-10/msg01702.html :
"scheme 1 ("pad"): Scan the group boundaries that the scheduler had
recorded, and pad with nops any dispatch group which has vacant issue
slots, in order to force the scheduler's grouping on the processor
dispatcher."
(we rely on the TImode markings to find the "group boundaries that the
scheduler had recorded").
dorit
Jim Wilson
<wilson@specifixi To: Hsin-Hsien Wu <sinsen.wu@msa.hinet.net>
nc.com> cc: gcc@gcc.gnu.org
Sent by: Subject: Re: Dealing with NOP instructions
gcc-owner@gcc.gnu
.org
01/07/2004 05:23
Hsin-Hsien Wu wrote:
> Does any one know about how gcc instruction scheduler deals with
the
> nop operation?
> What would happen if there is a pipeline stall?
The scheduler doesn't inset nops when it finds a pipeline stall, if that
is the question you are asking. If you need this, you have to do it
manually in machine dependent reorg.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com