- User Since
- Aug 19 2013, 3:30 PM (196 w, 1 d)
Mon, May 22
Fri, May 19
Thu, May 18
Wed, May 17
Tue, May 16
Is it possible to add a test case for this? It seems that a test where the last instruction has a DILocation should trigger it.
Fri, May 12
One nit: We could avoid introducing the Optional<> by testing for LLT.isValid() instead of testing for whether the Optional has a value
Thu, May 11
Wed, May 10
I haven't looked too closely at the output of the macro since I don't know what it should be but it looks like the issues I raised earlier in the review are no longer there. I just have one nit about nextReg().
Tue, May 9
I believe PrintTo will be valid since it's occurs after the instruction we're working on. If we're folding multiple instructions into one we'll be following the operands backwards, away from PrintTo.
Thu, May 4
Hoist out the checks for intrinsic id's so that they are only importable when
found in the place we expect them to be.
Wed, May 3
Tue, May 2
Thanks for doing this. It will allow me to add a test for the predicates related to the optsize attribute.
Sat, Apr 29
Fri, Apr 28
In that case I'll commit the previous version of this patch tomorrow and post the immediate support for a separate review. The PR can then come out of that review. Thanks
Add support for patterns consisting solely of an IntInit* and use this to add a
test case to the rule predicate support... almost.
Thu, Apr 27
Moved ForCodeSize and similar to the Subtarget.
I'm having trouble improving the test case since the function-level predicates don't show up in any importable rules yet. I'll see if I can uncover one
Wed, Apr 26
Tue, Apr 25
Thanks. Hopefully it won't break very often.
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.
Mon, Apr 24
Sorry for being slow to get back to this one. I've been prioritising the other patches.
Apr 23 2017
Apr 22 2017
Apr 21 2017
Apr 20 2017
Rebase and fix nits
One thing to mention for this patch is that G_ICMP and G_FCMP are not included due to a difference in operand order between G_ICMP/G_FCMP in GlobalISel and setcc in SelectionDAG (predicate, lhs, rhs vs lhs, rhs, predicate). I can support those in a later patch by adding more information to GINodeEquiv or by changing G_ICMP/G_FCMP. I don't see a particularly strong argument either way on that point but I'm expecting to need to convert the predicate operand too so I'm leaning towards making GINodeEquiv more descriptive.