[llvm-dev] New register class and patterns
Rail Shafigulin via llvm-dev
llvm-dev at lists.llvm.org
Wed Feb 3 14:48:29 PST 2016
On Tue, Feb 2, 2016 at 8:42 PM, Matt Arsenault <arsenm2 at gmail.com> wrote:
> On Feb 2, 2016, at 16:52, Rail Shafigulin <rail at esenciatech.com> wrote:
> def SDT_EscalaSetFlag : SDTypeProfile<0, 3, [SDTCisSameAs<0, 1>]>;
> I think for setting an implicit register, you still need to have 1 result
> If you look at SDTX86CmpPTest, I think this is similar to what you are
> trying to do.
def SDTX86CmpPTest : SDTypeProfile<1, 2, [SDTCisVT<0, i32>,
This is confusing to me. This tells me that there is 1 result but and 2
operands. But then it says that operands 2 and 1 are of the same type,
SDTCisSameAs<2, 1>. Given that operand numbering starts at 0, how can there
be operands 2 and 1?
Based on the previous answer my understanding is that LLVM is complaining
because it doesn't know what register to use. What is unclear to me is why?
I already had 2 register classes before and everything was working. All
I've done is that I had added an extra class. After that LLVM started to
complain. And this is what puzzles me.
As usual, any insight into the issue and any help is greatly appreciated.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev