Alex Lorenz
4858cb6225
[IRGen][interop] do not add 'nocapture' to not bitwise takable types
...
The use of 'nocapture' for parameters and return values is incorrect for C++ types, as they can actually capture a pointer into its own value (e.g. std::string in libstdc++)
rdar://115062687
2023-09-25 17:43:34 -07:00
Arnold Schwaighofer
3b5ebaa46c
Fix some tests in IRGen folder
2023-06-21 10:10:32 -07:00
Arnold Schwaighofer
c1a93e0bde
Move tests over to use the %use_no_opaque_pointers option
2023-06-14 10:49:48 -07:00
Arnold Schwaighofer
5a6de1ba77
IRGen: Use opaque storage types for non-fixed indirect result types
...
LLVM does type based analysis on sret storage types. This is a problem
with non-fixed types whose storage type does not contain the non-fixed
part.
rdar://73778591
2021-02-10 16:19:12 -08:00
Arnold Schwaighofer
1f16f7ad8a
Adjust to LLVM change that requires sret parameter attributes to be
...
annotated with the pointee type.
rdar://71808491
2020-12-03 09:39:41 -08:00
Arnold Schwaighofer
f6651d6d45
IRGen: Enable TypeLayout based value witness generation
...
rdar://51988441
2020-02-25 12:31:30 -08:00
Arnold Schwaighofer
9ee12db2a9
Fix tests for LLVM change that added anonymous parameter labeling
...
Fix for r367755.
2019-08-15 14:57:24 -07:00
Erik Eckstein
39bb14b094
change mangling prefix from $S to $s
...
This is the final ABI mangling prefix
rdar://problem/38471478
2018-09-19 13:55:11 -07:00
Arnold Schwaighofer
5927df8bb6
Fix test/IRGen/TestABIInaccessible.swift hopefully for real
2018-06-11 08:23:11 -07:00
Arnold Schwaighofer
66c73f845c
Fix test case test/IRGen/TestABIInaccessible.swift
...
The attribute list might be differently labeled.
2018-06-08 16:19:17 -07:00
Arnold Schwaighofer
9f3415edab
Adjust test case for linux
2018-06-08 06:25:08 -07:00
Arnold Schwaighofer
97845c0a5c
IRGen: Don't pass metadata of not ABI accessible to outlined copy/destroy operations
...
Doing so will cause linkage errors and is not neccessary since we call
the witness of the enclosing type as soon as its fields are not ABI
accessible.
rdar://40868358
2018-06-07 13:58:01 -07:00