[llvm] r176136 - Have a way for a target to opt-out of target-independent fast isel
Evan Cheng
evan.cheng at apple.com
Thu Feb 28 08:50:55 PST 2013
On Feb 28, 2013, at 8:38 AM, Eli Bendersky <eliben at google.com> wrote:
> On Tue, Feb 26, 2013 at 8:37 PM, Michael Ilseman <milseman at apple.com> wrote:
>>
>> On Feb 26, 2013, at 3:30 PM, Eli Bendersky <eliben at google.com> wrote:
>>
>>> Can you provide more background for this change? Is it being done for
>>> the sake of debugging? What are the intended use cases?
>>
>> Sure! Debugging can definitely be improved by this, but this also gives targets more flexibility. Targets can fast-isel better code with more coverage in some situations. For example, SelectOperator(), even when it returns false, has side-effects and can schedule IR instructions to be fast-iselled that otherwise never would. This becomes particularly unfortunate when such instructions trigger the DAG slow-path.
>
> Thanks for the explanation Michael. Even though you reverted the
> change, I want to ask something more general. Your change adds a
> methods that's very generally called but only used in one specific
> place. If we simply want to prioritize target-specific fast isel over
> target-independent fast isel (which sounds like a good idea),
> shouldn't more general hooks be added?
>
One possibly clean solution is just always attempt target-specific fast isel first. However, it's possible that would slow down the targets which mainly rely on generic fast-isel.
Evan
> Eli
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list