On Thu 02 Aug 2007 18:22, Thiago Macieira wrote: > The instructions marked (p1) are executed only if p1=1 -- that is, if the > cmp.eq operation succeeded. Same for (p2) and in this case p1 = !p2, so > only one of the last two instructions are executed. Yes, I really meant predication. Thanks Thiago! IA-64 is notable because all instructions are predicated. For instructions that really should be executed all the time, there's a predicate register hardwired to 1. There's also a high number of predicate register (64 IIRC). Wikipedia has a page on predication [1], but Thiago's explanation is better IMO. I agree it's no free lunch, as the instructions still have to be in the pipeline anyway. But for some code paths the difference can be really large. [1] http://en.wikipedia.org/wiki/Branch_predication -- Henrique Pinto henrique.pinto@kdemail.net >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<