@@ -1234,8 +1234,7 @@ Currently, only the following parameter attributes are defined:
1234
1234
``byval`` parameters). This is not a valid attribute for return
1235
1235
values.
1236
1236
1237
- The byval type argument indicates the in-memory value type, and
1238
- must be the same as the pointee type of the argument.
1237
+ The byval type argument indicates the in-memory value type.
1239
1238
1240
1239
The byval attribute also supports specifying an alignment with the
1241
1240
align attribute. It indicates the alignment of the stack slot to
@@ -1283,8 +1282,7 @@ Currently, only the following parameter attributes are defined:
1283
1282
any parameter must have a ``"preallocated"`` operand bundle. A ``musttail``
1284
1283
function call cannot have a ``"preallocated"`` operand bundle.
1285
1284
1286
- The preallocated attribute requires a type argument, which must be
1287
- the same as the pointee type of the argument.
1285
+ The preallocated attribute requires a type argument.
1288
1286
1289
1287
The preallocated attribute also supports specifying an alignment with the
1290
1288
align attribute. It indicates the alignment of the stack slot to
@@ -1318,8 +1316,7 @@ Currently, only the following parameter attributes are defined:
1318
1316
must be cleared off with :ref:`llvm.stackrestore
1319
1317
<int_stackrestore>`.
1320
1318
1321
- The inalloca attribute requires a type argument, which must be the
1322
- same as the pointee type of the argument.
1319
+ The inalloca attribute requires a type argument.
1323
1320
1324
1321
See :doc:`InAlloca` for more information on how to use this
1325
1322
attribute.
@@ -1331,8 +1328,7 @@ Currently, only the following parameter attributes are defined:
1331
1328
loads and stores to the structure may be assumed by the callee not
1332
1329
to trap and to be properly aligned.
1333
1330
1334
- The sret type argument specifies the in memory type, which must be
1335
- the same as the pointee type of the argument.
1331
+ The sret type argument specifies the in memory type.
1336
1332
1337
1333
A function that accepts an ``sret`` argument must return ``void``.
1338
1334
A return value may not be ``sret``.
@@ -13178,7 +13174,7 @@ This instruction requires several arguments:
13178
13174
- All ABI-impacting function attributes, such as sret, byval, inreg,
13179
13175
returned, and inalloca, must match.
13180
13176
- The caller and callee prototypes must match. Pointer types of parameters
13181
- or return types may differ in pointee type, but not in address space.
13177
+ or return types do not differ in address space.
13182
13178
13183
13179
On the other hand, if the calling convention is `swifttailcc` or `tailcc`:
13184
13180
0 commit comments