David Ungar
e7a120f9b3
Avoid copying strings and PrimarySpecificPaths.
2018-02-15 15:34:55 -07:00
David Ungar
a2863a611f
Added explanation for emitIndexDataIfNeeded call.
2018-02-15 15:34:55 -07:00
David Ungar
fec411e9bc
reformatted
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
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
David Ungar
52b54dca95
Remove undefined behavior warning for null reference passed to emitLoadedModuleTraceIfNeeded.
2018-02-11 13:59:49 -08:00
David Ungar
ba4f2a84b4
Move supplementary outputs to SupplementaryOutputs in FrontendInputsAndOutputs.
2018-02-07 13:55:32 -08:00
David Ungar
7271f682bf
Tweaks to shorten performCompile* a bit more.
2018-02-05 19:30:26 -08:00
David Ungar
15011fbc2f
Change getSourceFileOfCodeToBeGenerated to getPrimaryOrMainSourceFile.
...
# Conflicts:
# lib/FrontendTool/FrontendTool.cpp
2018-02-05 17:47:48 -08:00
David Ungar
34df54a44a
Don’t extract ensureSILModuleIsSerialized.
2018-02-05 17:47:47 -08:00
David Ungar
679c6ae909
Allow for both generating an ObjC header & emitting index data.
2018-02-05 17:47:47 -08:00
David Ungar
d3f16229c0
Tweaks to shorten performCompile* a bit more.
...
# Conflicts:
# lib/FrontendTool/FrontendTool.cpp
2018-02-05 17:47:47 -08:00
David Ungar
5b443c0a44
Extract generateCode.
2018-02-05 17:47:47 -08:00
David Ungar
6234132ad3
Extract validateTBDIfNeeded.
2018-02-05 17:47:46 -08:00
David Ungar
7b74a5bdbb
Extract generateIR.
2018-02-05 17:47:46 -08:00
David Ungar
4789ba5ff7
Extract processCommandLineAndRunImmediately.
2018-02-05 17:47:46 -08:00
David Ungar
728080daf9
Add if needed test to emitIndexData.
2018-02-05 17:47:46 -08:00
David Ungar
a0fd766b94
Extract ensureSILModuleIsSerialized.
2018-02-05 17:47:45 -08:00
David Ungar
9df71766f3
Extract serializeSIB.
2018-02-05 17:47:36 -08:00
David Ungar
4c657c776e
Factor out writeSIL with fewer arguments and linkAllIfNeeded.
2018-02-05 17:06:23 -08:00
David Ungar
c062bb283f
Extract generateSILModules.
2018-02-05 17:06:23 -08:00
David Ungar
34bc84f9a2
Extract writeTBDIfNeeded.
2018-02-05 17:06:23 -08:00
David Ungar
7c5c20f27e
Extract setPrivateDiscrimatorIfNeeded.
2018-02-05 17:06:22 -08:00
David Ungar
f25c53026f
Extract performSILOptimizations.
2018-02-05 17:06:22 -08:00
David Ungar
01c1eb6830
Extract computeSerializationOptions
2018-02-05 17:06:22 -08:00
David Ungar
74c6f54853
Extract performMandatorySILPasses.
2018-02-05 17:06:21 -08:00
David Ungar
4252263cbe
Extract emitReferenceDependenciesIfNeeded
2018-02-05 17:06:21 -08:00
David Ungar
03dff910ca
Extract dumpASTIfNeeded.
2018-02-05 17:06:11 -08:00
David Ungar
e2cc07a7a1
Extract verifyGenericSignaturesIfNeeded.
2018-02-02 20:26:59 -08:00
David Ungar
4821e15795
Extract shouldActionOnlyParse.
2018-02-02 20:25:05 -08:00
David Ungar
401bba3945
Extract compileLLVMIR.
2018-02-02 20:24:49 -08:00
David Ungar
d32020ae10
Move test for emitting loaded module trace into emitLoadedModuleTrace.
...
# Conflicts:
# lib/FrontendTool/FrontendTool.cpp
2018-02-02 20:23:50 -08:00
David Ungar
2971332478
Extract precompileBridgingHeader
2018-02-02 13:52:15 -08:00
David Ungar
8cf8f75185
Move test for emitting loaded module trace into emitLoadedModuleTrace.
...
Laying groundwork for multiple primaries.
2018-02-02 13:50:53 -08:00
David Ungar
c396a3a972
Don’t free the ASTContext if > 1 primary input.
2018-02-02 13:49:08 -08:00
David Ungar
354a76ac4e
Merge pull request #14198 from davidungar/PR-18-3c-exp2
...
[Batch mode] Move frontend main output files to FrontendInputsAndOutputs. (1)
2018-02-01 16:42:10 -08:00
David Ungar
614006bc4f
Move main outputs to FrontendInputsAndOutputs and InputFile
2018-02-01 11:55:08 -08:00
Rintaro Ishizaki
fced748790
[Syntax] Represent missing optioanl nodes as nullptr ( #14300 )
...
Allocating RawSyntax/SyntaxData for missing optional node is a waste of
resource.
2018-01-31 19:24:00 +09:00
David Ungar
e006825d88
Move convertBufferNameFromLLVM_getFileOrSTDIN_toSwiftConventions deeper in the call stack.
2018-01-30 18:55:02 -08:00
David Ungar
a9819b6e60
Renaming FrontendInputs -> FrontendInputsAndOutputs
...
Fix comment in ArtsToFrontendOptionsConverter re getOutputFilenamesFromCommandLineOrFilelist
2018-01-30 18:54:38 -08:00
Graydon Hoare
ff104e4f11
Merge pull request #14059 from graydon/count-stats-stacks
...
[Stats] Expand FrontendStatsTracer to trace multiple entity-types.
2018-01-24 17:30:26 -08:00
David Ungar
ec2a9573cc
Rename FrontendInputs::AllFiles to AllInputs, getAllFiles to getAllInputs, etc.
2018-01-23 14:01:15 -08:00
Graydon Hoare
5f130a8d35
[Stats] Expand FrontendStatsTracer to trace multiple entity-types.
2018-01-21 23:37:54 -08:00
David Ungar
82d438663e
Merge pull request #13982 from davidungar/PR-18-3
...
Preparing CompilerInstance for batch mode.
2018-01-17 17:34:38 -08:00
David Ungar
2d7607f3b8
Remove redundant test: PSGIs.empty()
2018-01-17 13:45:27 -08:00
David Ungar
b55ec29c7a
Replaced !fileIsSIB test with true where it is applied to source files.
2018-01-17 12:33:07 -08:00
David Ungar
3c882f2841
Added else to: if (PSGIs.empty())
2018-01-17 12:27:12 -08:00
David Ungar
6196ad7460
Capitalized astGuaranteedToCorrespondToSIL.
2018-01-17 12:21:00 -08:00
David Ungar
4a0a7f2e82
Fix for emit_reference_dependencies_without_primary_file warning required after changes to introduce multiple primary files to CompilerInstance.
...
Revealed by test Frontend/dependencies.swift.
2018-01-17 11:58:11 -08:00
Graydon Hoare
42c4a4d452
[BatchMode] Thread the ModuleOrSourceFile of each Post-SILGen run through.
2018-01-17 11:58:05 -08:00