This patch proposes a naming convention for operations that take
a general predicate (and are thus predicated) that specifies
what happens to the false lanes.
Currently the _PRED suffix is used, which doesn't really say much other
than that it takes a predicate. In some instances this means it has
merging predication and in other cases it means zeroing-predication.
This patch also changes the order of operands to
AArch64ISD::DUP_MERGE_PASSTHRU, to pass the predicate as the first
operand, which is in line with all other predicates nodes. It takes the
passthru value as an explicit passthru value, which is always passed as
the last operand.
Nothing really against the names, being short is certainly a benefit over my next suggestion.
Is is worth being explicit when it comes to merging. For example _MERGE_OP1 and _MERGE_ZERO. Here MERGE implies a predicated operation and it's clear from the name where the results for inactive lanes comes from. Here I'm referring to _PRED_PASSTHRU where such things are not clear. In essence I'm suggesting forcing people to clearly state where the passthrough value comes from in all cases.