aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
diff options
context:
space:
mode:
authorFraser Cormack <fraser@codeplay.com>2022-04-07 17:58:59 +0100
committerFraser Cormack <fraser@codeplay.com>2022-04-08 12:30:22 +0100
commit18106b99f0c3076220e86123d1c19e0d38683b60 (patch)
tree1dc6fe07d95d8396431a8c5469a117aa7da36a18 /clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
parentc8084fd9076aa20e3929e21bff11b2492c399a55 (diff)
downloadllvm-18106b99f0c3076220e86123d1c19e0d38683b60.zip
llvm-18106b99f0c3076220e86123d1c19e0d38683b60.tar.gz
llvm-18106b99f0c3076220e86123d1c19e0d38683b60.tar.bz2
[VP] Explicitly map from VP intrinsic to ISD opcode
This patch aims to overcome an issue in these mappings where, when an ISD node was registered with BEGIN_REGISTER_VP_SDNODE but outwidth the scope of a pair of BEGIN_REGISTER_VP_INTRINSIC/END_REGISTER_VP_INTRINSIC macros, the switch cases fell apart. This in particular happened with VP_SETCC, where we'd end up with something along the lines of: case Intrinsic::vp_fcmp: break; case Intrinsic::vp_icmp: break; ResOpc = ISD::VP_SETCC; case Intrinsic::vp_store: ... To remedy this, we introduce a special-purpose mapping macro which can map any number of VP intrinsic opcodes to an ISD opcode. As a result, we no longer need to special-case the mapping from vp.icmp and vp.fcmp to VP_SETCC, as the new helper macro does it for us. Thanks to @craig.topper for noticing this and to @rogfer01 for the idea. Reviewed By: rogfer01 Differential Revision: https://reviews.llvm.org/D123324
Diffstat (limited to 'clang/lib/Frontend/CreateInvocationFromCommandLine.cpp')
0 files changed, 0 insertions, 0 deletions