Commit Graph

4254 Commits

Author SHA1 Message Date
Becca Royal-Gordon
2a53433ad7 Soften @impl warnings only for early adopters
Adopting @implementation turns all of the warnings into errors.
2024-03-27 14:29:57 -07:00
Anton Korobeynikov
d84847ac9d Reland Allow normal function results of @yield_once coroutines (#71645)
* Allow normal function results of @yield_once coroutines

* Address review comments

* Workaround LLVM coroutine codegen problem: it assumes that unwind path never returns.
This is not true to Swift coroutines as unwind path should end with error result.
2024-03-27 13:09:02 -07:00
Takumi Muraishi
59b25c4b7d Fix typo fierst to first 2024-03-20 08:42:16 +09:00
Kuba Mracek
4389ae2dc8 [embedded] Add language feature list to EmbeddedSwiftStatus.md 2024-03-16 13:26:25 -07:00
Kuba Mracek
48b8228acd [embedded] Start building Synchronization in embedded Swift mode 2024-03-13 10:07:37 -07:00
Joe Groff
5a326a1465 Merge pull request #72193 from jckarter/memory-lifetime-verifier-nondestructive-enum-addr
MemoryLifetimeVerifier: Treat only destructive enum_data_addr insns as writes.
2024-03-11 21:16:59 -07:00
Joe Groff
2722f1adcd MemoryLifetimeVerifier: Treat only destructive enum_data_addr insns as writes.
It is ok to project the data from an enum in cases where we know spare bit
packing can never happen. Fixes rdar://124240723.
2024-03-11 09:49:57 -07:00
Nate Chandler
3dbeebaa9b [SIL] Add var_decl flag to alloc_stack. 2024-03-08 22:28:22 -08:00
Emil Pedersen
7c9a8769a1 Merge pull request #72072 from Snowy1803/tuple-fragments
Add support for op_tuple_fragment in SIL DIExpression and SIL SROA
2024-03-06 15:20:08 -08:00
eeckstein
d1ec089c72 Merge pull request #72088 from language-core/main
chore: fix some comments
2024-03-06 10:08:50 +01:00
Kavon Farvardin
215bd3cab4 Mangling: handle inverse requirements 2024-03-05 14:19:00 -08:00
cui fliter
127077b3aa chore: fix some comments
Signed-off-by: cui fliter <imcusg@gmail.com>
2024-03-05 17:23:22 +08:00
Emil Pedersen
35e346fd8d Add support for op_tuple_fragment in SIL DIExpression and SIL SROA
rdar://124034536
2024-03-04 15:46:02 -08:00
Alex Hoppen
80c858fad4 Merge pull request #72031 from ahoppen/ahoppen/lsan-documentation
Improve documentation on how to debug LSAN failures
2024-03-01 23:53:48 -08:00
Alex Hoppen
eac640590c Improve documentation on how to debug LSAN failures 2024-03-01 17:31:01 -08:00
Finagolfin
09ef130457 [android] Update to LTS NDK 26c
NDK 26 renamed the directory in which it places the Android compiler-rt from
`lib64/`, and added a bunch of nullability annotations to the Bionic libc.
2024-02-28 22:11:38 +05:30
Mishal Shah
9b14570a7f Add support for Swift Test WebAssembly 2024-02-23 10:41:37 -08:00
Mishal Shah
af112c1591 Update the Swift version to 6.0 from 5.11 2024-02-19 17:47:16 -08:00
Alejandro Alonso
0c05f82132 Merge pull request #71622 from Azoy/indirect-abi-no-go
[docs] Mention indirect in library evolution doc for enums
2024-02-15 10:30:50 -08:00
Meghana Gupta
0fd6ef3309 Add support for lifetime dependence mangling 2024-02-14 13:16:31 -08:00
Alejandro Alonso
be4cac5c65 Mention indirect in library evolution doc for enums
Update LibraryEvolution.rst
2024-02-14 12:56:07 -08:00
Erik Eckstein
6e8b80c791 SIL: add printing and parsing support for specialized vtables
If the vtable refers to a specialized class, a SIL type specifies the bound generic class type:
```
  sil_vtable $G<Int> {
    // ...
  }
```
2024-02-14 09:51:36 +01:00
Anthony Latsis
5dac5e2f79 Merge pull request #70658 from art-divin/improve-getting-started-linux-vm
Add a note about hardware requirements for compiling on Linux
2024-02-14 00:29:13 +03:00
John McCall
d5142668f4 SIL and IRGen support for @isolated(any). SILGen to come. 2024-02-13 03:04:13 -05:00
Kuba (Brecka) Mracek
6657349552 Merge pull request #71523 from kubamracek/embedded-docs3
[embedded] Update UserManual.md and EmbeddedSwiftStatus.md with some additional information
2024-02-12 16:44:55 -08:00
Anthony Latsis
bc132da5d9 Merge pull request #71013 from AnthonyLatsis/getting-started-hosttools-bootstrapping 2024-02-12 23:59:53 +03:00
Kuba Mracek
fa193fac80 [embedded] Update UserManual.md and EmbeddedSwiftStatus.md with some additional information 2024-02-09 14:05:24 -08:00
Alastair Houghton
9d2dcb5c4e Merge pull request #71386 from al45tair/eng/PR-122302117
[Runtime] Add an option to produce non-symbolicated backtraces.
2024-02-08 11:14:26 +00:00
Nate Cook
e317febc9d Revert "Allow normal function results of @yield_once coroutines (#69843)"
This reverts commit aa5b505014.
2024-02-07 14:57:31 -06:00
John McCall
60807a76a4 Merge pull request #71433 from rjmccall/isolated-any-typechecking
Experimental type-checking support for `@isolated(any)` function types.
2024-02-07 14:07:53 -05:00
Anton Korobeynikov
aa5b505014 Allow normal function results of @yield_once coroutines (#69843)
This adds SIL-level support and LLVM codegen for normal results of a coroutine.

The main user of this will be autodiff as VJP of a coroutine must be a coroutine itself (in order to produce the yielded result) and return a pullback closure as a normal result.

For now only direct results are supported, but this seems to be enough for autodiff purposes.
2024-02-06 22:13:15 -08:00
John McCall
2f8a33cf0a Experimental type-checking support for @isolated(any) function types. 2024-02-06 22:54:27 -05:00
Alastair Houghton
dd0b826235 [Runtime] Improved symbolication option for backtracing.
Rather than just on or off, I've changed it to allow "off", "fast",
or "full".  "fast" means that we'll do symbol lookup, but we won't
try to find inline frames and we won't run line number programs
(those are the things that are taking considerable time in some
cases).

rdar://122302117
2024-02-06 17:38:20 +00:00
Alastair Houghton
6c7aeeb5f2 [Docs] Updated Backtracing docs with new symbolicate setting.
Document the new `symbolicate` setting.

rdar://122302117
2024-02-05 13:05:11 +00:00
Erik Eckstein
fcd5225f39 Mangling: add mangling for outlined value operations which must not use value witness functions 2024-02-05 12:33:18 +01:00
Erik Eckstein
86f23b089f SIL: add the [perf_constraint] flag in SILFunction
Specifies that the optimizer and IRGen must not add runtime calls which are not in the function originally.
This attribute is set for functions with performance constraints or functions which are called from functions with performance.
2024-02-05 12:26:30 +01:00
Kuba (Brecka) Mracek
2fa1022a91 Merge pull request #70687 from kubamracek/embedded-docs1
[embedded] Add an initial docs/EmbeddedSwift/UserManual.md
2024-02-03 13:06:57 -08:00
Kuba Mracek
770496b1c0 [embedded] Add Pico integration tutorial 2024-02-02 22:37:45 -08:00
Kuba Mracek
0affaafac7 [embedded] Expand on the Embedded Swift documentation, fill in several TODOs 2024-02-02 21:50:09 -08:00
Michael Gottesman
369f441702 [SIL.rst] Update end_unpaired_access docs to make it clear it does not have a result. 2024-02-02 14:50:10 -08:00
Guillaume Lessard
114f235d17 Merge pull request #71167 from vanvoorden/vanvoorden/inclusive-language
[Inclusive Language][Comments][Documentation] migrate "sanity" checks to "soundness" checks
2024-02-02 10:27:34 -08:00
Michael Gottesman
6725caa06f Merge pull request #71221 from gottesmm/pr-2ebba2c62b8662dc2f5e21de219fc0f595ec97d9
[SIL.rst] Add textual examples for some of the pack instructions.
2024-01-29 17:19:29 -08:00
Michael Gottesman
904b1a91a6 [SIL.rst] Add textual examples for some of the pack instructions.
Just writing some tests for the pack instructions and I would have found having
a textual SIL example in SIL.rst of how to write them to be useful. Just paying
it forward.
2024-01-29 12:43:00 -08:00
Arnold Schwaighofer
01df0ca1ff Merge pull request #71092 from aschwaighofer/outline_enum_addr_insts
IRGen: Outline by-address SIL enum instructions
2024-01-29 07:10:25 -08:00
Rick van Voorden
f8ae46b3f3 [inclusive-language] changed sanity to soundness 2024-01-25 18:18:02 -08:00
Anthony Latsis
cb988a4899 [docs] GettingStarted: Restructure "The actual build" section 2024-01-26 01:39:15 +03:00
Arnold Schwaighofer
49e8ffb735 IRGen: Outline by-address SIL enum instructions
Use a heuristic to decide when to outline indirect enum operations.
2024-01-23 15:01:24 -08:00
Slava Pestov
4c275df6e5 Merge pull request #71087 from eltociear/patch-49
generics.tex: fix typo in generic-environments.tex
2024-01-23 11:55:29 -05:00
Andrew Trick
2ef870a52b Add LifetimeDependence utilities 2024-01-22 23:57:03 -08:00
Andrew Trick
37171e698a Handle mark_dependence [nonescaping] like a borrowing instruction. 2024-01-22 23:57:03 -08:00