Expand description
This module ensures that if a function’s ABI requires a particular target feature, that target feature is enabled both on the callee and all callers.
Functions§
- Checks that a call expression does not try to pass a vector-passed argument which requires a target feature that the caller does not have, as doing so causes UB because of ABI mismatch.
- Checks that the ABI of a given instance of a function does not contain vector-passed arguments or return values for which the corresponding target feature is not enabled.
- Checks whether a certain function ABI is compatible with the target features currently enabled for a certain function. If not,
emit_err
is called, withSome(feature)
if a certain feature should be enabled and withNone
if no feature is known that would make the ABI compatible.