<div dir="ltr"><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">Hello,</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">It looks like that in the DAG matcher, the DAG has a xor with '-1' for checking a true value vector</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">for instance,</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">%cmp4.i = icmp ne <8 x i32> %6, %5<br>%7 = xor <8 x i1> %cmp4.i, <i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">[use of %7]</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">results in vector of  '-1' in the DAG. This also seems the reason why LLVM's vnot PatFrag doesn't match in this case. I've also found f</span>rom third_party/llvm/llvm-project/llvm/lib/Target/AMDGPU/SIInstructions.td:</div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span id="gmail-:hj.co" class="gmail-tL8wMe gmail-EMoHub" dir="ltr">// FIXME: The generated DAG matcher seems to have strange behavior<br>// with a 1-bit literal to match, so use a -1 for checking a true<br>// 1-bit value.</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">Which seems to reflect the same observation. Is this a bug or a feature?</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr">Thanks in advance for any explanation</span></div><div id="gmail-:hj.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><span class="gmail-tL8wMe gmail-EMoHub" dir="ltr"><br></span></div><div id="gmail-:hk.ma" class="gmail-Mu gmail-SP" style="font-family:Roboto,sans-serif;font-size:13px;line-height:16px;margin-bottom:6px;margin-left:9px;margin-right:9px;opacity:1;word-break:break-word;color:rgb(38,50,56)"><div id="gmail-:hk.at" class="gmail-xH" style="text-align:center"></div><span id="gmail-:hk.co" class="gmail-tL8wMe gmail-EMoHub" dir="ltr"></span></div></div>