Add VMINQ/VMAXQ/VMINNMQ/VMAXNMQ intrinsics and their predicated versions. Add unit tests.
You may want to use llvm.minnum directly (providing the semantics are indeed equivalent). Otherwise it will need fastmath to fuse these together, which isn't the same as the original intrinsic.
I do, but only an indentation quibble.
It's a ludicrously minor nitpick, but if you could indent this NameOverride much further left, to indicate that it's a second base class alongside Intrinsic and not part of the template parameters of Intrinsic, that would be clearer. Same for the one below.