[ARM] Armv8.2-A FP16 code generation (part 3/3)
This adds most of the FP16 codegen support, but these areas need further work:
- FP16 literals and immediates are not properly supported yet (e.g. literal pool needs work),
- Instructions that are generated from intrinsics (e.g. vabs) haven't been added.
This will be addressed in follow-up patches.
Differential Revision: https://reviews.llvm.org/D42849