Alejandro Alonso
5b7e3d8ca2
Add a WasmMutex
2024-06-04 09:06:36 -07:00
Alejandro Alonso
1146b41d14
Add the underscored unsafe locking primitives
2024-06-04 09:06:36 -07:00
Alejandro Alonso
882568ca4d
Directly call gettid syscall instead of library function
2024-06-04 09:06:36 -07:00
Alejandro Alonso
1f206ec58e
Attempt to release the lock and wake when we can't
2024-06-04 09:06:36 -07:00
Alejandro Alonso
2a60c88457
Implement Mutex in Synchronization
2024-06-04 09:06:34 -07:00
Konrad `ktoso` Malawski
89adc8293c
[Docs] Minor rewording of Task docs, easier to read
2024-06-04 15:42:04 +09:00
Konrad `ktoso` Malawski
2182dce8b7
[Concurrency] Document custom executors in API docs a bit
...
Include review feedback and show how to customize a single actor by
passing an executor through initializer
2024-06-04 15:42:02 +09:00
Konrad `ktoso` Malawski
083fdaa0de
Merge pull request #73998 from nickolas-pohilets/mpokhylets/fix-32-build
2024-06-04 13:49:19 +09:00
Konrad `ktoso` Malawski
228e42528e
Merge pull request #74089 from ktoso/wip-tasklocal-copy-dont-add-runtime-method
2024-06-04 07:02:43 +09:00
Guillaume Lessard
dabd99d798
Revert "[stdlib] Mark some UnsafePointer APIs as transparent"
2024-06-03 09:40:37 -07:00
Konrad `ktoso` Malawski
14b8546392
[Concurrency] Don't add new task locals copy runtime func
2024-06-03 13:55:02 +09:00
Michael Gottesman
ce1dd43395
[sending] Change CheckedContinuation/AsyncThrowingStream.Continuation APIs to use sending parameters and results.
...
Specifically:
1. CheckedContinuation.resume now takes a sending parameter.
2. Async{Throwing,}Stream.yield takes a sending parameter.
3. withCheckedContinuation returns a transferring parameter.
Importantly due to the previous changes around mangling, this is a mangling
neutral change.
rdar://120420024
2024-06-01 23:25:16 -07:00
Alejandro Alonso
1ec03e133b
Merge pull request #74017 from Azoy/pointer-transparent
...
[stdlib] Mark some UnsafePointer APIs as transparent
2024-05-31 12:59:05 -07:00
Saleem Abdulrasool
c3d825144c
Merge pull request #74040 from STREGA/main
...
Revert remove cplusplus requirement on XAudio29
2024-05-31 14:33:20 -04:00
Konrad `ktoso` Malawski
0c44645832
[Concurrency] Implement defensive copying in task groups, rather than crashing ( #73978 )
2024-05-31 11:27:03 -07:00
Rintaro Ishizaki
5824d88362
Merge pull request #74032 from rintaro/stdlib-plugin-path
...
[stdlib] Use -plugin-path for building the standard library
2024-05-31 09:42:05 -07:00
Karl
7a57bd8ae4
[stdlib] Refactor Unicode normalization ( #73590 )
...
* [stdlib] Refactor Unicode normalization
* Tweak inlining
2024-05-31 08:22:37 -06:00
STREGA
d69790bde2
Revert remove cplusplus requirement on XAudio29
2024-05-30 22:48:07 -04:00
Rintaro Ishizaki
299167420a
[stdlib] Use -plugin-path for building the standard library
...
`-external-plugin-path` requires `swift-plugin-server` exectuable, but
there was no dependency. Instead of adding the dependency, use
`-plugin-path` that doesn't require the plugin-server.
2024-05-30 14:02:12 -07:00
Mykola Pokhylets
987b641a7c
Updated HeaderFooterLayout to correctly handle empty Header or Footer
2024-05-30 21:56:28 +02:00
Mykola Pokhylets
a891b8f0fb
Move isDistributedRemoteActor outside #if
2024-05-30 21:55:58 +02:00
Alejandro Alonso
d5f67eb479
Mark some UnsafePointer APIs as transparent
2024-05-30 10:32:14 -07:00
Mike Ash
7427aa5f48
[Concurrency] Remove SWIFT_ENABLE_ASYNC_JOB_DISPATCH_INTEGRATION environment variable.
...
This option serves no purpose anymore and this dispatch integration should always be enabled.
2024-05-30 12:43:19 -04:00
Holly Borla
135e3f2ee9
Merge pull request #73889 from hborla/deprecate-anyactor
...
[Concurrency] Deprecate `AnyActor`.
2024-05-30 09:36:35 -07:00
Mykola Pokhylets
b5e039d1e0
Fixed 32-bit build with SWIFT_CONCURRENCY_ENABLE_PRIORITY_ESCALATION
2024-05-30 13:15:39 +02:00
Mykola Pokhylets
6298d41edf
Reapply "Fix quadratic performance of the ListMerger in specific usage pattern"
...
This reverts commit 2640ff613b .
2024-05-30 13:08:42 +02:00
Holly Borla
c20b0e0956
[Concurrency] Obsolete AnyActor in Swift 6 using a typealias.
2024-05-29 22:59:19 -07:00
John McCall
a8d163bb23
Merge pull request #73966 from rjmccall/condvar-await-scope
...
Fix a bug with task-to-thread continuations
2024-05-29 18:56:51 -04:00
Guillaume Lessard
da65626beb
Merge pull request #73947 from glessard/rdar128709914
2024-05-29 12:42:55 -07:00
Mike Ash
d0ed6f6ba2
Merge pull request #73945 from mikeash/dispatch-async-swift-job-no-dlsym
...
[Concurrency] Reference dispatch_async_swift_job directly when the header is available.
2024-05-29 14:25:55 -04:00
John McCall
d3e7b5116f
In the task-to-thread model of UnsafeContinuation, destroy the
...
condvar before we try to tail-call. This is necessary because the
swiftasync tail-call handling is (reasonably) reluctant to reorder
cleanups so that locals are destroyed before the call, and of course it
cannot destroy them after it and still emit a tail call.
Old versions of clang handled these tailcalls differently and failed
to diagnose this, but I'm pretty sure they just ended up not doing a
tail call rather than actually doing anything reasonable.
Fixes rdar://125363169
2024-05-28 22:04:50 -04:00
Konrad `ktoso` Malawski
a664c02f60
Merge pull request #73934 from ktoso/pick-concurrency-isCurrent-more-fixes
2024-05-29 10:07:53 +09:00
Mike Ash
c396f75792
[Concurrency] Reference dispatch_async_swift_job directly when the header is available.
...
Only use dlsym when we don't have the header, since it's an unnecessary performance hit.
rdar://118465481
2024-05-28 17:35:39 -04:00
Eric Miotto
07edd9c766
Merge pull request #73939 from edymtt/edymtt/target-sdks-can-be-empy
...
CMake: do not assume target SDKs are provided when evaluting `NOT`...
2024-05-28 14:26:39 -07:00
Alex Lorenz
664f332994
Android: do not re-export macros from linux/stat.h from other modules
...
This lets us declare constants in the Android platform module using the expected mode_t type
2024-05-28 13:08:39 -07:00
Alex Lorenz
607766299b
drop android stuff
2024-05-28 13:02:16 -07:00
Alex Lorenz
d7de7c69ca
Fix canImport android
2024-05-28 13:01:34 -07:00
Alex Lorenz
57b89d5303
[android] add an android NDK Swift overlay module, and use it instead of Glibc
2024-05-28 12:57:38 -07:00
Alex Lorenz
95493f673d
[android] add a module map for Android NDK
...
This commit doesn't install them yet, they will be installed and a whole Android NDK module will be built in a follow-up commit
This module map covers the Bionic C standard library and other Posix headers used in the Android NDK
2024-05-28 12:55:02 -07:00
Guillaume Lessard
4fc82f895a
[stdlib] remove deprecations added by SE-0426
2024-05-28 11:05:31 -07:00
Guillaume Lessard
511e619268
Merge pull request #73900 from glessard/rdar128543858
...
[stdlib] add failure explanations to debug preconditions
2024-05-28 09:21:28 -07:00
Alex Lorenz
444e2f465b
Android: do not re-export macros from linux/stat.h from other modules
...
This lets us declare constants in the Android platform module using the expected mode_t type
2024-05-28 08:58:23 -07:00
Eric Miotto
99a4a0d203
CMake: do not assume target SDKs are provided when evaluting NOT...
...
... operator in `add_swift_target_library` and
`add_swift_target_executable`
This can be the case when building the stdlib for embedded on its own
(i.e. without the compiler or other platforms).
Addresses rdar://128819523
2024-05-28 07:41:08 -07:00
Konrad `ktoso` Malawski
7c0e1f599a
[Concurrency] Fix embedded, cannot refer to runtime/env vars from Actor.cpp
2024-05-28 18:19:55 +09:00
Konrad `ktoso` Malawski
e9b25d1091
[Concurrency] Move innermost record assertion to handle more gracefully
2024-05-28 16:58:38 +09:00
Konrad `ktoso` Malawski
7eef019dcd
Merge pull request #73813 from ktoso/pick-concurrency-isCurrent-more-fixes
2024-05-28 15:52:43 +09:00
Kuba Mracek
5ec41ad232
[embedded] Use -ffreestanding when building Unicode data tables library even on Linux
2024-05-27 13:07:28 -07:00
Konrad `ktoso` Malawski
153806b71a
[Concurrency] Reshape initial values of executor checking so tests pass on Linux
2024-05-27 17:02:26 +09:00
Konrad `ktoso` Malawski
d36f99540c
[Concurrency] Always assume that if expecting main actor and are on main thread that this is equal
2024-05-27 17:02:26 +09:00
Konrad `ktoso` Malawski
7790609fc8
[Concurrency] Futher prevent crashes in legacy mode of isCurrentExecutor
2024-05-27 17:02:26 +09:00