Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Oct 2001 11:58:00 +0100 (BST)
From:      Doug Rabson <dfr@nlsystems.com>
To:        Marcel Moolenaar <marcel@xcllnt.net>
Cc:        Peter Wemm <peter@wemm.org>, <ia64@FreeBSD.ORG>
Subject:   Re: Hazards [was: Re: cvs commit: src/sys/ia64/ia64 sal.c]
Message-ID:  <20011021115633.U549-100000@salmon.nlsystems.com>
In-Reply-To: <20011021020106.A540@dhcp01.pn.xcllnt.net>

next in thread | previous in thread | raw e-mail | index | archive | help

On Sun, 21 Oct 2001, Marcel Moolenaar wrote:

> On Sun, Oct 21, 2001 at 01:16:52AM -0700, Peter Wemm wrote:
> > >
> > > Which leaves:
> > > HAZARD (certain) WAW Dependency between 400000000003e500.0 and 400000000003e5
> >     10.2 on p6
> > >
> > > According to ski this gives:
> > >    400000000003e500       cmp.ge           p6=r0,r33
> >             MIB
> > >                           nop.i            0x0
> > >  !                  (p6)  br.ret.spnt.few  b0
> > >    400000000003e510       nop.m            0x0
> >             MII
> > >                           mov.i            r14=ar.lc
> > >                           cmp.ltu          p6=17,r33
> > >
> > > This is clearly a hazard.
> >
> > Is it?  The ia64 manual I have suggests that this special case is
> > allowed..  volume 1, section 3.4.1..  It talks about how branches
> > that use predicates set in the same bundle are allowed..  Speculation
> > deals with it.  But I get a brain implosion when reading that stuff. :-)
>
> :-)
>
> It's not the branch that's causing the hazard. It's the second compare
> (cmp.ltu) that's causing a hazard with the first compare (cmp.ge).
> If the first compare yields false, the branch is not taken and the
> second compare will define p6 in the same instruction group.

Aah, I see the problem now. What is the function name which contains this
code?

-- 
Doug Rabson				Mail:  dfr@nlsystems.com
					Phone: +44 20 8348 6160



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ia64" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011021115633.U549-100000>