<div dir="ltr">Hello,<div><br></div><div>I have a problem with pattern matching on intrinsics.</div><div>I have following code in IntrinsicsX86.td:</div><div><br></div><div>```</div><div><div>let TargetPrefix = "x86" in {  // All intrinsics start with "llvm.x86.".</div><div>  def int_x86_mpx_bndmk:</div><div>        Intrinsic<[llvm_x86bnd_ty], [llvm_ptr_ty, llvm_i64_ty], []>;</div></div><div>}</div><div>```</div><div><br></div><div>And following instruction that is generated when @llvm.x86.mpx.bndmk is used in code:</div><div><br></div><div><br></div><div><div>```</div><div>let isPseudo = 1 in </div><div>let usesCustomInserter = 1 in</div><div>  def BNDMK64rm_Int: PseudoI<(outs BNDR:$dst), (ins i64mem:$src, GR64:$shift), </div><div>  [(set BNDR:$dst, (int_x86_mpx_bndmk addr:$src, i64:$shift))]>;</div></div><div>```</div><div><br></div><div>Everything works completely fine, intrinsic gets matched. But if I add "IntrNoMem" attribute to instrinsic like:</div><div><br></div><div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">```</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><div>let TargetPrefix = "x86" in {  // All intrinsics start with "llvm.x86.".</div><div>  def int_x86_mpx_bndmk:</div><div>        Intrinsic<[llvm_x86bnd_ty], [llvm_ptr_ty, llvm_i64_ty], [IntrNoMem]>;</div></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">}</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">```</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">All of sudden pattern doesn't get matched. How should i redefine the pattern so it gets matched with this attribute?</div><br></div></div>