compiler: add 'force_align_arg_pointer' function attribute

pull/7183/head
Tim-Philipp Müller 5 years ago committed by Jussi Pakkanen
parent da018da753
commit 246e5437aa
  1. 89
      docs/markdown/Reference-tables.md
  2. 2
      mesonbuild/compilers/c_function_attributes.py

@ -198,49 +198,50 @@ These values are supported using the GCC style `__attribute__` annotations,
which are supported by GCC, Clang, and other compilers.
| Name |
|----------------------|
| alias |
| aligned |
| alloc_size |
| always_inline |
| artificial |
| cold |
| const |
| constructor |
| constructor_priority |
| deprecated |
| destructor |
| error |
| externally_visible |
| fallthrough |
| flatten |
| format |
| format_arg |
| gnu_inline |
| hot |
| ifunc |
| malloc |
| noclone |
| noinline |
| nonnull |
| noreturn |
| nothrow |
| optimize |
| packed |
| pure |
| returns_nonnull |
| unused |
| used |
| visibility* |
| visibility:default† |
| visibility:hidden† |
| visibility:internal† |
| visibility:protected†|
| warning |
| warn_unused_result |
| weak |
| weakreaf |
| Name |
|--------------------------|
| alias |
| aligned |
| alloc_size |
| always_inline |
| artificial |
| cold |
| const |
| constructor |
| constructor_priority |
| deprecated |
| destructor |
| error |
| externally_visible |
| fallthrough |
| flatten |
| format |
| format_arg |
| force_align_arg_pointer³ |
| gnu_inline |
| hot |
| ifunc |
| malloc |
| noclone |
| noinline |
| nonnull |
| noreturn |
| nothrow |
| optimize |
| packed |
| pure |
| returns_nonnull |
| unused |
| used |
| visibility* |
| visibility:default† |
| visibility:hidden† |
| visibility:internal† |
| visibility:protected† |
| warning |
| warn_unused_result |
| weak |
| weakreaf |
\* *Changed in 0.52.0* the "visibility" target no longer includes
"protected", which is not present in Apple's clang.
@ -248,6 +249,8 @@ which are supported by GCC, Clang, and other compilers.
*New in 0.52.0* These split visibility attributes are preferred to the plain
"visibility" as they provide narrower checks.
³ *New in 0.55.0*
### MSVC __declspec
These values are supported using the MSVC style `__declspec` annotation,

@ -56,6 +56,8 @@ C_FUNC_ATTRIBUTES = {
'int foo(const char * p, ...) __attribute__((format(printf, 1, 2)));',
'format_arg':
'char * foo(const char * p) __attribute__((format_arg(1)));',
'force_align_arg_pointer':
'__attribute__((force_align_arg_pointer)) int foo(void) { return 0; }',
'gnu_inline':
'inline __attribute__((gnu_inline)) int foo(void) { return 0; }',
'hot':

Loading…
Cancel
Save