[PATCH] R600/SI: Use isProfitableToDupForIfCvt
deathsimple at vodafone.de
Tue Mar 18 11:27:36 PDT 2014
Am 18.03.2014 19:09, schrieb Tom Stellard:
> On Tue, Mar 18, 2014 at 10:21:56AM -0700, Matt Arsenault wrote:
>> On 03/18/2014 10:12 AM, Tom Stellard wrote:
>>> Are these used outside of the IfConversion pass? Because we don't use
>>> IfConversion on SI.
>> No. I assume that's because of the control flow intrinsics? I was
>> planning on trying something that would eventually remove them.
> The main reason we don't run it on SI is that no one has implemented all
> the required callbacks for predicating instructions or even the
> Insert, Remove, and Analyze Branch functions.
> I'm not sure whether or not the control flow intrinsics make it hard
> or impossible to implement these, but I am interested to hear your idea
> for removing them.
On the other hand what's the benefit for it?
One reason I've added the control flow intrinsics is that IfConversion
actually didn't seem to fit so well into how our hardware works (neither
R600 nor SI). So I'm not sure if using it for R600 is actually so
beneficial. A custom pass that replaces control pseudo control flow with
real instructions like SI uses actually seems more appropriate for the
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
More information about the llvm-commits