[LLVMdev] MI bundle liveness attributes

Krzysztof Parzyszek kparzysz at codeaurora.org
Fri Aug 31 10:27:07 PDT 2012


On 8/9/2012 2:25 PM, Sergei Larin wrote:
>
>    Interesting point. This fake use would also need to be probably marked as
> isUndef(), but I could not foresee all possible corner cases from that.

It's not undef, it's exactly %R0.  If the condition fails, R0 keeps its 
value.


> Could it be overly conservative? Would I lose the ability of some sort
> "predicate value propagation" that I seem to gain from introduction of an
> explicit flag? Can someone comment?

The predicate is the register P0, possibly with a negation.  As long as 
P0 doesn't change between two instructions, you know that the predicate 
hasn't changed.  The existing infrastructure doesn't force us to lose 
this information, so I believe that adding the cond-use flag is unnecessary.


-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, 
hosted by The Linux Foundation



More information about the llvm-dev mailing list