[PATCH] D29478: [GlobalISel] Generate selector with predicates; use it for FP binops.

Ahmed Bougacha via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 3 17:20:12 PST 2017


ab updated this revision to Diff 87053.
ab marked 4 inline comments as done.
ab added a comment.

WIP: only recognize predicates that map to Subtarget features (the unfortunately named AssemblerPredicate).  Those should always be supported.

I grabbed the feature flags off of the subtarget.  We should do something similar to the asm matcher and cache the combined feature flags.  I'll look into deduplicating the various computeAvailableFeatures instances;  we could also generate that code in the selector itself.  Either way, that gives us support for flag logic for free (e.g., "FeatureFoo,!FeatureBar").

In the meantime, what do you folks think?


https://reviews.llvm.org/D29478

Files:
  include/llvm/Target/GlobalISel/SelectionDAGCompat.td
  lib/Target/AArch64/AArch64InstructionSelector.cpp
  test/TableGen/GlobalISelEmitter.td
  utils/TableGen/GlobalISelEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D29478.87053.patch
Type: text/x-patch
Size: 7645 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170204/b28a2705/attachment.bin>


More information about the llvm-commits mailing list