Skip to content
This repository was archived by the owner on Nov 1, 2021. It is now read-only.

Merge clang 401 #18

Merged
merged 2,050 commits into from
Jan 31, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2050 commits
Select commit Hold shift + click to select a range
1c77e0e
[SemaCXX] Add diagnostics to require_constant_initialization
Keno Jun 1, 2017
c86544f
Fixed broken test (strict-vtable-pointers)
prazek Jun 1, 2017
e397992
Add compatibility alias for -Wno-#warnings
dwblaikie Jun 1, 2017
10aee78
[ubsan] Add a check for pointer overflow UB
vedantk Jun 1, 2017
d2f4972
[Modules] Handle sanitizer feature mismatches when importing modules
vedantk Jun 1, 2017
0ea78f6
Escape filenames in module map line marker directives, to unbreak Win…
zygoloid Jun 1, 2017
d3c869c
Don't assume that a store source is a vector type just because the de…
RKSimon Jun 1, 2017
a86c471
[CGDebugInfo] Finalize SubPrograms when we're done with them
Keno Jun 1, 2017
48c1c1f
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
bcf8901
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
f71a92b
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
75f8194
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
c4aee8f
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
5264a2b
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
a5ec651
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 1, 2017
a85c08f
Relax test to try and appease builders. NFC.
vedantk Jun 1, 2017
d751aef
[AArch64] Add ARMv8.2-A FP16 vefctor intrinsics
Jun 1, 2017
12e8e17
[ThinLTO] Wire up ThinLTO and new PM
timshen91 Jun 1, 2017
8ba4e12
[CodeGen] Surround assertion with parentheses.
dcci Jun 1, 2017
5767b70
[ThinLTO] Add x86 requires to thin_link_bitcode. NFC.
timshen91 Jun 2, 2017
d78ae54
PR32848: There isn't necessarily a FileChanged or FileSkipped for eve…
zygoloid Jun 2, 2017
dc6683f
[Sema] Improve -Wstrict-prototypes diagnostic message for blocks.
ahatanaka Jun 2, 2017
d4d7415
Revert "[AArch64] Add ARMv8.2-A FP16 vefctor intrinsics"
vedantk Jun 2, 2017
146ecad
Support lazy stat'ing of files referenced by module maps.
zygoloid Jun 2, 2017
fae6a43
Minor fixes to for-loop warning.
Weverything Jun 2, 2017
4c7454b
Mangle __unaligned in Itanium ABI
Jun 2, 2017
4a86287
Remove file that I forgot to remove as part of rL304523
Jun 2, 2017
b2dc552
clang/test/CodeGenCXX/unaligned-member-qualifier.cpp: Satisfy x86_thi…
chapuni Jun 2, 2017
8679b18
Avoid calling report_fatal_error in the destructor of raw_fd_ostream
hyp Jun 2, 2017
5f3537b
Tie the macOS tests in test/Integration to the latest macOS SDK
hyp Jun 2, 2017
b4530cf
ASTPrinter: Objective-C method declarations don't need a space after
hyp Jun 2, 2017
d9cc152
[Modules] Fix use after scope.
d0k Jun 2, 2017
a7cab03
[OpenCL] Harden function pointer diagnostics.
bader Jun 2, 2017
6d1c14d
[ODRHash] Add support for TemplateArgument types.
Weverything Jun 2, 2017
0f2be18
Fix assertion failure if we can't deduce a template argument for a va…
zygoloid Jun 2, 2017
36a7841
Revert r304592
Weverything Jun 3, 2017
98cf823
[coroutines] Fix rebuilding of dependent coroutine parameters
EricWF Jun 3, 2017
1d0ef3c
[sanitizer-coverage] one more flavor of coverage: -fsanitize-coverage…
kcc Jun 3, 2017
2977397
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
d8912c8
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
3fb1501
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
6129830
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
5775ec4
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
0ed287e
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
df4522b
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
eef3881
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
cb78c69
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
97a0335
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
7775bf2
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
820dbe0
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
d032584
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 3, 2017
b68f6e7
Added missing break.
gkistanova Jun 3, 2017
4957517
CodeGen: fix section names for different file formats
compnerd Jun 3, 2017
79d8b9d
tests: silence -Wobjc-root-class warnings
compnerd Jun 3, 2017
914763f
Fixed warning: enum constant in boolean context.
gkistanova Jun 3, 2017
db12c72
Implement isDefined by call to isThisDeclarationADefinition.
spavloff Jun 4, 2017
2241c16
[clang-format] Don't align too long broken trailing comments
krasimirgg Jun 4, 2017
6235d9b
Revert "[sanitizer-coverage] one more flavor of coverage: -fsanitize-…
rengolin Jun 5, 2017
7c78710
Add support for #pragma clang section
javedabsar Jun 5, 2017
d5e5460
[OpenCL] Fix pipe size in TypeInfo.
Jun 5, 2017
d6f929a
[analyzer] Nullability: fix notes around synthesized ObjC property ac…
haoNoQ Jun 5, 2017
a3d66c2
[analyzer] Don't add arrow to the inlined function's decl when it has…
haoNoQ Jun 5, 2017
ffdad0d
[test] Fix baremetal test to allow any -resource-dir
mgorny Jun 5, 2017
1a6f43b
Rather than rejecting attempts to run preprocessor-only actions on AS…
zygoloid Jun 5, 2017
226dedc
Attempt to fix Windows buildbot failure due to mismatching directory …
zygoloid Jun 5, 2017
747fcbb
Factor out and unify emission of "module is unavailable" diagnostics.
zygoloid Jun 5, 2017
a38ba97
Fix memory leak exposed by r304726.
zygoloid Jun 5, 2017
532a634
Fix crash when an 'import a module' TypoCorrection has its Correction…
zygoloid Jun 5, 2017
9a007fc
Retain header search and preprocessing options from AST file when emi…
zygoloid Jun 6, 2017
e883f1b
PR33318: Add missing full-expression checking to static_assert expres…
zygoloid Jun 6, 2017
6d3b995
[Driver] Don't force .exe suffix for lld
smeenai Jun 6, 2017
c5df31a
Fix a mistake in the clang format documentation (BreakBeforeTernaryOp…
sylvestre Jun 6, 2017
84aa45a
[ARM] Add support for target("arm") and target("thumb").
fhahn Jun 6, 2017
069779a
clang-format: [JS] Correctly Indent Nested JavaScript Literals.
mprobst Jun 6, 2017
befb667
[clang] Remove double semicolons. NFC.
Jun 6, 2017
7934588
Print registered targets in clang's version information
DimitryAndric Jun 6, 2017
bc04990
[DOXYGEN] Corrected several typos and incorrect parameters descriptio…
Jun 6, 2017
9b57d72
Improve error recovery for missing 'template' keyword in contexts whe…
zygoloid Jun 7, 2017
260b4fb
[WebAssembly] Set MaxAtomicInlineWidth to 64.
Jun 7, 2017
2695ac7
Fix a couple of class template argument deduction crashes with libc++…
zygoloid Jun 7, 2017
7fedc70
Fixed warning: 'virtual void clang::ExternalASTSource::CompleteType(c…
gkistanova Jun 7, 2017
2c933f0
Reorder and reformat.
chapuni Jun 7, 2017
ba90c4b
Update libdeps to add BinaryFormat, introduced in r304864.
chapuni Jun 7, 2017
5c23293
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 7, 2017
69c3037
Added LLVM_FALLTHROUGH to address warning: this statement may fall th…
gkistanova Jun 7, 2017
98df4e7
[Driver] Add test to cover case when LSan is not supported
chefmax7 Jun 7, 2017
1f8a877
[ARM] Fix Neon vector type alignment to 64-bit
javedabsar Jun 7, 2017
1741b26
[Sema] Silence unused variable warning.
d0k Jun 7, 2017
54a73f9
[CodeGen] Add thumb-mode to target-features for arm/thumb triples.
fhahn Jun 7, 2017
0a5e4c3
Only print registered targets for `--version`
DimitryAndric Jun 7, 2017
ce80f8d
clang-format: [JS] recognize exported type definitions.
mprobst Jun 7, 2017
942d6e4
[clang-format] Fix alignment of preprocessor trailing comments
krasimirgg Jun 7, 2017
efaec8f
[mips] Add runtime options to enable/disable madd.fmt and msub.fmt
petar-jovanovic Jun 7, 2017
4cd85d1
Revert r304929 [mips] Add runtime options to enable/disable madd/sub.fmt
petar-jovanovic Jun 7, 2017
a2380ee
Finish revert of "r304929, [mips] Add runtime options to enable/disab…
Jun 7, 2017
410ea62
[c++1z] Support deducing B in noexcept(B).
zygoloid Jun 7, 2017
ce43b3d
When determining the target function of an explicit instantiation, make
rjmccall Jun 7, 2017
23a6e4b
Reapply r304929 [mips] Add runtime options to enable/disable madd/sub…
petar-jovanovic Jun 7, 2017
ef255fa
[ODRHash] Change the fall-back diagnostic error.
Weverything Jun 8, 2017
f7b9211
Weaken restriction in r304862 to allow implicit deduction guides to r…
zygoloid Jun 8, 2017
5cfaf04
Simplify.
zygoloid Jun 8, 2017
51062c1
[ODRHash] Make diagnostic message more readable.
Weverything Jun 8, 2017
72683c8
Catch invalid bitwise operation on vector of floats
spavloff Jun 8, 2017
14318c6
Improve diagnostics if friend function redefines file-level function.
spavloff Jun 8, 2017
ff4214d
Do not inherit default arguments for friend function in class template.
spavloff Jun 8, 2017
cb6021b
[libclang] Expose typedef and address space functions
svenvh Jun 8, 2017
511bc93
[sanitizer-coverage] Allow using KASAN instrumentation with sancov
ramosian-glider Jun 8, 2017
e1dfc7c
Frontend support for Nios2 target.
Jun 8, 2017
25e6400
[Sema] Remove unused field from OverloadCandidate.
gburgessiv Jun 8, 2017
0d9c750
Added llvm_unreachable to make sure the switch is always exhaustive.
gkistanova Jun 8, 2017
230a02e
Revert "Frontend support for Nios2 target"
Jun 8, 2017
c792502
[Sema] Refactor OverloadCandidate::BuiltinTypes. NFC.
gburgessiv Jun 8, 2017
97a93ed
[clang] Fix format specifiers fixits
alexander-shaposhnikov Jun 8, 2017
1fc30fc
[ASTMatchers] Add support for boolean literals
Lekensteyn Jun 8, 2017
6b87ef8
[ASTMatchers] Add support for floatLiterals
Lekensteyn Jun 8, 2017
32dfbce
[ASTMatchers] Add clang-query support for equals matcher
Lekensteyn Jun 8, 2017
24708f6
[ASTMatchers] temporary disable tests with floating suffix
Lekensteyn Jun 8, 2017
6bba2ec
[sanitizer-coverage] one more flavor of coverage: -fsanitize-coverage…
kcc Jun 8, 2017
12bfbed
Represent debug information compression type fully
compnerd Jun 9, 2017
4ed69c2
[libclang] Introduce a new parsing option 'CXTranslationUnit_SingleFi…
akyrtzi Jun 9, 2017
772553c
Remove 'Filename' parameter from BeginSourceFileAction.
zygoloid Jun 9, 2017
c8d06a9
Speed up preamble loading
erikjv Jun 9, 2017
434f932
Reapply "Frontend support for Nios2 target"
Jun 9, 2017
fd393d9
Revert of r305066 "Reapply Frontend support for Nios2 target"
Jun 9, 2017
94b4418
[DebugInfo] Add kind of ImplicitParamDecl for emission of FlagObjectP…
alexey-bataev Jun 9, 2017
52709f3
[DebugInfo] Fix comment, NFC.
alexey-bataev Jun 9, 2017
3148514
support operator keywords used in Windows SDK
Jun 9, 2017
38ed6a1
Repair 2010-05-31-palignr.c test
vgvassilev Jun 9, 2017
ce2bd42
[ASTMatchers] Fix use after free.
d0k Jun 9, 2017
ae2de79
Add #pragma clang module build/endbuild pragmas for performing a modu…
zygoloid Jun 9, 2017
f24f500
Bringt back -triple so the test passes on non-x86.
d0k Jun 9, 2017
431cd23
[ODRHash] Skip inline namespaces when hashing.
Weverything Jun 9, 2017
56441b2
[ODRHash] Add support for TemplateArgument types.
Weverything Jun 9, 2017
f0e160d
Add -frewrite-imports flag.
zygoloid Jun 9, 2017
5e7491e
[libclang] Merge multiple availability clauses when getting the platf…
hyp Jun 9, 2017
75cf4f5
[modules] Fix that global delete operator get's assigned to a submodule.
vgvassilev Jun 9, 2017
9f7d1a4
[modules] D29951: Load lazily the template specialization in multi-mo…
vgvassilev Jun 9, 2017
2399fff
Attempt to fix shared library build: RewriteFrontend depends on Seria…
zygoloid Jun 9, 2017
dd4ce29
Revert r305117
hyp Jun 9, 2017
a991320
[clang] Cleanup fixit.c
alexander-shaposhnikov Jun 9, 2017
bc18067
27037: Use correct CVR qualifier on an upcast on method pointer call
zygoloid Jun 9, 2017
6feeb00
Support operator keywords used in Windows SDK(fix ubsan)
Jun 9, 2017
4bd0ca0
Revert r305110 to fix buildbot
Weverything Jun 9, 2017
c324dff
[clang] Implement -Wcast-qual for C++
LebedevRI Jun 10, 2017
d765951
Revert "[clang] Implement -Wcast-qual for C++"
LebedevRI Jun 10, 2017
b9a2469
Driver: pass along [-]-[no]compress-debug-sections unfiltered
compnerd Jun 11, 2017
cec25f7
Driver: add support for `-gz` and `-gz=`
compnerd Jun 11, 2017
4cea5b6
test: attempt to repair build bots
compnerd Jun 11, 2017
414d1fa
Don't crash when forming a destructor name on an incomplete type.
rjmccall Jun 11, 2017
8a53b20
Revert r305164/5/7.
djasper-gh Jun 12, 2017
c90ce64
[Sema][C++1z] Ensure binding in dependent range for have non-null type
epilk Jun 12, 2017
e2037d4
[Sema] Use the right FoldingSet.
gburgessiv Jun 12, 2017
2b3c4c9
[analyzer] Fix a crash when an ObjC object is constructed in AllocaRe…
haoNoQ Jun 12, 2017
8b39c20
Add regression test for r305179.
yrnkrn Jun 12, 2017
e7b9958
Address David Blaikie comment by replacing grep with FileCheck.
yrnkrn Jun 12, 2017
9517407
[ubsan] Detect invalid unsigned pointer index expression (clang)
vedantk Jun 12, 2017
d8e9328
Recommit r305117: [libclang] Merge multiple availability clauses when
hyp Jun 12, 2017
1bafd1e
Correct debug info bit offset calculation for big-endian targets
rnk Jun 12, 2017
80987ad
IR: Replace the "Linker Options" module flag with "llvm.linker.option…
pcc Jun 12, 2017
7021b25
Revert r303316, a change to ExprConstant to evaluate function arguments.
nlewycky Jun 12, 2017
7b936e3
[ODRHash] Add diagnostic messages for typedef and type alias.
Weverything Jun 12, 2017
c700ae6
Revert r301742 which made ExprConstant checking apply to all full-exprs.
nlewycky Jun 12, 2017
0ea0862
[docs] Add some ubsan changes to the release notes
vedantk Jun 13, 2017
3e1f3e7
clang-format: add option to merge empty function body
francoisferrand Jun 13, 2017
68584d4
Revert "Revert r301742 which made ExprConstant checking apply to all …
rovka Jun 13, 2017
34f988d
[clang-format] Document the StartOfTokenColumn parameter, NFC
krasimirgg Jun 13, 2017
d725462
Add comma to comment.
doru1004 Jun 13, 2017
fd88fa1
Align definition of DW_OP_plus with DWARF spec [2/3]
fhahn Jun 13, 2017
6c70606
Fix spurious Wunused-lambda-capture warning
kongy Jun 13, 2017
dd0f1b0
Preserve cold attribute for function decls
david-xl Jun 13, 2017
4249ebf
[ODRHash] Add TemplateArgument kind to hash.
Weverything Jun 13, 2017
5d7ff3b
[ODRHash] Hash Expr for TemplateArgument::Expression
Weverything Jun 14, 2017
3e9def3
[ODRHash] Hash Template and TemplateExpansion in TemplateArgument.
Weverything Jun 14, 2017
21d1164
[ODRHash] Remove debugging code from r305361
Weverything Jun 14, 2017
49b5e3a
[coroutines] Fix co_await for range statement
EricWF Jun 14, 2017
87067b9
Fix for Itanium mangler issue with templates
dmpolukhin Jun 14, 2017
1504a42
Function with unparsed body is a definition
spavloff Jun 14, 2017
1c45048
Reverted 305379 (Function with unparsed body is a definition)
spavloff Jun 14, 2017
d96c7f9
clang-format: Add CompactNamespaces option
francoisferrand Jun 14, 2017
6e3d1bf
Corrected some comment typos; NFC.
AaronBallman Jun 14, 2017
6bdfced
Be more strict when checking the -flto option value
yamaguchi1024 Jun 14, 2017
1bc0fd6
Define _GNU_SOURCE for rtems c++
jyknight Jun 14, 2017
d3bd267
[PPC] Enhance altivec conversion function macros implementation.
Jun 14, 2017
232b72d
AST: Add missing break at end of switch
dexonsmith Jun 14, 2017
bdfd67a
[Preprocessor]Correct Macro-Arg allocation of StringifiedArguments,
Jun 14, 2017
7854498
Handle -ast-dump-all when passed as the only option.
AaronBallman Jun 15, 2017
fa041f2
Fix LexerTest signed/unsigned comparison.
Jun 15, 2017
ddca99b
[clang-format] Allow git-clang-format to handle empty extensions.
EricWF Jun 15, 2017
5ae017d
[Basic] Use a static_assert instead of using the old array of size -1…
topperc Jun 15, 2017
8e8d2bb
[ODRHash] Hash TemplateArgument::Pack and TemplateTypeParmType
Weverything Jun 15, 2017
caaf0f1
Correct documentation about the AfterClass clang-format option
EricWF Jun 15, 2017
fc4d918
Revert "Define _GNU_SOURCE for rtems c++"
djasper-gh Jun 15, 2017
23e042f
Revert "Load lazily the template specialization in multi-module setups."
vgvassilev Jun 15, 2017
8660d55
[analyzer]: Improve test handling with multiple constraint managers
ddcc Jun 15, 2017
1f5cfa9
Apply summary-based dead stripping to regular LTO modules with summar…
pcc Jun 15, 2017
d5b5a8f
LexerTest memory leak fix-
Jun 15, 2017
e512155
[coroutines] Allow co_await and co_yield expressions that return an l…
EricWF Jun 15, 2017
50a50fe
[coroutines] Remove pass-through operator co_await; Replace it with t…
EricWF Jun 15, 2017
4648a79
[index] Index static_assert declarations
hyp Jun 15, 2017
d9e35a6
Added braces to work around gcc warning in googletest: suggest explic…
gkistanova Jun 15, 2017
4d2e73a
[index] Record C++17 global binding declarations
hyp Jun 15, 2017
0955a48
[Completion] Code complete the members for a dependent type after a '::'
hyp Jun 15, 2017
dd646d6
[ODRHash] Hash VarDecl members.
Weverything Jun 16, 2017
d9557ee
[XRay][clang] Support capturing the implicit `this` argument to C++ c…
deanberris Jun 16, 2017
ff94b5e
[ubsan] PR33081: Skip the standard type checks for volatile
vedantk Jun 16, 2017
6adac51
Expand vector oparation to as IR constants, PR28129.
dtemirbulatov Jun 16, 2017
2aee8d9
Fix a bug that warnings generated with -M or -MM flags
yamaguchi1024 Jun 16, 2017
ed8e550
[ubsan] docs: Add a note about pointers to volatile
vedantk Jun 16, 2017
2d736e0
Ignore return value in test.
djasper-gh Jun 16, 2017
fb40328
[PR33394] Avoid lexing editor placeholders when Clang is used only
hyp Jun 16, 2017
556bf22
Killing a tab and some other spurious whitespace; NFC.
AaronBallman Jun 16, 2017
308da19
[index] Fix typo: inferface -> interface
MarkZ3 Jun 16, 2017
0c8ec43
[Driver] Do a PATH lookup if needed when using -no-canonical-prefixes
petrhosek Jun 16, 2017
30060bf
Call setMustBuildLookupTable on TagDecls in ExternalASTMerger
lhames Jun 17, 2017
d5b2509
CodeGen: make the type match the comment for a libcall
compnerd Jun 17, 2017
52b6305
[analyzer] Teach CloneDetection about Qt Meta-Object Compiler
xiangzhai Jun 19, 2017
1150523
clang-format: Add capability to format the diff on save in vim.
djasper-gh Jun 19, 2017
57fae47
clang-format: Handle "if constexpr".
djasper-gh Jun 19, 2017
2d7e549
clang-format: Improve understanding of combined typedef+record declar…
djasper-gh Jun 19, 2017
66bdcfb
[analyzer] Fix logical not for pointers with different bit width
Jun 19, 2017
cf092e8
[driver][macOS] Pick the system version for the deployment target
hyp Jun 19, 2017
6ee5ac6
Add missing OS check to r305678
hyp Jun 19, 2017
121eb46
[NFC] Refactor DiagnosticRenderer to use FullSourceLoc
cddouma-arm Jun 19, 2017
87050d0
Move the test from r305678 to a separte file with 'REQUIRES: system-d…
hyp Jun 19, 2017
2733771
Revert "[NFC] Refactor DiagnosticRenderer to use FullSourceLoc"
cddouma-arm Jun 19, 2017
0e83c02
clang-format: Fix C99 designated initializers corner cases
francoisferrand Jun 19, 2017
1b12bf4
CodeGen: Cast temporary variable to proper address space
yxsamliu Jun 19, 2017
2a29f3b
[Parser][ObjC] Use an artificial EOF token while parsing lexed ObjC m…
hyp Jun 19, 2017
b8c6e47
[Clang] Handle interaction of -pg and no_instrument_function attribute.
m-gupta Jun 19, 2017
9e9d06a
Typo fix: appropo -> apropos. NFC.
AaronBallman Jun 19, 2017
ff84b94
[docs] Coverage: document issue with the BFD linker
vedantk Jun 19, 2017
de5743d
[docs] Coverage: Improve the wording a bit
vedantk Jun 19, 2017
0be2e49
Support non-identifier module names when preprocessing modules.
zygoloid Jun 19, 2017
cdc846b
Turn off "disable free" mode when preprocessing imported module files in
zygoloid Jun 20, 2017
1411862
Add a subgroup of c++1z-compat to enable and disable the warning about
ahatanaka Jun 20, 2017
6cd9d89
[analyzer] Check NULL pointer dereference issue for memset function
xiangzhai Jun 20, 2017
a1efca5
[analyzer] Teach CloneDetection about Qt Meta-Object Compiler to filt…
xiangzhai Jun 20, 2017
61d542a
[OpenCL] Fix OpenCL and SPIR version metadata generation.
bader Jun 20, 2017
7a2305c
[preprocessor] When preprocessor option 'SingleFileParseMode' is enab…
akyrtzi Jun 20, 2017
65043f3
[OpenCL] Diagnose scoped address-space qualified variables
Jun 20, 2017
130156f
D31187: Fix removal of out-of-line definitions.
vgvassilev Jun 20, 2017
d77a5c3
Split the expectations in tests from r305719 over multiple lines to
hyp Jun 20, 2017
026fbae
Add a missing '[' to the tests from r305719
hyp Jun 20, 2017
f5f37ba
[GSoC] Flag value completion for clang
yamaguchi1024 Jun 20, 2017
c35b73c
Fix for Bug 33471: Preventing operator auto from resolving to a templ…
Jun 20, 2017
6e3f80d
[AArch64] ADD ARMv.2-A FP16 vector intrinsics
Jun 20, 2017
d7a0a9e
Merge branch 'clang_upstream_4_0_1' into merge_clang_401
juj Jul 18, 2017
1067bda
Update JSBackend from LLVM 4.0 to LLVM 4.0.1 API.
juj Jul 19, 2017
188f8ed
Merge remote-tracking branch 'remotes/origin/incoming' into merge_cla…
juj Oct 24, 2017
6fc875a
Merge branch 'incoming' into merge_clang_401
juj Jan 8, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
71 changes: 43 additions & 28 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
list(GET CONFIG_OUTPUT 3 INCLUDE_DIR)
list(GET CONFIG_OUTPUT 4 LLVM_OBJ_ROOT)
list(GET CONFIG_OUTPUT 5 MAIN_SRC_DIR)
list(GET CONFIG_OUTPUT 6 LLVM_CMAKE_PATH)
list(GET CONFIG_OUTPUT 6 LLVM_CONFIG_CMAKE_PATH)

if(NOT MSVC_IDE)
set(LLVM_ENABLE_ASSERTIONS ${ENABLE_ASSERTIONS}
Expand All @@ -57,6 +57,10 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
set(LLVM_BINARY_DIR ${LLVM_OBJ_ROOT} CACHE PATH "Path to LLVM build tree")
set(LLVM_MAIN_SRC_DIR ${MAIN_SRC_DIR} CACHE PATH "Path to LLVM source tree")

# Normalize LLVM_CMAKE_PATH. --cmakedir might contain backslashes.
# CMake assumes slashes as PATH.
file(TO_CMAKE_PATH ${LLVM_CONFIG_CMAKE_PATH} LLVM_CMAKE_PATH)

find_program(LLVM_TABLEGEN_EXE "llvm-tblgen" ${LLVM_TOOLS_BINARY_DIR}
NO_DEFAULT_PATH)

Expand All @@ -78,6 +82,7 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
endif()

option(LLVM_ENABLE_WARNINGS "Enable compiler warnings." ON)
option(LLVM_INSTALL_TOOLCHAIN_ONLY
"Only include toolchain files in the 'install' target." OFF)

Expand Down Expand Up @@ -181,6 +186,8 @@ if (LIBXML2_FOUND)
set(CLANG_HAVE_LIBXML 1)
endif()

find_package(Z3 4.5)

include(CheckIncludeFile)
check_include_file(sys/resource.h CLANG_HAVE_RLIMITS)

Expand Down Expand Up @@ -325,10 +332,6 @@ if (APPLE)
endif()
endif()

configure_file(
${CLANG_SOURCE_DIR}/include/clang/Config/config.h.cmake
${CLANG_BINARY_DIR}/include/clang/Config/config.h)

include(CMakeParseArguments)
include(AddClang)

Expand Down Expand Up @@ -356,6 +359,10 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
PATTERN "*.inc"
PATTERN "*.h"
)

install(PROGRAMS utils/bash-autocomplete.sh
DESTINATION share/clang
)
endif()

add_definitions( -D_GNU_SOURCE )
Expand All @@ -364,21 +371,21 @@ option(CLANG_BUILD_TOOLS
"Build the Clang tools. If OFF, just generate build targets." ON)

option(CLANG_ENABLE_ARCMT "Build ARCMT." ON)
if (CLANG_ENABLE_ARCMT)
set(ENABLE_CLANG_ARCMT "1")
else()
set(ENABLE_CLANG_ARCMT "0")
endif()

option(CLANG_ENABLE_STATIC_ANALYZER "Build static analyzer." ON)
if (CLANG_ENABLE_STATIC_ANALYZER)
set(ENABLE_CLANG_STATIC_ANALYZER "1")
else()
set(ENABLE_CLANG_STATIC_ANALYZER "0")

option(CLANG_ANALYZER_BUILD_Z3
"Build the static analyzer with the Z3 constraint manager." OFF)

if(NOT CLANG_ENABLE_STATIC_ANALYZER AND (CLANG_ENABLE_ARCMT OR CLANG_ANALYZER_BUILD_Z3))
message(FATAL_ERROR "Cannot disable static analyzer while enabling ARCMT or Z3")
endif()

if (NOT CLANG_ENABLE_STATIC_ANALYZER AND CLANG_ENABLE_ARCMT)
message(FATAL_ERROR "Cannot disable static analyzer while enabling ARCMT")
if(CLANG_ANALYZER_BUILD_Z3)
if(Z3_FOUND)
set(CLANG_ANALYZER_WITH_Z3 1)
else()
message(FATAL_ERROR "Cannot find Z3 header file or shared library")
endif()
endif()

if(CLANG_ENABLE_ARCMT)
Expand Down Expand Up @@ -415,11 +422,6 @@ add_subdirectory(tools)
add_subdirectory(runtime)

option(CLANG_BUILD_EXAMPLES "Build CLANG example programs by default." OFF)
if (CLANG_BUILD_EXAMPLES)
set(ENABLE_CLANG_EXAMPLES "1")
else()
set(ENABLE_CLANG_EXAMPLES "0")
endif()
add_subdirectory(examples)

if(APPLE)
Expand Down Expand Up @@ -515,6 +517,10 @@ if (CLANG_ENABLE_BOOTSTRAP)
set(STAMP_DIR ${CMAKE_CURRENT_BINARY_DIR}/${NEXT_CLANG_STAGE}-stamps/)
set(BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/${NEXT_CLANG_STAGE}-bins/)

if(BOOTSTRAP_LLVM_ENABLE_LLD)
add_dependencies(clang-bootstrap-deps lld)
endif()

# If the next stage is LTO we need to depend on LTO and possibly lld or LLVMgold
if(BOOTSTRAP_LLVM_ENABLE_LTO OR LLVM_ENABLE_LTO AND NOT LLVM_BUILD_INSTRUMENTED)
if(APPLE)
Expand All @@ -531,9 +537,7 @@ if (CLANG_ENABLE_BOOTSTRAP)
-DDYLD_LIBRARY_PATH=${LLVM_LIBRARY_OUTPUT_INTDIR})
elseif(NOT WIN32)
add_dependencies(clang-bootstrap-deps llvm-ar llvm-ranlib)
if(BOOTSTRAP_LLVM_ENABLE_LLD)
add_dependencies(clang-bootstrap-deps lld)
elseif(LLVM_BINUTILS_INCDIR)
if(NOT BOOTSTRAP_LLVM_ENABLE_LLD AND LLVM_BINUTILS_INCDIR)
add_dependencies(clang-bootstrap-deps LLVMgold)
endif()
set(LTO_AR -DCMAKE_AR=${LLVM_RUNTIME_OUTPUT_INTDIR}/llvm-ar)
Expand Down Expand Up @@ -579,10 +583,17 @@ if (CLANG_ENABLE_BOOTSTRAP)
add_dependencies(clang-bootstrap-deps compiler-rt)
endif()

set(C_COMPILER "clang")
set(CXX_COMPILER "clang++")
if(WIN32)
set(C_COMPILER "clang-cl.exe")
set(CXX_COMPILER "clang-cl.exe")
endif()

set(COMPILER_OPTIONS
-DCMAKE_CXX_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/clang++
-DCMAKE_C_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/clang
-DCMAKE_ASM_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/clang)
-DCMAKE_CXX_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/${CXX_COMPILER}
-DCMAKE_C_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/${C_COMPILER}
-DCMAKE_ASM_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/${C_COMPILER})

if(BOOTSTRAP_LLVM_BUILD_INSTRUMENTED)
add_dependencies(clang-bootstrap-deps llvm-profdata)
Expand Down Expand Up @@ -696,3 +707,7 @@ endif()
if (LLVM_ADD_NATIVE_VISUALIZERS_TO_SOLUTION)
add_subdirectory(utils/ClangVisualizers)
endif()

configure_file(
${CLANG_SOURCE_DIR}/include/clang/Config/config.h.cmake
${CLANG_BINARY_DIR}/include/clang/Config/config.h)
Loading