Xi Ge
3103b5cec1
Frontend: set up output file .swiftsourceinfo
...
This patch will focus on teaching driver and frontend to emit this file.
The actual content and de-serialization parts will come later.
More details: https://forums.swift.org/t/proposal-emitting-source-information-file-during-compilation/28794
2019-09-24 13:52:17 -07:00
Harlan Haskins
c82c9b8210
[ModuleInterfaces] Remove references to 'parseable' interfaces everywhere
...
Now that we've settled on Module Interface as the name, let's remove the
vestiges of "Parseable Interfaces"
2019-09-13 14:55:48 -07:00
Harlan Haskins
dcbfe443ca
[ModuleInterfaces] ParseableInterfaceBuilder -> ModuleInterfaceBuilder
...
Rename ParseableInterfaceBuilder to accompany ModuleInterfaceLoader
2019-09-13 13:52:16 -07:00
moatom
2e95a0d265
Fix include guards
2019-06-02 12:10:43 +09:00
Harlan Haskins
366bbf48b9
[ParseableInterface] Add ‘forwarding modules’
...
A ‘forwarding module’ is a YAML file that’s meant to stand in for a .swiftmodule file and provide an up-to-date description of its dependencies, always using modification times.
When a ‘prebuilt module’ is first loaded, we verify that it’s up-to-date by hashing all of its dependencies. Since this is orders of magnitude slower than reading mtimes, we’ll install a `forwarding module` containing the mtimes of the now-validated dependencies.
2019-03-07 11:36:15 -08:00
Graydon Hoare
5e202697a3
[ModuleInterface] Mop up remaining "textual interface" terminology.
2018-10-11 23:56:19 -07:00
Graydon Hoare
6ea9accbed
[ModuleInterface] Add TextualInterfaceModuleLoader sketch.
2018-10-11 23:56:18 -07:00
Jordan Rose
73d5ebaad2
Rename "textual interface" to "parseable interface" ( #19713 )
...
We already have something called "module interfaces" -- it's the
generated interface view that you can see in Xcode, the interface
that's meant for developers using a library. Of course, that's also a
textual format. To reduce confusion, rename the new module stability
feature to "parseable [module] interfaces".
2018-10-04 17:49:55 -07:00
Jordan Rose
d9e47650d5
Add a new SourceFileKind and InputFileKind for textual interfaces
...
And test this by tweaking the rules to allow functions without
definitions, like SIL files.
2018-08-07 08:55:07 -07:00
Jordan Rose
b9ae66d768
[Frontend] Add a new -emit-interface-path option
...
...but don't hook it up to anything yet.
This is the very very start of the module stability / textual
interfaces feature described at
https://forums.swift.org/t/plan-for-module-stability/14551/
For now I've just made it a frontend option (not a driver option),
which is good enough for testing.
2018-07-20 16:40:51 -07:00
David Ungar
aa2f2eb239
Call forEachNonPrimaryInput directly instead of providing useless semantics for forEachInputNotProducingSupplementaryOutput.
2018-05-10 14:20:49 -07:00
David Ungar
02fcbf7226
optional pointer to consumer replaces NullDiagnosticConsumer placeholder
2018-05-09 18:09:40 -07:00
Slava Pestov
175b40919f
AST: Fewer headers include Expr.h, Module.h, Stmt.h
2018-04-26 22:55:26 -07:00
Michael Gottesman
26a569b33c
[stringref-upgrade] Change FrontendInputsAndOutputs::numberOfPrimaryInputsEndingWith to take a StringRef instead of a const char *.
...
This is in prepration for changing Strings.h to use StringLiteral.
2018-04-16 09:50:54 -07:00
David Ungar
4866df6dfd
Move SupplementaryOutputs into each InputFile.
2018-02-28 09:41:49 -08:00
David Ungar
488db9fb9b
Fix ReferencedNameTracker in preparation for batch mode.
2018-02-16 22:28:10 -07: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
David Ungar
ba4f2a84b4
Move supplementary outputs to SupplementaryOutputs in FrontendInputsAndOutputs.
2018-02-07 13:55:32 -08:00
David Ungar
c396a3a972
Don’t free the ASTContext if > 1 primary input.
2018-02-02 13:49:08 -08:00
David Ungar
614006bc4f
Move main outputs to FrontendInputsAndOutputs and InputFile
2018-02-01 11:55:08 -08:00
David Ungar
00da3e81ca
Reorder attributes in FrontendInputsAndOutputs
2018-01-30 18:55:01 -08:00
David Ungar
a9819b6e60
Renaming FrontendInputs -> FrontendInputsAndOutputs
...
Fix comment in ArtsToFrontendOptionsConverter re getOutputFilenamesFromCommandLineOrFilelist
2018-01-30 18:54:38 -08:00