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.
The AHuI class already has the HasFullFP16 predicate, so is this needed?
(same question many more times in this file)