[cxx-abi-dev] Mangling "transaction-safe function"
Jason Merrill
jason at redhat.com
Tue Sep 29 18:09:58 UTC 2015
The Transactional Memory TS introduces "transaction-safe function"
types, which are distinct from non-transaction-safe function types,
though the former converts to the latter. So we need to represent this
in mangling.
I think no change to mangling of actual functions is necessary, since
functions that differ only in their tx-qualifier cannot be overloaded.
So we only need to worry about function types.
One possibility for handling it would be to add a qualifier 'T' after
the <ref-qualifier> at the end of <function-type>, but that complicates
the ambiguity between these qualifiers and parameter types.
I think my preference is to make it a normal type qualifier, perhaps
using "Dx", so void (*)() transaction_safe becomes "PDxFvvE".
We also need to add a __transaction_safe_mask to
__pbase_type_info::__masks so that exception handlers can perform the
transaction safety conversion.
Make sense?
Jason
More information about the cxx-abi-dev
mailing list