Displaying 2 results from an estimated 2 matches for "getconstantvregv".
Did you mean:
getconstantvregval
2019 May 20
2
GlobalISel: Very limited pattern matching?
...> You’re doing the right thing.
> That’s a known limitation that we’ve discussed in https://reviews.llvm.org/D59227 <https://reviews.llvm.org/D59227> but we didn’t really reach a conclusion back them.
> Short term, I believe you’re right, we should patch up the GISel emitter to use getConstantVRegVal instead of looking directly for G_CONSTANT.
That's not as easy as you make it sound :-) but let's suppose we can recognize enough of the underlying pattern to be able to use getConstantVRegVal() instead of needing to do a direct translation of the SelectionDAG pattern. In the SelectionDA...
2019 May 20
3
GlobalISel: Very limited pattern matching?
...ngs actually work.
Namely, any ImmLeaf pattern will fail to match if there is a
(TRUNC/ZEXT/SEXT) applied to the constant operand, all of which are
commonly created through Legalization. This is due to G_CONSTANT being
explicitly looked for by the tablegened code, rather than code that
makes use of getConstantVRegVal.
Is there supposed to be a constant folding pass before Instruction
Selection? CSE does not fold past unaries applied to operands, I'm
surely missing a pass somewhere...
Thanks,
- Alex Davies
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llv...