[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: The no goto religion
From:       Henrique Pinto <henrique.pinto () kdemail ! net>
Date:       2007-08-02 22:16:40
Message-ID: 200708021916.40407.henrique.pinto () kdemail ! net
[Download RAW message or body]

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 <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic