Module abi_check

Source
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ยง

check_call_site_abi ๐Ÿ”’
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.
check_callees_abi ๐Ÿ”’
check_feature_dependent_abi ๐Ÿ”’
check_instance_abi ๐Ÿ”’
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.
do_check_simd_vector_abi ๐Ÿ”’
Checks whether a certain function ABI is compatible with the target features currently enabled for a certain function. is_call indicates whether this is a call-site check or a definition-site check; this is only relevant for the wording in the emitted error.
do_check_wasm_abi ๐Ÿ”’
Warns against usage of extern "C" on wasm32-unknown-unknown that is affected by the ABI transition.
uses_vector_registers ๐Ÿ”’
wasm_abi_safe ๐Ÿ”’
Determines whether the given argument is passed the same way on the old and new wasm ABIs.