Commit Graph

1496 Commits

Author SHA1 Message Date
Doug Gregor
4ac125f41f [Evaluator] Introduce a simple request evaluator.
Meant as a replacement for the barely-started iterative type checker,
introduce a simpler "evaluator" that can evaluate individual requests
(essentially, function objects with some additional API), caching
results as appropriate and detecting cycles.
2018-06-01 08:56:18 -07:00
swift-ci
a5f7641e9e Merge remote-tracking branch 'origin/master' into master-next 2018-05-30 17:08:56 -07:00
Saleem Abdulrasool
6111d4deed Basic: move TaskQueue serialization
The implementation is small and would need to be replicated into the
default implementation.  Move the definition into the common TaskQueue
implementation.  This repairs the Windows build of the compiler.
2018-05-30 11:53:54 -07:00
swift-ci
141f04e2e2 Merge remote-tracking branch 'origin/master' into master-next 2018-05-25 17:09:00 -07:00
Benjamin Herzog
ac10fb3462 [Driver] Added process information to emitted messages
When providing the -parseable-output flag to the swift compiler, it will provide json formatted messages about tasks that run.
I added some optional usage information in form of user time, system time and maxrss to the output. This can be used by other tools using the compiler to get some insights about time and memory usage.
Since the output does not longer match processes run (in batch mode), I also added a real_pid field so the client could reason about jobs that belong together if needed.

rdar://39798231
2018-05-25 13:12:57 -07:00
swift-ci
9d02f94670 Merge remote-tracking branch 'origin/master' into master-next 2018-05-22 10:49:24 -07:00
Alex Hoppen
8998b27dd4 [incrParse] Add coloured output indicating which code got reused 2018-05-22 08:52:34 -07:00
swift-ci
336e42ee2c Merge remote-tracking branch 'origin/master' into master-next 2018-05-17 15:09:01 -07:00
Graydon Hoare
dcbbafae6f <rdar://40182303> Fix typo in error message, on failure to write stats file. 2018-05-17 13:03:07 -07:00
swift-ci
4a7da1bf52 Merge remote-tracking branch 'origin/master' into master-next 2018-05-07 16:49:12 -07:00
David Ungar
6226cd3f0e Use assertion for getpid and fix indenting. 2018-05-07 14:29:06 -07:00
David Ungar
c233169f01 Fix ownership error, use function not function_ref. 2018-05-05 09:55:54 -07:00
David Ungar
03c92421ae Dissolve the TaskHospice. 2018-05-04 14:17:57 -07:00
David Ungar
56ea6eed39 Change allBacks to allbacks. 2018-05-04 14:06:06 -07:00
David Ungar
6be1a07eb6 More improvements. 2018-05-02 15:45:15 -07:00
David Ungar
8017a30a3c Incorperate Graydon's improvements, phase 1. 2018-05-02 00:52:24 -07:00
David Ungar
f45716d810 More factoring & review fixes. 2018-05-01 18:22:56 -07:00
David Ungar
3adf427dbd More decomposition 2018-04-21 14:02:20 -07:00
David Ungar
6e1a05abb5 Factor event handling 2018-04-21 13:14:01 -07:00
David Ungar
2884f84e89 Factor out TaskFinisher 2018-04-21 12:19:18 -07:00
David Ungar
646b7dfa07 compiles w/o crashing w/ errors 2018-04-21 11:03:25 -07:00
David Ungar
24fc5a84ee Refactor Unix TaskQueue code. 2018-04-21 10:40:12 -07:00
swift-ci
1ffaa392aa Merge remote-tracking branch 'origin/master' into master-next 2018-04-18 14:29:17 -07:00
Graydon Hoare
c1682fa465 [Driver] <rdar://39504759> Continue demultiplexing subprocess output after initial read. 2018-04-18 11:52:11 -07:00
swift-ci
115f220410 Merge remote-tracking branch 'origin/master' into master-next 2018-04-11 22:15:16 -07:00
Saleem Abdulrasool
a80dd5b963 Basic: attempt to repair inverted dependencies
When linking on Linux, we would fail with unresolved symbol references
to swift::FrontendStatsTracer::getTraceFormatter<T>. The use of the
types, which are defined in swiftSIL occur in swiftBasic.  Provide
inline definitions of the constructors which cause the dependency on
some environments (e.g. Linux).
2018-04-10 10:40:10 -07:00
swift-ci
e86e3d2ac9 Merge remote-tracking branch 'origin/master' into master-next 2018-03-30 11:09:01 -07:00
Graydon Hoare
4b76ac0f6c [Stats] Interpret ru_maxrss differently by platform. 2018-03-30 00:37:55 -07:00
swift-ci
6cbb6bb362 Merge remote-tracking branch 'origin/master' into master-next 2018-03-23 18:24:26 -07:00
Ted Kremenek
fe75380a71 Merge pull request #15407 from tkremenek/driver-ver-4.2
[WIP] Added -swift-version support for 4.2
2018-03-23 18:10:08 -07:00
Ted Kremenek
3da51018b6 Teach ClangImporter to handle effective Swift version with minor release.
Needed to support Swift 4.2.
2018-03-23 00:30:44 -07:00
Ted Kremenek
fa730db1c2 Allow ‘getEffectiveLanguageVersion’ to take a minor component for 4.2
Further, when ‘4’ is specified on its own for the language
version without a minor component, assume ‘4.1’ as the
language version.
2018-03-21 14:40:31 -07:00
swift-ci
a3c7598831 Merge remote-tracking branch 'origin/master' into master-next 2018-03-21 07:49:19 -07:00
Saleem Abdulrasool
000ee2514d Basic: simplify conversion deduction
The `redirects` parameter is of type `ArrayRef` which is default constructed
through the special `None` type.  Use `None` rather than `nullptr` which would
attempt to create a 0-sized array with a `nullptr`.  This fixes the build on
Windows.
2018-03-20 09:39:20 -07:00
swift-ci
a4d211796b Merge remote-tracking branch 'origin/master' into master-next 2018-03-15 20:10:13 -07:00
Sho Ikeda
b506cbadb2 Merge pull request #15205 from ikesyo/stringextras-stringswitch
[NFC][StringExtras] Use llvm::StringSwitch in canBeArgumentLabel as with canBeMemberName
2018-03-16 11:58:28 +09:00
swift-ci
bb170e0aaa Merge remote-tracking branch 'origin/master' into master-next 2018-03-13 14:11:25 -07:00
Sho Ikeda
521b6598a7 [NFC][StringExtras] Use llvm::StringSwitch in canBeArgumentLabel as with canBeMemberName 2018-03-14 00:59:39 +09:00
Sho Ikeda
eaf33e0998 [gardening][lib/Basic] Replace typedef with using 2018-03-13 13:46:38 +09:00
swift-ci
4e3f00ae6e Merge remote-tracking branch 'origin/master' into master-next 2018-03-12 09:29:56 -07:00
Jordan Rose
c5dcf01aca Merge pull request #14814 from jrose-apple/dump-truck
Dump (some) filelists in the PrettyStackTrace
2018-03-12 09:13:20 -07:00
swift-ci
317272f0b3 Merge remote-tracking branch 'origin/master' into master-next 2018-03-10 14:48:58 -08:00
Saleem Abdulrasool
fae5182718 Merge pull request #15127 from compnerd/uuid
UUID
2018-03-10 14:48:11 -08:00
Jordan Rose
6243096b0b Dump input filelists in the PrettyStackTrace
This may help us reproduce a failing build when all we have is a build
log, and will become much more important in batch mode when we
/really/ need to know what ended up in what batch.

For now, this doesn't include /output/ filelists, because David's
about to mess with that code anyway to make things better around
supplementary outputs in batch mode. There is one weirdness there,
though, which is that ArgsToFrontendInputsConverter peeks at the
outputs to see whether we're doing single-threaded or multi-threaded
WMO.
2018-03-09 18:32:02 -08:00
Saleem Abdulrasool
5db0c06d0b Revert "Fix linker failures compiling Swift on Windows"
Restore the use of `UuidFromStringA`.  This avoids the unnecessary
round-tripping through mbtowcs and the dynamic allocation.  It also
fixes the UUID parsing, enabling tests to work on Windows.

This reverts commit 9414f46731.
2018-03-09 13:50:49 -08:00
swift-ci
36b254df94 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-03-08 01:58:15 -08:00
swift-ci
52a9d71e70 Merge remote-tracking branch 'origin/master' into master-next 2018-03-08 01:49:10 -08:00
Sho Ikeda
74ba135008 Merge pull request #15040 from ikesyo/gardening-not-empty
[gardening] Use `!empty()` over `size() > 0`
2018-03-08 18:47:12 +09:00
swift-ci
5193fa90ee Merge remote-tracking branch 'origin/master' into master-next 2018-03-07 22:09:10 -08:00
swift-ci
d04ffb2fa9 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-03-07 21:58:18 -08:00