[PATCH] D32275: [globalisel][tablegen] Add several GINodeEquiv's for operators that do not require additional support.

Daniel Sanders via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 25 03:58:08 PDT 2017


dsanders added a comment.

In https://reviews.llvm.org/D32275#736557, @rovka wrote:

> In https://reviews.llvm.org/D32275#736537, @dsanders wrote:
>
> > I decided to have a look at code coverage differences before committing this. This patch made no difference to the code coverage. On closer inspection it turns out beginFunction() isn't being executed so no rules with rule predicates can match. I'll take a look at this, maybe something from the rule-predicates patch didn't make it into the final commit.
>
>
> I literally just ran into this while trying to enable TableGen for ARM. I'm wondering if it's really a good idea to have beginFunction in the first place. There's a related FIXME in TargetSubtargetInfo.h around getInstructionSelector. Maybe we should have an instruction selector per MachineFunction?


I'm having another go at that approach at the moment. Last time I had some trouble with it using the wrong instruction selector during instruction selection but hopefully I'll figure that one out this time. The tricky predicate is NotWin64WithoutFP from X86 which needs access to the MachineFunction that getSubtargetImpl() doesn't have.


https://reviews.llvm.org/D32275





More information about the llvm-commits mailing list