The ABI of BF16 is identical to FP16 rather than i16.
Do we need a TLI callback / legality check for f16?
I think not. The PartVT comes from TLI.getRegisterTypeForCallingConv. We don't need to add another callback and targets use this way should have already made f16 legal.
I can add an TLI.isTypeLegal(PartVT) if you wish.
Add assert for type legal.