<div dir="ltr">It works now after I changed it to :<div><span style="font-size:13.1999998092651px;line-height:19.7999992370605px">def: Pat<(v2i16 (build_vector i16:$src1, i16:$src2)), (OR (SLLI GPR: $src1,16), GPR:$src2>;</span><br></div><div>I guess it's because I messed up with operand type for build_vector previously. </div><div>Thanks Matt!</div></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Jul 1, 2015 at 2:25 PM Matt Arsenault <<a href="mailto:Matthew.Arsenault@amd.com">Matthew.Arsenault@amd.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">
    <div>On 07/01/2015 02:06 PM, Xiaochu Liu
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">I was trying to do a pattern matching for a rd+imm
        instruction in my own backend.
        <div>It looks something like:</div>
        <div>def: Pat<build_vector v2i16:$src1, v2i16:$src2, (OR
          (SLLI GPR: $src1,16), GPR:$src2>;</div>
        <div>OR takes two i32 in registers and SLLI takes one i32 in
          registers and an immediate.</div>
        <div><br>
        </div>
        <div>But the immediate '16' does not work here and I tried
          different ways. May I know if any of you have any idea how to
          bake an immediate value (16) into the tablegen?</div>
        <div><br>
        </div>
        <br>
      </div>
    </blockquote>
    <br></div><div text="#000000" bgcolor="#FFFFFF">
    How specifically doesn't it work / what is the error? What version
    of LLVM are you using?How are SLLI's operands defined?<br>
  </div>

</blockquote></div>