public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* predicated instructions in ARM
@ 2002-05-02 14:04 Arvind Krishnaswamy
  2002-05-02 14:54 ` Richard Henderson
  2002-05-03  2:22 ` Richard Earnshaw
  0 siblings, 2 replies; 3+ messages in thread
From: Arvind Krishnaswamy @ 2002-05-02 14:04 UTC (permalink / raw)
  To: gcc

The following is a sequence of predicated instructions being generated by
gcc for the ARM:

	...
	...
	rsble r3, r6, #0
	movle r4, r3, asl #19
	movle r4, r4, lsr #19
.L11:
	movgt r3, r6, asl #16
	movgt r4, r3, asr #16
.L12:
	...
	...

So for a given condition either the 3 instructions before .L11 will become
no-ops (if gt is true) else the 2 instructions between .L11 and .L12 will
be no-ops. Isn't it better to just use branches to the appropriate code
since branches will introduce just 1 stall in the pipeline?

One more question. In the above code, control is never transferred to .L11
or .L12. Why are these labels introduced?

Also where can find the arm and thumb specific code under the gcc source tree?

Thanks,
-Arvind

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

end of thread, other threads:[~2002-05-03  9:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-05-02 14:04 predicated instructions in ARM Arvind Krishnaswamy
2002-05-02 14:54 ` Richard Henderson
2002-05-03  2:22 ` Richard Earnshaw

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).