This breaks a type down into 'simpler' types that can be passed to a function in registers, and returned in registers. This is the implementation for the AAPCS64 ABI, based on https://github.com/ARM-software/abi-aa/blob/master/aapcs64/aapcs64.rst.
type to break down
tuple of 1 type if t can be passed in registers; e.g., a static array for Homogeneous Floating-point/Vector Aggregates (HFVA). A tuple of zero length means the type cannot be passed/returned in registers. null indicates a void.
See Implementation
This breaks a type down into 'simpler' types that can be passed to a function in registers, and returned in registers. This is the implementation for the AAPCS64 ABI, based on https://github.com/ARM-software/abi-aa/blob/master/aapcs64/aapcs64.rst.