IAS enters predicate relations into a database that is used to identify false reports. IAS deletes predicate relations from this database in the following situations:
write to predicate register
Predicate relations are deleted from the database
when one of the following instructions
writes to the predicate related to these relations:
- compare instruction
- move to pr instruction if the mask designates the predicate
- move to pr-rot
instruction (write to the rotating predicates only). If bit i in the mask
is zero, delete all the imply relations where Pi is the target of
the implies. If bit i in the
mask is one, delete all the imply relations where Pi is the source
of the implies, and all
the mutex relations related to Pi.
- modulo-scheduling loop branch instructions
such as br.ctop, br.cloop,
br.wtop,
and br.wtop write to all the rotating
predicates
user annotation
In the following example, the user annotation
pred.rel deletes predicate relations.
All
predicate relations regarding predicates p1,
p2, and p3
are deleted from the database.
.pred.rel “clear“, p1, p2, p3