Lines Matching refs:ABI
11 Libc++ uses various "visibility" macros in order to provide a stable ABI in
44 Mark a function as not being part of the ABI of any final linked image that
48 Mark a function as being hidden from the ABI (per `_LIBCPP_HIDE_FROM_ABI`)
49 when libc++ is built with an ABI version after ABI v1. This macro is used to
50 maintain ABI compatibility for symbols that have been historically exported
51 by libc++ in v1 of the ABI, but that we don't want to export in the future.
54 from the ABI (if the symbol is not part of the ABI in the version we're
58 the ABI in a future version. Each time we release a new stable version of the
59 ABI, we should create a new _LIBCPP_HIDE_FROM_ABI_AFTER_XXX macro, and we can
60 use it to start removing symbols from the ABI after that stable version.
63 This macro controls whether symbols hidden from the ABI with `_LIBCPP_HIDE_FROM_ABI`
67 together, since all non ABI-facing functions are local to each translation unit.
74 leads to code size improvements, since non ABI-facing functions can be
84 When the macro is defined, per TU ABI insulation is enabled by default, and
86 Otherwise, per TU ABI insulation is disabled by default, and
90 libc++ with per TU ABI insulation enabled by default. Users can always
94 By default, this macro is not defined, which means that per TU ABI insulation