public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Disqualifying instructions for branch delay slot scheduling
@ 2004-03-26  4:29 Barry Wealand
  2004-03-26 15:28 ` Eric Botcazou
  0 siblings, 1 reply; 2+ messages in thread
From: Barry Wealand @ 2004-03-26  4:29 UTC (permalink / raw)
  To: gcc; +Cc: Kancler, Cliff, reed, Katyryniuk, Mike, Steigmeyer, Bruce


Hello -

We're working with a custom MIPS-like architecture, and have discovered
a few bugs in our hardware design.  One way that we can work around
these bugs is to modify our GCC toolchain so that it places NOPs after
or before a small number of specific instructions.  The approach of
favor seems to be to modify the assembler to change these specific
instructions into two-instruction macros, with the NOP placed before or
after as appropriate.  In order for this to be completely effective,
however, we also need to be sure that the compiler never places these
instructions into branch (or jump, or call) delay slots.

Can anybody quickly summarize how one would go about disqualifying
certain specific instructions for branch delay slot scheduling?  Any
guidance at all would be greatly appreciated.

Barry Wealand
barry.wealand@lmco.com


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Disqualifying instructions for branch delay slot scheduling
  2004-03-26  4:29 Disqualifying instructions for branch delay slot scheduling Barry Wealand
@ 2004-03-26 15:28 ` Eric Botcazou
  0 siblings, 0 replies; 2+ messages in thread
From: Eric Botcazou @ 2004-03-26 15:28 UTC (permalink / raw)
  To: Barry Wealand
  Cc: gcc, Kancler, Cliff, reed, Katyryniuk, Mike, Steigmeyer, Bruce

> Can anybody quickly summarize how one would go about disqualifying
> certain specific instructions for branch delay slot scheduling?  Any
> guidance at all would be greatly appreciated.

You can define a new attribute in the .md file with define_attr, defaulting 
to 'false', and set it to 'true' for the problematic instructions.  Then 
test it in the DELAY-N attribute tests of the define_delay patterns.

-- 
Eric Botcazou

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-03-26  6:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-03-26  4:29 Disqualifying instructions for branch delay slot scheduling Barry Wealand
2004-03-26 15:28 ` Eric Botcazou

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).