@@ -1161,15 +1161,17 @@ parameters of a function. Parameter attributes are considered to be part
1161
1161
of the function, not of the function type, so functions with different
1162
1162
parameter attributes can have the same function type.
1163
1163
1164
- Parameter attributes are simple keywords that follow the type specified.
1165
- If multiple parameter attributes are needed, they are space separated.
1166
- For example:
1164
+ Parameter attributes are simple keywords that follow the specified type.
1165
+ When multiple parameter attributes are required, they are separated by
1166
+ spaces. Additionally, target-dependent attributes can be provided as a
1167
+ string. For example:
1167
1168
1168
1169
.. code-block:: llvm
1169
1170
1170
1171
declare i32 @printf(ptr noalias nocapture, ...)
1171
1172
declare i32 @atoi(i8 zeroext)
1172
1173
declare signext i8 @returns_signed_char()
1174
+ define void @baz(i32 "amdgpu-flat-work-group-size"="1,256" %x)
1173
1175
1174
1176
Note that any attributes for the function result (``nonnull``,
1175
1177
``signext``) come before the result type.
@@ -1843,16 +1845,18 @@ a function. Function attributes are considered to be part of the
1843
1845
function, not of the function type, so functions with different function
1844
1846
attributes can have the same function type.
1845
1847
1846
- Function attributes are simple keywords that follow the type specified.
1847
- If multiple attributes are needed, they are space separated. For
1848
- example:
1848
+ Function attributes are simple keywords that follow the specified type.
1849
+ When multiple attributes are required, they are separated by spaces.
1850
+ Additionally, target-dependent attributes can be provided as a string.
1851
+ For example:
1849
1852
1850
1853
.. code-block:: llvm
1851
1854
1852
1855
define void @f() noinline { ... }
1853
1856
define void @f() alwaysinline { ... }
1854
1857
define void @f() alwaysinline optsize { ... }
1855
1858
define void @f() optsize { ... }
1859
+ define void @f() "no-sse" { ... }
1856
1860
1857
1861
``alignstack(<n>)``
1858
1862
This attribute indicates that, when emitting the prologue and
0 commit comments