Revision tags: llvmorg-6.0.1-rc1 |
|
#
a3b5f71e |
| 16-Apr-2018 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Use export_as for autolinking frameworks
framework module SomeKitCore { ... export_as SomeKit }
Given the module above, while generting autolink information during codegen, clang should to emit
Use export_as for autolinking frameworks
framework module SomeKitCore { ... export_as SomeKit }
Given the module above, while generting autolink information during codegen, clang should to emit '-framework SomeKitCore' only if SomeKit was not imported in the relevant TU, otherwise it should use '-framework SomeKit' instead.
rdar://problem/38269782
llvm-svn: 330152
show more ...
|
#
ade321e7 |
| 10-Apr-2018 |
Nico Weber <nicolasweber@gmx.de> |
Revert r329684 (and follow-ups 329693, 329714). See discussion on https://reviews.llvm.org/D43578.
llvm-svn: 329739
|
#
c88deb10 |
| 10-Apr-2018 |
Andrew V. Tischenko <andrew.v.tischenko@gmail.com> |
-ftime-report switch support in Clang. The current support of the feature produces only 2 lines in report: -Some general Code Generation Time; -Total time of Backend Consumer actions. This patch ex
-ftime-report switch support in Clang. The current support of the feature produces only 2 lines in report: -Some general Code Generation Time; -Total time of Backend Consumer actions. This patch extends Clang time report with new lines related to Preprocessor, Include Filea Search, Parsing, etc. Differential Revision: https://reviews.llvm.org/D43578
llvm-svn: 329684
show more ...
|
#
2a8c18d9 |
| 06-Apr-2018 |
Alexander Kornienko <alexfh@google.com> |
Fix typos in clang
Found via codespell -q 3 -I ../clang-whitelist.txt Where whitelist consists of:
archtype cas classs checkk compres definit frome iff inteval ith lod metho
Fix typos in clang
Found via codespell -q 3 -I ../clang-whitelist.txt Where whitelist consists of:
archtype cas classs checkk compres definit frome iff inteval ith lod methode nd optin ot pres statics te thru
Patch by luzpaz! (This is a subset of D44188 that applies cleanly with a few files that have dubious fixes reverted.)
Differential revision: https://reviews.llvm.org/D44188
llvm-svn: 329399
show more ...
|
Revision tags: llvmorg-5.0.2, llvmorg-5.0.2-rc2 |
|
#
005c2e57 |
| 23-Mar-2018 |
Ben Langmuir <blangmuir@apple.com> |
[vfs] Don't bail out after a missing -ivfsoverlay file
This make -ivfsoverlay behave more like other fatal errors (e.g. missing -include file) by skipping the missing file instead of bailing out of
[vfs] Don't bail out after a missing -ivfsoverlay file
This make -ivfsoverlay behave more like other fatal errors (e.g. missing -include file) by skipping the missing file instead of bailing out of the whole compilation. This makes it possible for libclang to still provide some functionallity as well as to correctly produce the fatal error diagnostic (previously we lost the diagnostic in libclang since there was no TU to tie it to).
rdar://33385423
llvm-svn: 328337
show more ...
|
#
f040158d |
| 23-Mar-2018 |
Jordan Rose <jordan_rose@apple.com> |
Remove problematic PrettyStackTrace entry added in r328276
I'm not sure /why/ this is causing issues for libclang, but it is. Unbreak the buildbots since it's already consumed an hour of my time.
l
Remove problematic PrettyStackTrace entry added in r328276
I'm not sure /why/ this is causing issues for libclang, but it is. Unbreak the buildbots since it's already consumed an hour of my time.
llvm-svn: 328286
show more ...
|
#
1e879d8b |
| 23-Mar-2018 |
Jordan Rose <jordan_rose@apple.com> |
Sink PrettyDeclStackTrace down to the AST library
...and add some very basic stack trace entries for module building. This would have helped track down rdar://problem/38434694 sooner.
llvm-svn: 328
Sink PrettyDeclStackTrace down to the AST library
...and add some very basic stack trace entries for module building. This would have helped track down rdar://problem/38434694 sooner.
llvm-svn: 328276
show more ...
|
#
970b2819 |
| 20-Mar-2018 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
[Modules] Honor -fmodule-name when handling private framework modules
When skipping building the module for a private framework module, LangOpts.CurrentModule isn't enough for implict modules builds
[Modules] Honor -fmodule-name when handling private framework modules
When skipping building the module for a private framework module, LangOpts.CurrentModule isn't enough for implict modules builds; for instance, in case a private module is built while building a public one, LangOpts.CurrentModule doesn't reflect the -fmodule-name being passed down, but instead the module name which triggered the build.
Store the actual -fmodule-name in LangOpts.ModuleName and actually check a name was provided during compiler invocation in order to skip building the private module.
rdar://problem/38434694
llvm-svn: 328053
show more ...
|
Revision tags: llvmorg-5.0.2-rc1, llvmorg-6.0.0, llvmorg-6.0.0-rc3 |
|
#
9284931e |
| 12-Feb-2018 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
[Modules] Fix remapping from Foo.Private to Foo_Private to happen before typo correction
Typo correction is the last step here, remapping should come first.
rdar://problem/37351970
llvm-svn: 324965
|
Revision tags: llvmorg-6.0.0-rc2, llvmorg-6.0.0-rc1 |
|
#
84bc0a27 |
| 22-Dec-2017 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
[Modules] Map missing private submodules from Foo.Private to Foo_Private
In case `@import Foo.Private` fails because the submodule doesn't exist, look for `Foo_Private` (if available) and build/load
[Modules] Map missing private submodules from Foo.Private to Foo_Private
In case `@import Foo.Private` fails because the submodule doesn't exist, look for `Foo_Private` (if available) and build/load that module instead. In that process emit a warning and tell the user about the assumption.
The intention here is to assist all existing private modules owners (in ObjC and Swift) to migrate to the new `Foo_Private` syntax.
rdar://problem/36023940
llvm-svn: 321342
show more ...
|
Revision tags: llvmorg-5.0.1, llvmorg-5.0.1-rc3, llvmorg-5.0.1-rc2, llvmorg-5.0.1-rc1 |
|
#
729379a1 |
| 06-Oct-2017 |
Saleem Abdulrasool <compnerd@compnerd.org> |
Driver: hoist the `wchar_t` handling to the driver
Move the logic for determining the `wchar_t` type information into the driver. Rather than passing the single bit of information of `-fshort-wchar
Driver: hoist the `wchar_t` handling to the driver
Move the logic for determining the `wchar_t` type information into the driver. Rather than passing the single bit of information of `-fshort-wchar` indicate to the frontend the desired type of `wchar_t` through a new `-cc1` option of `-fwchar-type` and indicate the signedness through `-f{,no-}signed-wchar`. This replicates the current logic which was spread throughout Basic into the `RenderCharacterOptions`.
Most of the changes to the tests are to ensure that the frontend uses the correct type. Add a new test set under `test/Driver/wchar_t.c` to ensure that we calculate the proper types for the various cases.
llvm-svn: 315126
show more ...
|
#
abc3d04e |
| 12-Sep-2017 |
Raphael Isemann <teemperor@gmail.com> |
Use the VFS from the CompilerInvocation by default
Summary: The CompilerInstance should create its default VFS from its CompilerInvocation. Right now the user has to manually create the VFS before c
Use the VFS from the CompilerInvocation by default
Summary: The CompilerInstance should create its default VFS from its CompilerInvocation. Right now the user has to manually create the VFS before creating the FileManager even though `-ivfsoverlay file.yaml` was passed via the CompilerInvocation (which is exactly how we worked around this issue in `FrontendAction.cpp` so far).
This patch uses the invocation's VFS by default and also tests this behavior now from the point of view of a program that uses the clang API.
Reviewers: benlangmuir, v.g.vassilev
Reviewed By: v.g.vassilev
Subscribers: mgorny, cfe-commits, v.g.vassilev
Differential Revision: https://reviews.llvm.org/D37416
llvm-svn: 313049
show more ...
|
#
6d9bc278 |
| 09-Sep-2017 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix ownership of the MemoryBuffer in a FrontendInputFile.
This fixes a possible crash on certain kinds of corrupted AST file, but checking in an AST file corrupted in just the right way will be a ma
Fix ownership of the MemoryBuffer in a FrontendInputFile.
This fixes a possible crash on certain kinds of corrupted AST file, but checking in an AST file corrupted in just the right way will be a maintenance nightmare because the format changes frequently.
llvm-svn: 312851
show more ...
|
#
78137ec8 |
| 07-Sep-2017 |
Justin Lebar <jlebar@google.com> |
[CUDA] When compilation fails, print the compilation mode.
Summary: That is, instead of "1 error generated", we now say "1 error generated when compiling for sm_35".
This (partially) solves a usabi
[CUDA] When compilation fails, print the compilation mode.
Summary: That is, instead of "1 error generated", we now say "1 error generated when compiling for sm_35".
This (partially) solves a usability foogtun wherein e.g. users call a function that's only defined on sm_60 when compiling for sm_35, and they get an unhelpful error message.
Reviewers: tra
Subscribers: sanjoy, cfe-commits
Differential Revision: https://reviews.llvm.org/D37548
llvm-svn: 312736
show more ...
|
Revision tags: llvmorg-5.0.0, llvmorg-5.0.0-rc5 |
|
#
d30446fd |
| 31-Aug-2017 |
Boris Kolpackov <boris@codesynthesis.com> |
[modules] Add ability to specify module name to module file mapping (reapply)
Extend the -fmodule-file option to support the [<name>=]<file> value format. If the name is omitted, then the old semant
[modules] Add ability to specify module name to module file mapping (reapply)
Extend the -fmodule-file option to support the [<name>=]<file> value format. If the name is omitted, then the old semantics is preserved (the module file is loaded whether needed or not). If the name is specified, then the mapping is treated as just another prebuilt module search mechanism, similar to -fprebuilt-module-path, and the module file is only loaded if actually used (e.g., via import). With one exception: this mapping also overrides module file references embedded in other modules (which can be useful if module files are moved/renamed as often happens during remote compilation).
This override semantics requires some extra work: we now store the module name in addition to the file name in the serialized AST representation.
Reviewed By: rsmith
Differential Revision: https://reviews.llvm.org/D35020
llvm-svn: 312220
show more ...
|
#
db68911b |
| 30-Aug-2017 |
Victor Leschuk <vleschuk@accesssoftek.com> |
Revert r312105 [modules] Add ability to specify module name to module file mapping
Looks like it breaks win10 builder.
llvm-svn: 312112
|
#
7a71b4b6 |
| 30-Aug-2017 |
Boris Kolpackov <boris@codesynthesis.com> |
[modules] Add ability to specify module name to module file mapping
Extend the -fmodule-file option to support the [<name>=]<file> value format. If the name is omitted, then the old semantics is pre
[modules] Add ability to specify module name to module file mapping
Extend the -fmodule-file option to support the [<name>=]<file> value format. If the name is omitted, then the old semantics is preserved (the module file is loaded whether needed or not). If the name is specified, then the mapping is treated as just another prebuilt module search mechanism, similar to -fprebuilt-module-path, and the module file is only loaded if actually used (e.g., via import). With one exception: this mapping also overrides module file references embedded in other modules (which can be useful if module files are moved/renamed as often happens during remote compilation).
This override semantics requires some extra work: we now store the module name in addition to the file name in the serialized AST representation.
Reviewed By: rsmith
Differential Revision: https://reviews.llvm.org/D35020
llvm-svn: 312105
show more ...
|
Revision tags: llvmorg-5.0.0-rc4 |
|
#
734d8548 |
| 29-Aug-2017 |
Boris Kolpackov <boris@codesynthesis.com> |
[modules-ts] Omit submodule semantics for TS modules
If a TS module name has more than one component (e.g., foo.bar) then we erroneously activated the submodule semantics when encountering a module
[modules-ts] Omit submodule semantics for TS modules
If a TS module name has more than one component (e.g., foo.bar) then we erroneously activated the submodule semantics when encountering a module declaration in the module implementation unit (e.g., 'module foo.bar;').
Reviewed By: rsmith
Differential Revision: https://reviews.llvm.org/D35678
llvm-svn: 312007
show more ...
|
Revision tags: llvmorg-5.0.0-rc3, llvmorg-5.0.0-rc2 |
|
#
2db47198 |
| 08-Aug-2017 |
Nico Weber <nicolasweber@gmx.de> |
Use "foo-12345.o.tmp" instead of "foo.o-12345" as temporary file name.
This helps some tools that do things based on the output's extension.
For example, we got reports from users on Windows that h
Use "foo-12345.o.tmp" instead of "foo.o-12345" as temporary file name.
This helps some tools that do things based on the output's extension.
For example, we got reports from users on Windows that have a tool that scan a build output dir (but skip .obj files). The tool would keep the "foo.obj-12345" file open, and then when clang tried to rename the temp file to the final output filename, that would fail. By making the tempfile end in ".obj.tmp", tools like this could now have a rule to ignore .tmp files. This is a less ambitious reland of https://reviews.llvm.org/D36238
https://reviews.llvm.org/D36413
llvm-svn: 310376
show more ...
|
#
8e72a07e |
| 04-Aug-2017 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r309984, "Use "foo-12345.o" instead of "foo.o-12345" as temporary file name."
It generates MODULE-XXXXXXXXXXXX-%%%%%%%%.pcm, then GlobalModuleIndex.cpp is confused with the suffix ".pcm"
llv
Revert r309984, "Use "foo-12345.o" instead of "foo.o-12345" as temporary file name."
It generates MODULE-XXXXXXXXXXXX-%%%%%%%%.pcm, then GlobalModuleIndex.cpp is confused with the suffix ".pcm"
llvm-svn: 310030
show more ...
|
#
09f4992c |
| 03-Aug-2017 |
Nico Weber <nicolasweber@gmx.de> |
Use "foo-12345.o" instead of "foo.o-12345" as temporary file name.
This helps some tools that do things based on the output's extension.
For example, we got reports from users on Windows that have
Use "foo-12345.o" instead of "foo.o-12345" as temporary file name.
This helps some tools that do things based on the output's extension.
For example, we got reports from users on Windows that have a tool that scan a build output dir (but skip .obj files). The tool would keep the "foo.obj-12345" file open, and then when clang tried to rename the temp file to the final output filename, that would fail. By making the tempfile end in ".obj", tools like this will now skip the temp files as well.
https://reviews.llvm.org/D36238
llvm-svn: 309984
show more ...
|
Revision tags: llvmorg-5.0.0-rc1 |
|
#
dbafb6c3 |
| 29-Jun-2017 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Teach ASTReader how to read only the Preprocessor state from an AST file, not the ASTContext state.
We use this when running a preprocessor-only action on an AST file in order to avoid paying the ru
Teach ASTReader how to read only the Preprocessor state from an AST file, not the ASTContext state.
We use this when running a preprocessor-only action on an AST file in order to avoid paying the runtime cost of loading the extra information.
llvm-svn: 306760
show more ...
|
#
59d7b77b |
| 29-Jun-2017 |
Gheorghe-Teodor Bercea <gheorghe-teod.bercea@ibm.com> |
[OpenMP] Add support for auxiliary triple specification
Summary: Device offloading requires the specification of an additional flag containing the triple of the //other// architecture the code is be
[OpenMP] Add support for auxiliary triple specification
Summary: Device offloading requires the specification of an additional flag containing the triple of the //other// architecture the code is being compiled on if such an architecture exists. If compiling for the host, the auxiliary triple flag will contain the triple describing the device and vice versa.
Reviewers: arpith-jacob, sfantao, caomhin, carlo.bertolli, ABataev, Hahnfeld, jlebar, hfinkel, tstellar
Reviewed By: Hahnfeld
Subscribers: rengolin, cfe-commits
Differential Revision: https://reviews.llvm.org/D29339
llvm-svn: 306689
show more ...
|
#
f3f84616 |
| 29-Jun-2017 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Track the set of module maps read while building a .pcm file and reload those when preprocessing from that .pcm file.
llvm-svn: 306628
|
#
9565c75b |
| 19-Jun-2017 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Support non-identifier module names when preprocessing modules.
llvm-svn: 305758
|