[PATCH] D73171: [VE] setcc isel patterns

Simon Moll via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 22 06:24:09 PST 2020


simoll planned changes to this revision.
simoll marked 4 inline comments as done.
simoll added inline comments.


================
Comment at: llvm/lib/Target/VE/VEInstrInfo.td:50-58
+def CCUIOp : PatLeaf<(cond), [{
+  switch (N->get()) {
+  default:         return true;
+  case ISD::SETLT:
+  case ISD::SETLE:
+  case ISD::SETGT:
+  case ISD::SETGE: return false;
----------------
arsenm wrote:
> You can achieve this with something like:
> def COND_OEQ : PatFrags<(ops), [(OtherVT SETOEQ), (OtherVT SETEQ)]>;
> 
> which will also work with the GlobalISel emitter
If we use PatFrags here TableGen will crash when a CCUIOp node is named (as in the patterns below). TableGen asserts that named nodes have only one tree.


================
Comment at: llvm/test/CodeGen/VE/setcc.ll:11
+; CHECK-NEXT:    or %s11, 0, %s9
+  %3 = fcmp ogt double %0, %1
+  ret i1 %3
----------------
arsenm wrote:
> arsenm wrote:
> > Enumerating all of the compare types is usually helpful
> Actually these seem to be in the other test files, so I'm not sure what this one is for
I'll remove the redundant test file.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73171/new/

https://reviews.llvm.org/D73171





More information about the llvm-commits mailing list