Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
216 commits
Select commit Hold shift + click to select a range
45ba5ce
[arm64e] Add arm64e support into Swift's build system
kubamracek Feb 28, 2020
84c4864
[arm64e] Add Swift compiler support for arm64e pointer authentication
kubamracek Feb 28, 2020
1bd425d
[arm64e] Test changes to support arm64e
kubamracek Feb 28, 2020
5d918e5
Merge branch 'master' into mracek/arm64e
kubamracek Mar 3, 2020
0d400ca
Merge branch 'master' into mracek/arm64e
kubamracek Mar 4, 2020
acfc4a9
Fixup for 3904fe83f (AST: Centralize ABI-related deployment target ch…
kubamracek Mar 5, 2020
190b8a7
Changes implementation of _persistCString from _StringGuts to be in s…
valeriyvan Mar 5, 2020
cade91c
Fixup failing IRGen tests
kubamracek Mar 6, 2020
d68089d
[Diagnostics] Add a basic terminal markdown printer for educational n…
owenv Dec 6, 2019
f49f6a9
Fixes variable name
valeriyvan Mar 6, 2020
ab6533a
Merge branch 'master' into mracek/arm64e
kubamracek Mar 6, 2020
85a5e5a
[CMake] Move the `_add_swift_target_library_single()` call for `Block…
akyrtzi Mar 7, 2020
c0ab0c9
Fixup swift-reflection-test.c and swift-reflection-dump.cpp
kubamracek Mar 7, 2020
6df132d
[ConstraintSystem] Make getCalleLocator to support an apply involving…
LucianoPAlmeida Mar 7, 2020
c1e517a
[tests] Adding tests for SR-12019
LucianoPAlmeida Mar 7, 2020
ad7fed0
Eager specilization shouldn't optimize functions with ownership (yet)
zoecarver Mar 7, 2020
9afa37e
Merge pull request #30275 from akyrtzi/cmake-blocks-runtime-under-stdlib
akyrtzi Mar 7, 2020
03a0042
API changes in SwiftRemoteMirror make these tests unsuitable for back…
tbkka Mar 7, 2020
ceff414
Distinguish invocation and pattern substitutions on SILFunctionType.
rjmccall Mar 6, 2020
8a4a226
Undo unintentional llvm::MaybeAlign changes
kubamracek Mar 7, 2020
44e155f
Merge pull request #30281 from tbkka/tbkka-remoteMirror-swiftInOS
swift-ci Mar 7, 2020
1f62fe5
Merge pull request #30272 from rjmccall/invocation-sil-function-subs
rjmccall Mar 7, 2020
0ecedfa
Revert "[ConstraintSystem] Make it possible to infer subtype bindings…
xedin Mar 8, 2020
1352878
[TypeChecker] NFC: Add a test-case for rdar://problem/60185506
xedin Mar 8, 2020
b2edf20
Merge pull request #30112 from apple/mracek/arm64e
kubamracek Mar 8, 2020
a1987ec
Merge pull request #30283 from xedin/rdar-60185506
xedin Mar 8, 2020
be576c6
Require types to be contextually canonical in AbstractionPatterns.
rjmccall Mar 8, 2020
3a9969c
Merge pull request #30284 from rjmccall/contextually-canonical-abstra…
rjmccall Mar 8, 2020
6dc4329
Move SwiftSource.cmake to stdlib
drexin Mar 8, 2020
4fcd65a
WinSDK: extend the WinSock module further
compnerd Mar 8, 2020
f796e27
[TypeChecker] Requestify DynamicCallableAttribute check
LucianoPAlmeida Mar 8, 2020
cb9b64f
[temp-rvalueopt] Extract out visiting projections from loads into a h…
gottesmm Mar 9, 2020
6ca7e38
[tests] Add more test cases for SR-12019 dynamic callable
LucianoPAlmeida Mar 9, 2020
29c00f6
IRGen: improve DLLStorage computation for Windows
compnerd Mar 9, 2020
4f4755f
Merge pull request #30286 from drexin/wip-move-swift-source
drexin Mar 9, 2020
5aaf2ce
[tests] Fix broken Misc/stats_dir_tracer.swift tests
LucianoPAlmeida Mar 9, 2020
086d70b
Merge pull request #30290 from gottesmm/pr-ee2175711b00634ad4bb0a4db8…
swift-ci Mar 9, 2020
d0b6d9f
Improve diagnostic for read-only properties
HassanElDesouky Mar 9, 2020
dae4c0b
[temp-rvalue] Teach how to optimize unchecked_take_enum_data_addr of …
gottesmm Mar 9, 2020
11df7a8
Merge pull request #30293 from gottesmm/pr-55fe1cfe477ee888a3b18c3923…
gottesmm Mar 9, 2020
e9896fb
[ownership] Change init_existential_ref to be forwarding for both gua…
gottesmm Mar 9, 2020
ce97d22
[Function builders] Add support for buildFinalResult().
DougGregor Mar 9, 2020
883d546
Merge pull request #30291 from gottesmm/pr-20d3a11a596c39f79b461a829f…
swift-ci Mar 9, 2020
2e4d315
Merge pull request #30287 from HassanElDesouky/SR-12311
Mar 9, 2020
4c74c07
[NFC] Squash an initialization ordering warning
CodaFi Mar 9, 2020
64864c2
Merge pull request #30288 from compnerd/winsock
compnerd Mar 9, 2020
57f54dd
Merge pull request #30294 from CodaFi/order-up
swift-ci Mar 9, 2020
559dc2a
WinSDK: further extend the WinSock module
compnerd Mar 9, 2020
b80e33b
Fix reuse of the payload area when the discriminator != 0
mikeash Jan 9, 2020
4a06b13
[ConstraintSystem] Diagnose argument conflicts only for "representati…
xedin Feb 21, 2020
7c403ed
[temp-rvalueopt] Teach how to promote fix_lifetime.
gottesmm Mar 9, 2020
ea456f7
Merge pull request #30295 from compnerd/WinSock
compnerd Mar 9, 2020
be61002
Merge pull request #30279 from zoecarver/fix/eager-spec-no-ownership
swift-ci Mar 9, 2020
d11232b
[PrintAsObjC] NFC Document and make isEmptyExtensionDecl public
xymus Mar 9, 2020
8f01b2c
[PrintAsObjC] Don't include the module for empty extensions
xymus Mar 9, 2020
4e8867e
[PrintAsObjC] Test that we don't leak extended implementationOnly types
xymus Mar 7, 2020
4715d68
Merge pull request #30237 from valeriyvan/RemoveRedundantZeroingStrin…
milseman Mar 9, 2020
c1c6a88
[ConstraintSystem] Respect the constraint solver performance thresholds,
hborla Mar 9, 2020
9ce4b60
Merge pull request #30297 from xedin/diagnose-gp-conflicts-for-reprs
xedin Mar 9, 2020
8f7340c
[CodeCompletion] Re-typecheck TypeExpr without call arguments
rintaro Mar 9, 2020
28f343d
Merge pull request #30301 from tbkka/tbkka-remoteMirror-projectEnum
swift-ci Mar 9, 2020
16e84e3
[Diagnostics] Add edu note explaining limitations of protocols with a…
owenv Mar 2, 2020
20c0267
Merge pull request #30299 from gottesmm/pr-59c23cc931f2998f402e6f7066…
gottesmm Mar 9, 2020
6fee59b
[semantic-arc-opts] Implement @owned phi web elimination for phi webs…
gottesmm Mar 6, 2020
c346257
Disable LetPropertiesOpt on struct 'let's.
atrick Mar 4, 2020
685d35b
Merge pull request #30306 from xymus/print-objc-ext
xymus Mar 9, 2020
e8bcd90
test: add missing tool dependency
compnerd Mar 10, 2020
5d52fd2
[ownership] Now that cond_br only takes trivial operands in ossa, eli…
gottesmm Mar 10, 2020
9fd34ab
doc, windows: remove extra parenthesis
patrickdes Mar 9, 2020
58f6e9b
doc, windows: break down the cmake command
patrickdes Mar 9, 2020
2a85468
doc, windows: set LLVM_ENABLE_LIBEDIT=NO
patrickdes Mar 9, 2020
01145c0
[Type] Return early on hasDynamicCallable/DynamicMemberLookup if it m…
LucianoPAlmeida Mar 10, 2020
eea07b3
Preserve PrettyStackTrace context in the interface worker thread.
rjmccall Mar 9, 2020
bac7e6b
Add some helpers to the SILFunctionType component types.
rjmccall Mar 9, 2020
21e1fc4
[AST/ASTMangler] Fix linker error for `SWIFT_BUILD_ONLY_SYNTAXPARSERL…
akyrtzi Mar 10, 2020
7ce6753
[SymbolGraph] Track conditional conformance
bitjammer Mar 6, 2020
e8f4094
[SymbolGraph] Install `swift-symbolgraph-extract` in `compiler` insta…
bitjammer Mar 10, 2020
98494bb
Merge pull request #30316 from akyrtzi/parser-lib-fix-linker-error
swift-ci Mar 10, 2020
f0530d0
[Function builders] Support buildOptional(_:) in lieu of buildIf(_:).
DougGregor Mar 10, 2020
cee2af0
Merge pull request #30289 from gottesmm/pr-645bd01cfa67ffe64ed23d74e1…
gottesmm Mar 10, 2020
07f03bd
Use pattern substitutions to consistently abstract yields.
rjmccall Mar 9, 2020
d0d31f7
[semantic-arc-opts] Refactor out reinitializing the worklist into met…
gottesmm Mar 10, 2020
1082678
[test/Index] Add a test case for cross-language USR generation fix on…
akyrtzi Mar 10, 2020
ab9416b
Merge pull request #30314 from gottesmm/pr-fd797f09f7fb277ea2c75a81fc…
gottesmm Mar 10, 2020
1a7e439
Merge pull request #30320 from gottesmm/pr-29b49f7445fdc16950dbb3bcdb…
swift-ci Mar 10, 2020
3b216a2
Merge pull request #30323 from akyrtzi/usr-generation-objc-prop-external
swift-ci Mar 10, 2020
6813762
[SILGen] Remove incomplete support for generic bridging functions in …
gribozavr Mar 10, 2020
77dee31
Merge pull request #30313 from compnerd/archiver
compnerd Mar 10, 2020
7c5d74e
Merge pull request #30325 from gribozavr/unhack-getBridgingFn
swift-ci Mar 10, 2020
7f426d1
Revert "[semantic-arc-opts] Refactor out reinitializing the worklist …
rintaro Mar 10, 2020
fad1b43
Revert "[semantic-arc-opts] Implement @owned phi web elimination for …
rintaro Mar 10, 2020
0a6ccd8
Merge pull request #30327 from rintaro/revert-30289
rintaro Mar 10, 2020
2374502
Revert "[Typechecker] Diagnose key paths with contextual type but no …
xedin Mar 10, 2020
e86558f
Merge pull request #30277 from LucianoPAlmeida/SR-12019-dynamically-c…
xedin Mar 10, 2020
1046516
Merge pull request #30310 from rintaro/ide-completion-typeexprcall-rd…
rintaro Mar 10, 2020
b12bd4e
Merge pull request #30307 from hborla/merge-partial-solutions-too-com…
hborla Mar 10, 2020
81ba9fd
Merge pull request #30309 from rjmccall/accessor-subst-function-types
rjmccall Mar 10, 2020
5405a15
Revert "[test/Index] Add a test case for cross-language USR generatio…
rintaro Mar 10, 2020
040b93c
Merge pull request #30331 from apple/revert-30323-usr-generation-objc…
rintaro Mar 10, 2020
aa35a50
Merge pull request #30328 from apple/revert-30164-fix/SR-12290
xedin Mar 10, 2020
c728d7a
Fix failing IRGen arm64e tests (#30296)
kubamracek Mar 10, 2020
31593c9
Mark ptrauth_generalized_accessors.swift as UNSUPPORTED (#30305)
kubamracek Mar 10, 2020
5572956
Mark typeref_lowering.swift and typeref_decoding_imported.swift as UN…
kubamracek Mar 10, 2020
aeabe28
Merge pull request #30317 from bitjammer/acgarland/rdar-60091161-cond…
bitjammer Mar 10, 2020
faa2bf2
[Reflection] Fix a dangling reference in EnumTypeInfoBuilder when cre…
mikeash Mar 10, 2020
13b9915
Use in_guaranteed for let captures (#29812)
meg-gupta Mar 10, 2020
f1f3b60
[CSGen] Clarify locators for some of the patterns
xedin Mar 10, 2020
411833d
PrintAsObjc: strip Headers and PrivateHeaders component in header pat…
nkcsgexi Mar 10, 2020
72fba7d
Merge pull request #30153 from owenv/protocol-can-only-be-used-as-a-c…
owenv Mar 10, 2020
7869d94
Merge pull request #30335 from mikeash/fix-enumtypeinfobuilder-dangli…
swift-ci Mar 10, 2020
9e12b37
Dump component types of SILFunctionType
jckarter Mar 10, 2020
020c828
[OSLogOptimization] Prevent the OSLogOptimization pass from crashing
ravikandhadai Mar 10, 2020
ccbc26d
Revert "Use in_guaranteed for let captures (#29812)"
rintaro Mar 10, 2020
e229468
Merge pull request #30292 from compnerd/sr-9138
compnerd Mar 10, 2020
6b88599
Revert "Merge pull request #30327 from rintaro/revert-30289"
gottesmm Mar 10, 2020
7323ea9
[semantic-arc-opts] Eliminate unneeded use of bisection that caused A…
gottesmm Mar 10, 2020
8e39711
Merge pull request #30338 from ravikandhadai/oslog-crash-in-unreachab…
swift-ci Mar 11, 2020
04c20b8
Merge pull request #30340 from apple/revert-29812-captureconv
rintaro Mar 11, 2020
5b6becf
[SymbolGraph] Omit empty docComment fields
bitjammer Mar 11, 2020
e3f2bb7
[inliner] Add a new Inliner that only inlines AlwaysInline functions …
gottesmm Mar 9, 2020
46bba7a
Memoize the ObjCBridgeable conformance for Swift.String (#30329)
tbkka Mar 11, 2020
c61ead1
ABI: Fix return type of TargetGenericRequirementDescriptor::getConfor…
slavapestov Mar 11, 2020
36deac4
[OSLogOptimization] Fix a crash in OSLogOptimization pass that happens
ravikandhadai Mar 11, 2020
9c5af74
[gardening] Eliminate some unneeded llvm:: for types that we already …
gottesmm Mar 11, 2020
89f3364
[gardening] Eliminate passing around of SILBuilders.
gottesmm Mar 11, 2020
9bf4386
AliasAnalysis: add a check for address-type builtin arguments
atrick Mar 11, 2020
59a9ee8
Merge pull request #30347 from ravikandhadai/oslog-crash-in-inout-ali…
swift-ci Mar 11, 2020
f7a2601
Merge pull request #30349 from gottesmm/pr-49bb268b53d240a211c7dec150…
swift-ci Mar 11, 2020
1c1fae3
Merge pull request #30341 from gottesmm/pr-91997a0048cde708ab0a33c5e5…
gottesmm Mar 11, 2020
f165659
Merge pull request #30350 from gottesmm/pr-72ad962e024d65f236dcbae49c…
swift-ci Mar 11, 2020
fbdf729
Merge pull request #30298 from gottesmm/pr-4e1212f1e4e3640e5037f11164…
gottesmm Mar 11, 2020
b3e8661
[build] set linker parameters in a single way (#30339)
edymtt Mar 11, 2020
4febc24
Merge pull request #30199 from atrick/fix-struct-let-prop
atrick Mar 11, 2020
90815f4
Merge pull request #30351 from atrick/fix-escape-assert
atrick Mar 11, 2020
63e4857
Merge pull request #30315 from patrickdes/master
compnerd Mar 11, 2020
1845524
Merge pull request #30343 from bitjammer/acgarland/rdar-60241049-ssge…
bitjammer Mar 11, 2020
2dc3390
Fix IRGen/big_types_corner_cases.swift test for arm64e (#30354)
kubamracek Mar 11, 2020
dab60f0
Partially revert "Keep gyb from messing up line endings on Windows"
beccadax Mar 11, 2020
305af04
IRGen: Split off WitnessTableBuilderBase from WitnessTableBuilder
slavapestov Mar 11, 2020
4e67eec
[CS] Move getUnopenedTypeOfReference out of TypeChecker
CodaFi Mar 11, 2020
266f3ad
[NFC] Use LookupTypeResult's public API
CodaFi Mar 11, 2020
3eb9b15
IRGen: Split up WitnessTableBuilder into {Fragile,Resilient}WitnessTa…
slavapestov Mar 11, 2020
84890b6
IRGen: Move a few things from WitnessTableBuilderBase to FragileWitne…
slavapestov Mar 11, 2020
52fe9ba
Merge pull request #30346 from slavapestov/fix-abi-header-nit
slavapestov Mar 11, 2020
4842e23
[semantic-arc-opts] Rename LiveRange::{general,ownership}ForwardingUse.
gottesmm Mar 10, 2020
09cfcbf
[semantic-arc-opts] Rename LiveRange::has{,Unknown}ConsumingUse.
gottesmm Mar 10, 2020
4ee87d4
Use the right generic signature when producing a substituted function…
rjmccall Mar 11, 2020
a0ad027
Merge pull request #30337 from nkcsgexi/walk-around-headers
nkcsgexi Mar 11, 2020
4ac3593
Merge pull request #30344 from bitjammer/acgarland/rdar-59500543-sg-o…
bitjammer Mar 11, 2020
94ffe9a
Merge pull request #30336 from xedin/adjust-pattern-locators
xedin Mar 11, 2020
d23082f
Merge pull request #30359 from CodaFi/unopened-reference-semantics
CodaFi Mar 11, 2020
000928d
Merge pull request #30360 from CodaFi/results-may-vary
swift-ci Mar 11, 2020
08c4e73
Merge pull request #30361 from slavapestov/witness-table-builder-cleanup
slavapestov Mar 11, 2020
52c5f72
[passmanager] Change SIL pass pipeline plan to use an LLVM YAML repre…
gottesmm Jan 10, 2020
29ff0ea
Merge pull request #30362 from rjmccall/subst-fn-type-interface-sig
rjmccall Mar 11, 2020
f0e61d9
Fix bug in SubstitutionMap::verify(), and add check that concrete con…
jckarter Mar 10, 2020
1cad4a6
SILGen: Generate protocol self-conformance substitutions with the sel…
jckarter Mar 11, 2020
404cc48
Adapt to API change that moved Sysroot attribute to CompileUnit
Teemperor Feb 14, 2020
cdd798b
Merge pull request #30319 from gottesmm/pr-9df4a4957e5ff72c67e090d388…
gottesmm Mar 11, 2020
e976aa9
Merge pull request #29111 from gottesmm/pr-d5a69902a451af42884c0e9cc4…
gottesmm Mar 11, 2020
a3979da
Merge pull request #30322 from DougGregor/function-builders-extras
DougGregor Mar 11, 2020
23f0d8c
Create an inherited conformance in SubstitutionMap::lookupConformance…
jckarter Mar 11, 2020
d06b839
Add -verify-all-substitution-maps frontend flag
jckarter Mar 11, 2020
fbc79d2
[CodeCompletion] Support SE-0253 callAsFunction()
rintaro Mar 11, 2020
4bc1d03
Runtime: Use accessor method to get TargetWitnessTable::Description
slavapestov Mar 11, 2020
df0493c
PrintAsObjC: allow users to specify bridging header relative path for…
nkcsgexi Mar 11, 2020
b62c9b6
[CS] Use getParameterType for KeyPath as function
hamishknight Mar 12, 2020
ddaad60
Merge pull request #30368 from rintaro/ide-completion-callasfunction-…
rintaro Mar 12, 2020
80820cc
Merge pull request #30367 from adrian-prantl/sdk-5.3
fredriss Mar 12, 2020
ee36c1c
RemoteMirror: Project some multi-payload enums (#30357)
tbkka Mar 12, 2020
484606d
[ConstraintSystem] Fix bug of argument reordering in matchCallArguments
omochi Mar 10, 2020
1a3c582
Fix typos in declarations of swift_ptrauth_key_associated_type and sw…
kubamracek Mar 12, 2020
000572d
Merge pull request #30371 from hamishknight/insider-information
hamishknight Mar 12, 2020
afa2440
Merge pull request #30370 from slavapestov/encapsulate-conformance-de…
slavapestov Mar 12, 2020
585c28d
Plumb a result SILType through SILGen's emitTransformedValue.
rjmccall Mar 12, 2020
faf4519
[semantic-arc-opts] Instead of tracking owned value introducers, trac…
gottesmm Mar 12, 2020
8b86507
Include Host.h for getProcessTriple
smeenai Mar 12, 2020
b6301c2
Include TargetInfo.h explicitly
smeenai Mar 12, 2020
f9129bf
Merge pull request #30372 from rjmccall/result-siltype-silgen-transform
swift-ci Mar 12, 2020
1d95b83
Merge pull request #30373 from gottesmm/pr-e0c4ada26f6653e4173eafc1b8…
gottesmm Mar 12, 2020
1a32db9
Merge pull request #30366 from nkcsgexi/59110975
nkcsgexi Mar 12, 2020
a058d99
Added dumping for SILBoxTypeRepr
gribozavr Mar 11, 2020
be80642
Removed a catch-all default implementation of ASTVisitor::visitTypeRepr
gribozavr Mar 11, 2020
9de3db9
Merge pull request #30377 from gribozavr/astvisitor
swift-ci Mar 12, 2020
cc0afcb
docs: document SILFunction attributes in SIL.rst
eeckstein Mar 12, 2020
ecd2e39
Merge pull request #30379 from eeckstein/doc
swift-ci Mar 12, 2020
719002b
Merge pull request #30365 from jckarter/substitution-map-mismatches
jckarter Mar 12, 2020
1260658
Merge pull request #30348 from omochi/fix-arg-reorder
xedin Mar 12, 2020
24a7620
[test/Index] Add a test case for cross-language USR generation fix on…
akyrtzi Mar 10, 2020
e506e4a
Merge pull request #30375 from smeenai/master
smeenai Mar 12, 2020
f8147f7
[CodeCompletion] Call argument label with value placeholder
rintaro Mar 12, 2020
884222e
[Serialization] Bump swiftmodule version number
xymus Mar 12, 2020
e3a8a96
[OSLogOptimization] Fix the symbolic closure folding code to only create
ravikandhadai Mar 12, 2020
5873b04
Renamed a variable to be more descriptive in computeNominalType()
gribozavr Mar 12, 2020
f1f7e66
Attempt to prevent CI failure with debug stdlib
benlangmuir Mar 12, 2020
10ad03f
Merge pull request #30385 from xymus/bump-swiftmodule-version
xymus Mar 12, 2020
a1bab0b
Merge pull request #30380 from akyrtzi/usr-generation-objc-prop-exter…
akyrtzi Mar 12, 2020
7b81701
Merge pull request #30387 from gribozavr/computeNominalType
swift-ci Mar 12, 2020
6efa9f3
[android][aarch64] Add Android to set of stable ABI testing targets.
drodriguez Mar 12, 2020
f1ccb39
Merge pull request #30388 from benlangmuir/debug-stdlib-dis
benlangmuir Mar 12, 2020
6adc3e6
Merge pull request #30358 from brentdax/gyblets
beccadax Mar 12, 2020
9225cfc
[CodeCompletion] Type annotation for call argument completions
rintaro Mar 12, 2020
bd62d5a
Merge pull request #30391 from drodriguez/android-test-add-to-abi-stable
compnerd Mar 13, 2020
3982bb4
Merge pull request #28612 from owenv/terminal_md_viewer
swift-ci Mar 13, 2020
52d3367
Merge pull request #30383 from rintaro/ide-completion-callarg
rintaro Mar 13, 2020
c315bff
Merge pull request #30386 from ravikandhadai/handle-in-guaranteed-cap…
ravikandhadai Mar 13, 2020
2986567
Merge remote-tracking branch 'apple/master' into merge/2020-03-13
kateinoigakukun Mar 13, 2020
fe80b6e
Use SWIFT_INCLUDE_TESTS flag to avoid building Block
kateinoigakukun Mar 13, 2020
5e2f22e
Bump cache version
kateinoigakukun Mar 13, 2020
81a696c
Merge branch 'swiftwasm' into merge/2020-03-13
kateinoigakukun Mar 13, 2020
abfa2f1
Fix rpath to point to platform specific lib path
kateinoigakukun Mar 13, 2020
9256629
Add Missing CMake flag to avoid building Block for wasm on macOS
kateinoigakukun Mar 13, 2020
2f6e028
Disable only building BlocksRuntimeStub when wasm
kateinoigakukun Mar 13, 2020
f75817a
Debug showing disk free
kateinoigakukun Mar 14, 2020
a5ae3d7
Revert "Debug showing disk free"
kateinoigakukun Mar 14, 2020
cd734d1
Cleanup build directory before uploading artifacts
kateinoigakukun Mar 14, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 6 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,12 @@ jobs:
- uses: actions/cache@v1
with:
path: ../build-cache
key: ${{ runner.os }}-sccache-v2
key: ${{ runner.os }}-sccache-v3
- name: Build Linux installable archive
run: ./utils/webassembly/ci.sh
run: |
./utils/webassembly/ci.sh
echo "Cleanup build directory to free disk space"
rm -rf ../build
- name: Upload Linux installable archive
uses: actions/upload-artifact@v1
with:
Expand All @@ -47,7 +50,7 @@ jobs:
- uses: actions/cache@v1
with:
path: ../build-cache
key: ${{ runner.os }}-sccache-v2
key: ${{ runner.os }}-sccache-v3
- name: Build macOS installable archive
run: ./utils/webassembly/ci.sh
- name: Upload macOS installable archive
Expand Down
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,6 @@ endif()
include(SwiftComponents)
include(SwiftHandleGybSources)
include(SwiftSetIfArchBitness)
include(SwiftSource)
include(AddSwift)
include(SwiftConfigureSDK)
include(SwiftComponents)
Expand Down
2 changes: 1 addition & 1 deletion benchmark/cmake/modules/AddSwiftBenchmarkSuite.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ endmacro()

macro(configure_sdks_darwin)
set(macosx_arch "x86_64")
set(iphoneos_arch "arm64" "armv7")
set(iphoneos_arch "arm64" "arm64e" "armv7")
set(appletvos_arch "arm64")
set(watchos_arch "armv7k")

Expand Down
26 changes: 9 additions & 17 deletions cmake/modules/AddSwift.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -742,26 +742,18 @@ function(_add_swift_host_library_single target)
# Include LLVM Bitcode slices for iOS, Watch OS, and Apple TV OS device libraries.
if(SWIFT_EMBED_BITCODE_SECTION)
if(${SWIFT_HOST_VARIANT_SDK} MATCHES "(I|TV|WATCH)OS")
# The two branches of this if statement accomplish the same end result
# We are simply accounting for the fact that on CMake < 3.16
# using a generator expression to
# specify a LINKER: argument does not work,
target_link_options(${target} PRIVATE
"LINKER:-bitcode_bundle"
"LINKER:-lto_library,${LLVM_LIBRARY_DIR}/libLTO.dylib")

# Please note that using a generator expression to fit
# this in a single target_link_options does not work
# (at least in CMake 3.15 and 3.16),
# since that seems not to allow the LINKER: prefix to be
# evaluated (i.e. it will be added as-is to the linker parameters)
if(CMAKE_VERSION VERSION_LESS 3.16)
target_link_options(${target} PRIVATE
"LINKER:-bitcode_bundle"
"LINKER:-lto_library,${LLVM_LIBRARY_DIR}/libLTO.dylib")

if(SWIFT_EMBED_BITCODE_SECTION_HIDE_SYMBOLS)
target_link_options(${target} PRIVATE
"LINKER:-bitcode_hide_symbols")
endif()
else()
if(SWIFT_EMBED_BITCODE_SECTION_HIDE_SYMBOLS)
target_link_options(${target} PRIVATE
"LINKER:-bitcode_bundle"
$<$<BOOL:SWIFT_EMBED_BITCODE_SECTION_HIDE_SYMBOLS>:"LINKER:-bitcode_hide_symbols">
"LINKER:-lto_library,${LLVM_LIBRARY_DIR}/libLTO.dylib")
"LINKER:-bitcode_hide_symbols")
endif()
endif()
endif()
Expand Down
4 changes: 2 additions & 2 deletions cmake/modules/DarwinSDKs.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ option(SWIFT_ENABLE_IOS32
TRUE)

if(SWIFT_ENABLE_IOS32)
set(SUPPORTED_IOS_ARCHS "armv7;armv7s;arm64")
set(SUPPORTED_IOS_ARCHS "armv7;armv7s;arm64;arm64e")
set(SUPPORTED_IOS_SIMULATOR_ARCHS "i386;x86_64")
else()
set(SUPPORTED_IOS_ARCHS "arm64")
set(SUPPORTED_IOS_ARCHS "arm64;arm64e")
set(SUPPORTED_IOS_SIMULATOR_ARCHS "x86_64")
endif()

Expand Down
1 change: 0 additions & 1 deletion cmake/modules/StandaloneOverlay.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@ include(SwiftSharedCMakeConfig)
include(AddSwift)
include(SwiftHandleGybSources)
include(SwiftConfigureSDK)
include(SwiftSource)
include(SwiftComponents)
include(DarwinSDKs)

Expand Down
1 change: 1 addition & 0 deletions cmake/modules/SwiftSetIfArchBitness.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ function(set_if_arch_bitness var_name)
set("${var_name}" "${SIA_CASE_32_BIT}" PARENT_SCOPE)
elseif("${SIA_ARCH}" STREQUAL "x86_64" OR
"${SIA_ARCH}" STREQUAL "arm64" OR
"${SIA_ARCH}" STREQUAL "arm64e" OR
"${SIA_ARCH}" STREQUAL "aarch64" OR
"${SIA_ARCH}" STREQUAL "powerpc64" OR
"${SIA_ARCH}" STREQUAL "powerpc64le" OR
Expand Down
6 changes: 4 additions & 2 deletions docs/ABI/Mangling.rst
Original file line number Diff line number Diff line change
Expand Up @@ -583,10 +583,12 @@ mangled in to disambiguate.
::

impl-function-type ::= type* 'I' FUNC-ATTRIBUTES '_'
impl-function-type ::= type* generic-signature 'I' PSEUDO-GENERIC? FUNC-ATTRIBUTES '_'
impl-function-type ::= type* generic-signature 'I' FUNC-ATTRIBUTES '_'

FUNC-ATTRIBUTES ::= CALLEE-ESCAPE? CALLEE-CONVENTION FUNC-REPRESENTATION? COROUTINE-KIND? PARAM-CONVENTION* RESULT-CONVENTION* ('Y' PARAM-CONVENTION)* ('z' RESULT-CONVENTION)?
FUNC-ATTRIBUTES ::= PATTERN-SUBS? INVOCATION-SUBS? PSEUDO-GENERIC? CALLEE-ESCAPE? CALLEE-CONVENTION FUNC-REPRESENTATION? COROUTINE-KIND? PARAM-CONVENTION* RESULT-CONVENTION* ('Y' PARAM-CONVENTION)* ('z' RESULT-CONVENTION)?

PATTERN-SUBS ::= 's' // has pattern substitutions
INVOCATION-SUB ::= 'I' // has invocation substitutions
PSEUDO-GENERIC ::= 'P'

CALLEE-ESCAPE ::= 'e' // @escaping (inverse of SIL @noescape)
Expand Down
171 changes: 170 additions & 1 deletion docs/SIL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -592,6 +592,46 @@ autorelease in the callee.
importer only imports non-native methods and types as ``throws``
when it is possible to do this automatically.

- SIL function types may provide a pattern signature and substitutions
to express that values of the type use a particular generic abstraction
pattern. Both must be provided together. If a pattern signature is
present, the component types (parameters, yields, and results) must be
expressed in terms of the generic parameters of that signature.
The pattern substitutions should be expressed in terms of the generic
parameters of the overall generic signature, if any, or else
the enclosing generic context, if any.

A pattern signature follows the ``@substituted`` attribute, which
must be the final attribute preceding the function type. Pattern
substitutions follow the function type, preceded by the ``for``
keyword. For example::

@substituted <T: Collection> (@in T) -> @out T.Element for Array<Int>

The low-level representation of a value of this type may not match
the representation of a value of the substituted-through version of it::

(@in Array<Int>) -> @out Int

Substitution differences at the outermost level of a function value
may be adjusted using the ``convert_function`` instruction. Note that
this only works at the outermost level and not in nested positions.
For example, a function which takes a parameter of the first type above
cannot be converted by ``convert_function`` to a function which takes
a parameter of the second type; such a conversion must be done with a
thunk.

Type substitution on a function type with a pattern signature and
substitutions only substitutes into the substitutions; the component
types are preserved with their exact original structure.

- In the implementation, a SIL function type may also carry substitutions
for its generic signature. This is a convenience for working with
applied generic types and is not generally a formal part of the SIL
language; in particular, values should not have such types. Such a
type behaves like a non-generic type, as if the substitutions were
actually applied to the underlying function type.

Coroutine Types
```````````````

Expand Down Expand Up @@ -815,7 +855,8 @@ Functions
::

decl ::= sil-function
sil-function ::= 'sil' sil-linkage? sil-function-name ':' sil-type
sil-function ::= 'sil' sil-linkage? sil-function-attribute+
sil-function-name ':' sil-type
'{' sil-basic-block+ '}'
sil-function-name ::= '@' [A-Za-z_0-9]+

Expand All @@ -827,6 +868,134 @@ The ``sil`` syntax declares the function's name and SIL type, and
defines the body of the function inside braces. The declared type must
be a function type, which may be generic.


Function Attributes
```````````````````
::

sil-function-attribute ::= '[canonical]'

The function is in canonical SIL even if the module is still in raw SIL.
::

sil-function-attribute ::= '[ossa]'

The function is in OSSA (ownership SSA) form.
::

sil-function-attribute ::= '[transparent]'

Transparent functions are always inlined and don't keep their source
information when inlined.
::

sil-function-attribute ::= '[' sil-function-thunk ']'
sil-function-thunk ::= 'thunk'
sil-function-thunk ::= 'signature_optimized_thunk'
sil-function-thunk ::= 'reabstraction_thunk'

The function is a compiler generated thunk.
::

sil-function-attribute ::= '[dynamically_replacable]'

The function can be replaced at runtime with a different implementation.
Optimizations must not assume anything about such a function, even if the SIL
of the function body is available.
::

sil-function-attribute ::= '[dynamic_replacement_for' identifier ']'
sil-function-attribute ::= '[objc_replacement_for' identifier ']'

Specifies for which function this function is a replacement.
::

sil-function-attribute ::= '[exact_self_class]'

The function is a designated initializers, where it is known that the static
type being allocated is the type of the class that defines the designated
initializer.
::

sil-function-attribute ::= '[without_actually_escaping]'

The function is a thunk for closures which are not actually escaping.
::

sil-function-attribute ::= '[' sil-function-purpose ']'
sil-function-purpose ::= 'global_init'

The implied semantics are:

- side-effects can occur any time before the first invocation.
- all calls to the same ``global_init`` function have the same side-effects.
- any operation that may observe the initializer's side-effects must be
preceded by a call to the initializer.

This is currently true if the function is an addressor that was lazily
generated from a global variable access. Note that the initialization
function itself does not need this attribute. It is private and only
called within the addressor.
::

sil-function-attribute ::= '[weak_imported]'

Cross-module references to this function should always use weak linking.
::

sil-function-attribute ::= '[available' sil-version-tuple ']'
sil-version-tuple ::= [0-9]+ ('.' [0-9]+)*

The minimal OS-version where the function is available.
::

sil-function-attribute ::= '[' sil-function-inlining ']'
sil-function-inlining ::= 'never'

The function is never inlined.
::

sil-function-inlining ::= 'always'

The function is always inlined, even in a ``Onone`` build.
::

sil-function-attribute ::= '[' sil-function-optimization ']'
sil-function-inlining ::= 'Onone'
sil-function-inlining ::= 'Ospeed'
sil-function-inlining ::= 'Osize'

The function is optimized according to this attribute, overriding the setting
from the command line.
::

sil-function-attribute ::= '[' sil-function-effects ']'
sil-function-effects ::= 'readonly'
sil-function-effects ::= 'readnone'
sil-function-effects ::= 'readwrite'
sil-function-effects ::= 'releasenone'

The specified memory effects of the function.
::

sil-function-attribute ::= '[_semantics "' [A-Za-z._0-9]+ '"]'

The specified high-level semantics of the function. The optimizer can use this
information to perform high-level optimizations before such functions are
inlined. For example, ``Array`` operations are annotated with semantic
attributes to let the optimizer perform redundant bounds check elimination and
similar optimizations.
::

sil-function-attribute ::= '[_specialize "' [A-Za-z._0-9]+ '"]'

Specifies for which types specialized code should be generated.
::

sil-function-attribute ::= '[clang "' identifier '"]'

The clang node owner.

Basic Blocks
~~~~~~~~~~~~
::
Expand Down
22 changes: 20 additions & 2 deletions docs/WindowsBuild.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ The following must take place in the **developer command prompt** (provided by V
2. Microsoft.VisualStudio.Component.Windows10SDK.17763
3. Microsoft.VisualStudio.Component.VC.Tools.x86.x64

The following [link](https://docs.microsoft.com/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2019)) helps in finding the component name given its ID for Visual Studio 2019.
The following [link](https://docs.microsoft.com/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2019) helps in finding the component name given its ID for Visual Studio 2019.

## Clone the repositories

Expand Down Expand Up @@ -92,7 +92,25 @@ Warning: Creating the above links usually requires administrator privileges. The

```cmd
md "S:\b\toolchain"
cmake -B "S:\b\toolchain" -G Ninja -S S:\toolchain\llvm -C S:\windows-swift\cmake\caches\Windows-x86_64.cmake -C S:\windows-swift\cmake\caches\org.compnerd.dt.cmake -DLLVM_ENABLE_ASSERTIONS=YES -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;cmark;swift;lldb;lld" -DLLVM_EXTERNAL_PROJECTS="cmark;swift" -DSWIFT_PATH_TO_LIBDISPATCH_SOURCE=S:\toolchain\swift-corelibs-libdispatch -DLLVM_ENABLE_PDB=YES -DLLDB_DISABLE_PYTHON=YES -DSWIFT_WINDOWS_x86_64_ICU_UC_INCLUDE="S:/Library/icu-64/usr/include" -DSWIFT_WINDOWS_x86_64_ICU_UC="S:/Library/icu-64/usr/lib/icuuc64.lib" -DSWIFT_WINDOWS_x86_64_ICU_I18N_INCLUDE="S:/Library/icu-64/usr/include" -DSWIFT_WINDOWS_x86_64_ICU_I18N="S:/Library/icu-64/usr/lib/icuin64.lib" -DCMAKE_INSTALL_PREFIX="C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr" -DPYTHON_EXECUTABLE=C:\Python27\python.exe -DSWIFT_BUILD_DYNAMIC_STDLIB=YES -DSWIFT_BUILD_DYNAMIC_SDK_OVERLAY=YES
cmake -B "S:\b\toolchain" -G Ninja -S S:\toolchain\llvm ^
-C S:\windows-swift\cmake\caches\Windows-x86_64.cmake ^
-C S:\windows-swift\cmake\caches\org.compnerd.dt.cmake ^
-DLLVM_ENABLE_ASSERTIONS=YES ^
-DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;cmark;swift;lldb;lld" ^
-DLLVM_EXTERNAL_PROJECTS="cmark;swift" ^
-DSWIFT_PATH_TO_LIBDISPATCH_SOURCE=S:\toolchain\swift-corelibs-libdispatch ^
-DLLVM_ENABLE_PDB=YES ^
-DLLVM_ENABLE_LIBEDIT=NO ^
-DLLDB_DISABLE_PYTHON=YES ^
-DSWIFT_WINDOWS_x86_64_ICU_UC_INCLUDE="S:/Library/icu-64/usr/include" ^
-DSWIFT_WINDOWS_x86_64_ICU_UC="S:/Library/icu-64/usr/lib/icuuc64.lib" ^
-DSWIFT_WINDOWS_x86_64_ICU_I18N_INCLUDE="S:/Library/icu-64/usr/include" ^
-DSWIFT_WINDOWS_x86_64_ICU_I18N="S:/Library/icu-64/usr/lib/icuin64.lib" ^
-DCMAKE_INSTALL_PREFIX="C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr" ^
-DPYTHON_EXECUTABLE=C:\Python27\python.exe ^
-DSWIFT_BUILD_DYNAMIC_STDLIB=YES ^
-DSWIFT_BUILD_DYNAMIC_SDK_OVERLAY=YES

ninja -C S:\b\toolchain
```

Expand Down
Loading