Commit Graph

1293 Commits

Author SHA1 Message Date
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
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
Jordan Rose 41286bc676 Make JSON fix-it outputs be per-primary in batch mode. (#14995)
This means moving the output path into SupplementaryOutputPaths, and
using the same sort of diagnostic dispatching that serialized
diagnostics use. This is part of what's needed to run the migrator
in batch mode.
2018-03-09 11:58:54 -08:00
swift-ci e81189d6ec Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-03-06 20:58:17 -08:00
Slava Pestov 6065168928 Parse: Test that we only parse function bodies in primary files
I added this optimization a while ago but didn't add a test for it.
2018-03-06 19:42:43 -08:00
swift-ci 73f148384e Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-03-06 16:38:13 -08:00
Sho Ikeda 26d650292f [gardening] Use empty() over size() == 0 2018-03-05 14:43:13 +09:00
swift-ci b3282e7f25 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-03-04 01:18:05 -08:00
John McCall 6729f2f5ab Fix a simple bug.
Apparently I had not tested this with anything that actually
set a flag to 'false'.
2018-03-04 00:01:56 -05:00
swift-ci 9e935e1a9e Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-28 20:00:51 -08:00
Jordan Rose 3cd9f166bc Don't spend time initializing LLVM when running the driver (#14896)
Tiny start-up time optimization noticed while looking at how we do
PrettyStackTraceProgram. Also add PrettyStackTraceProgram to a few
more of our testing tools, via the new PROGRAM_START macro.
2018-02-28 19:56:19 -08:00
swift-ci 78a4e268b3 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-28 11:41:18 -08:00
David Ungar 9cc534a05a Merge pull request #14702 from davidungar/PR-18-7-OutputsInInputs
[Batch mode]: Move SupplementaryOutputs into each InputFile and use the proper supplementary output. (7)
2018-02-28 11:31:47 -08:00
David Ungar 4866df6dfd Move SupplementaryOutputs into each InputFile. 2018-02-28 09:41:49 -08:00
swift-ci 20aa946489 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-28 08:00:40 -08:00
John McCall 8d93cee012 Add a superclass reference to class descriptors. 2018-02-28 00:38:00 -05:00
swift-ci 32cebd1de4 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-26 08:57:55 -08:00
Joe Groff b00ea61945 SILGen: Lower keypath references to other modules' properties and subscripts as external keypath components.
This way we'll link against the key path component the other module provides instead of making fragile assumptions about its current implementation. Since external keypath lowering isn't fully implemented elsewhere in the compiler, this is enabled behind a staging flag.

external keypath staging
2018-02-23 12:58:19 -08:00
swift-ci 00fb7dc414 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-21 19:37:48 -08:00
Graydon Hoare 628c446fe3 [Stats] Add -profile-stats-{events,entities} 2018-02-21 16:22:48 -08:00
Graydon Hoare 7fe97c77c5 [Stats] Permit negative counters and deltas. 2018-02-21 14:49:24 -08:00
Graydon Hoare dd85e946e7 [Stats] Replace nonstandard SharedTimers with FrontendStatsTracers. 2018-02-21 14:49:24 -08:00
Graydon Hoare 819275945d [Stats] Replace RecursiveSharedTimer with FrontendStatsTracer. 2018-02-21 14:49:24 -08:00
Graydon Hoare deabc3fe65 [Stats] Add a recursive-timers registry to UnifiedStatsReporter. 2018-02-21 14:49:24 -08:00
Graydon Hoare 5f01c19d8e [Stats] Add support for tracing protocol conformances. 2018-02-21 14:49:24 -08:00
Graydon Hoare 76b82accbc [Stats] Simplify FrontendStatsTracer uses and formatter-definitions. 2018-02-21 14:49:24 -08:00
swift-ci 7a3969774e Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-16 12:58:13 -08:00
David Ungar e7ba87f613 Merge pull request #14230 from davidungar/PR-18-5-lldb-interface
[Batch Mode] Pass PrimarySpecificPaths through compiler. (4)
2018-02-15 23:09:46 -07:00
swift-ci 7df748c35a Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-15 17:38:55 -08:00
Graydon Hoare 7686a5af20 [BatchMode] Fix a bug in DummyTaskQueue uncovered by recent change. 2018-02-15 15:38:09 -08:00
David Ungar dec78900cd Only use supplementary outputs for first parallel-generated input. 2018-02-15 15:34:55 -07:00
David Ungar 1f9a4f3591 Pass around arguments for primary-specific filenames.
Get rid of IRGenOpts attributes that won’t work for batch mode and also remove fakeNamesStub.
2018-02-15 15:34:55 -07:00
David Ungar 1e32ff31b7 Move SupplementaryOutputPaths to Basic. 2018-02-15 15:32:26 -07:00
swift-ci 8501387ceb Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-13 18:38:03 -08:00
Ron Olson b96b7c3306 Fix for SR-6986; Swift does not build with Clang 6 (#14589)
Added decrement operators for the ArrayRefView class
2018-02-13 18:20:00 -08:00
swift-ci b45ac7f2c8 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-13 16:37:59 -08:00
Xi Ge 37f352fe41 sourcekitd: build Swift syntax tree more lazily than collecting parsed tokens. (#14578)
Before this patch, we have one flag (KeepSyntaxInfo) to turn on two syntax
functionalities of parser: (1) collecting parsed tokens for coloring and
(2) building syntax trees. Since sourcekitd is the only consumer of either of these
functionalities, sourcekitd by default always enables such flag.
However, empirical results show (2) is both heavier and less-frequently
needed than (1). Therefore, separating the flag to two flags makes more
sense, where CollectParsedToken controls (1) and BuildSyntaxTree
controls (2).

CollectingParsedToken is always enabled by sourcekitd because
formatting and syntax-coloring need it; however BuildSyntaxTree should
be explicitly switched on by sourcekitd clients.

resolves: rdar://problem/37483076
2018-02-13 16:27:12 -08:00
swift-ci 628775569b Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-12 23:18:02 -08:00
Mark Lacey 37009b0d8b [ConstraintSystem] Remove constraint propagation.
The current implementation isn't really useful in the face of generic
overloads. It has never been enabled by default, and isn't useful to
keep around if it is disabled. If we ever want to bring it back,
we know where to look!
2018-02-12 21:30:39 -08:00
swift-ci 7ee8d0e245 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-05 15:37:57 -08:00
Erik Eckstein 7ddfa9a9b6 mangling: remove the round-trip check for mangled runtime names (in the old mangling scheme).
This check doesn't make sense anymore because we are still making changes to the old remangler, but not to the old demangler.
Also, this check didn't work in most cases anyway.

rdar://problem/37241935
2018-02-05 14:02:18 -08:00
swift-ci 2b7218625c Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-30 08:38:47 -08:00
Davide Italiano caa4ab3b70 Merge pull request #14262 from graydon/reduce-layering-violation-in-stats-tracer
[Stats] Reduce layering violations in FrontendStatsTracer.
2018-01-30 08:23:34 -08:00
swift-ci 1a27794d91 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-30 06:58:14 -08:00
Joe Groff fdef6ef15f Merge pull request #13468 from jckarter/generic-requirement-details
Context descriptors
2018-01-30 06:49:16 -08:00
Graydon Hoare 9334779f33 [Stats] Reduce layering violations in FrontendStatsTracer. 2018-01-30 01:54:07 -08:00
swift-ci 1a3161ac85 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-30 00:08:37 -08:00
Rintaro Ishizaki 4087cff99d [JSONSerialization] Add ability to emit 'null' value 2018-01-30 15:23:12 +09:00
Joe Groff a7a3b17597 Replace nominal type descriptors with a hierarchy of context descriptors.
This new format more efficiently represents existing information, while
more accurately encoding important information about nested generic
contexts with same-type and layout constraints that need to be evaluated
at runtime. It's also designed with an eye to forward- and
backward-compatible expansion for ABI stability with future Swift
versions.
2018-01-29 16:19:25 -08:00
swift-ci d3532a32a0 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-24 17:41:35 -08:00