Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
845 commits
Select commit Hold shift + click to select a range
eee749b
Merge from 'sycl' to 'sycl-web'
May 2, 2020
1ac617b
Merge from 'master' to 'sycl-web' (#146)
bader May 2, 2020
c0f210d
Don't stash types that aren't copyable or moveable into a SmallVector
d0k Apr 26, 2020
f7bf28b
[SmallVector] Weaken the predicate for the memcpy optimization
d0k May 2, 2020
270d3fa
[COFF] Add and use a zero-copy tokenizer for .drectve
rnk May 1, 2020
d521eaf
Merge from 'master' to 'sycl-web' (#2)
bader May 2, 2020
ae23bd3
[gn build] Port 8f766e382b77e more and fix 2 llvm-config test failures.
nico May 2, 2020
97f9226
[MBP] tuple->pair. NFC.
d0k May 2, 2020
68e9306
Merge from 'master' to 'sycl-web' (#17)
bader May 2, 2020
9e194a3
[sema] NFC Unable to build Sema library with MSVC Debug target due to…
mydeveloperday May 2, 2020
8e05ac0
[DAGCombine] visitTRUNCATE - remove GetDemandedBits call
RKSimon May 2, 2020
a09a3c6
Revert rG8e05ac0a510c - "[DAGCombine] visitTRUNCATE - remove GetDeman…
RKSimon May 2, 2020
cb9ae00
[mlir] Add a new context flag for disabling/enabling multi-threading
River707 May 2, 2020
4597e3b
[libclang]: visit BindingDecl in DecompositionDecl
milianw May 2, 2020
08e1812
[libclang]: visit C++17 if init statements
milianw May 2, 2020
e02bb59
Merge from 'master' to 'sycl-web' (#5)
abhinavgaba May 2, 2020
d735c70
[test] Fix lld's ELF/linkerscript/thunk-gen-mips.s
May 1, 2020
3542384
[COFF] Use a global option table to avoid reconstructing it
rnk May 2, 2020
6d103ca
[SelectionDAG] Unify scalarizeVectorLoad and VectorLegalizer::ExpandLoad
LemonBoy May 2, 2020
0b85ea8
[docs][FileCheck] Fix invalid example
May 1, 2020
bd7ea86
[PDB] Avoid calling discoverTypeIndices for a known record kind
rnk May 2, 2020
7af4bb1
[PDB] Remove unique_ptr wrapper around C13 line table subsections
rnk May 2, 2020
7867f4c
[PDB] Remove a couple asserts that are no longer valid now that C13Bu…
topperc May 3, 2020
cd75b74
[X86] Fix a few issues in the evex-to-vex-compress.mir test.
topperc May 2, 2020
810c8e9
Revert "[PDB] Avoid calling discoverTypeIndices for a known record kind"
nico May 3, 2020
5070cec
[PDB] Bypass generic deserialization code for publics sorting
rnk May 3, 2020
1e57933
Re-land "[PDB] Avoid calling discoverTypeIndices for a known record k…
rnk May 3, 2020
21c1a0c
Test Commit: add two head comments in WinEHPrepare.cpp
tentzen May 3, 2020
e64f99c
[clangd] Metric tracking through Tracer
kadircet Apr 16, 2020
6c24b59
[clangd] Fix name hiding in TestTracer and disable racy test for now
kadircet May 3, 2020
7cf0f85
[ValueTracking] Convert test to unit test (NFC)
nikic May 3, 2020
4d2b0eb
[X86] detectAVGPattern - use matchUnaryPredicate helper. NFC.
RKSimon May 3, 2020
74e9952
[X86][SSE] splitAndLowerShuffle - use splitVector helper. NFC.
RKSimon May 3, 2020
7c649b5
[InstCombine] Duplicate some InstSimplify tests (NFC)
nikic May 3, 2020
4f576ea
[Debuginfo][NFC] Avoid double calling of DWARFDie::find(DW_AT_name).
avl-llvm Apr 30, 2020
e8d9794
[X86] Don't limit splitVector helper to simple types.
RKSimon May 3, 2020
c5392e2
[gn build] (manually) port ad97ccf6b26a more, for include added in e6…
nico May 3, 2020
f914b50
[gn build] Port e64f99c51a8
llvmgnsyncbot May 3, 2020
7c20316
[X86] Use splitVector helper in truncateVectorWithPACK/splitVectorSto…
RKSimon May 3, 2020
7a529ad
[Support] Don't initialize buffer allocated by zlib::uncompress
d0k May 3, 2020
af28c74
[clangd] Drop duplicate header
kadircet May 3, 2020
682f0b3
[InstCombine] use select-of-constants with set/clear bit mask patterns
rotateright May 3, 2020
9b7f614
[COFF] Paritally inline Symbol::getName, NFC
rnk May 3, 2020
53913a6
Optimize path::remove_dots
rnk May 3, 2020
7016043
[clangd] Change include to be relative to current directory
kadircet May 3, 2020
667f558
[llvm][NFC] Inliner.cpp shouldInline post-commit feedback
mtrofin May 3, 2020
ff5094c
[X86] Add tests showing failure to fold mul(abs(x),abs(x)) -> mul(x,x…
RKSimon May 3, 2020
fb5fd74
Revert "Optimize path::remove_dots"
nico May 3, 2020
6bf16ee
[Attributor][NFC] Let AbstractAttribute be an IRPosition
jdoerfert Apr 23, 2020
8228153
[Attributor][NFC] Encode IRPositions in the bits of a single pointer
jdoerfert Apr 17, 2020
bbdfcf8
[VPlan] Remove unused & undefined print method (NFC).
fhahn Apr 26, 2020
bec4ab9
[llvm][NFC] Inliner: factor cost and reporting out of inlining process
mtrofin May 1, 2020
911e06f
[ICP] Handling must tail calls in indirect call promotion
htyu May 1, 2020
7e3ef29
[libc++][test] Use a non-narrowing conversion in assign_pair.pass.cpp
CaseyCarter May 3, 2020
08556af
[InstSimplify] Remove known bits constant folding
nikic Mar 20, 2020
46ee652
Revert "[InstSimplify] Remove known bits constant folding"
nikic May 3, 2020
0f70f73
[Attributor] Bitcast constant to the returned value type if it has di…
sndmitriev May 3, 2020
81e48ae
[clangd] Reland LSP latency test
kadircet May 3, 2020
cb03892
[OpenMP] Fix an issue of wrong return type of DeviceRTLTy::getNumOfDe…
shiltian May 3, 2020
6fe20a4
[clangd] Fix yet-another gratuitous llvm::Error crash
sam-mccall May 3, 2020
2f97b8b
[Attributor][NFC] Proactively ask for `nocapure` on call site arguments
jdoerfert May 4, 2020
87f1e93
[Attributor][NFC] Use reference instead of pointer
jdoerfert May 4, 2020
231026a
[Attributor] Inititialize "value attributes" w/ must-be-executed-cont…
jdoerfert Apr 22, 2020
95e0d28
[Attributor] Remember only necessary dependences
jdoerfert Apr 30, 2020
14cb0bd
[Attributor][NFC] Replace the nested AAMap with a key pair
jdoerfert Apr 22, 2020
762fb1c
[llvm-objcopy] Avoid invalid Sec.Offset after D79229
MaskRay May 4, 2020
8ceee08
Make Polly tests dependencies explicit
May 4, 2020
8b53fdd
[X86] Custom legalize v16i64->v16i8 truncate with avx512.
topperc May 4, 2020
243ffc0
[X86] Simplify some code in combineTruncatedArithmetic. NFC
topperc May 4, 2020
0a4defe
[llvm-dwarfdump][Stats] Clean up
Apr 23, 2020
1e89f36
[VE][NFC] formatting VEISD enum
May 4, 2020
a581c6f
[mlir][vector] add tests for type_cast taking non-zero addrspace
whchung May 1, 2020
bc23c1d
[mlir][rocdl] add rocdl.barier op.
whchung May 4, 2020
6c42814
Precommit test updates for D68231.
jayfoad May 4, 2020
3c2c776
Fix building with GCC5 after e64f99c51a8e
zmodem May 4, 2020
935685f
[SCCP] Re-use pushToWorkList in pushToWorkListMsg (NFC).
fhahn May 4, 2020
8e9a8dc
[InstCombine] Add tests showing failure to fold mul(abs(x),abs(x)) ->…
RKSimon May 4, 2020
e737847
[SLC] Allow llvm.pow(x,2.0) -> x*x etc even if no pow() lib func
jayfoad Apr 30, 2020
19f5da9
[SVE][Codegen] Lower legal min & max operations
kmclaughlin-arm May 4, 2020
67b466d
[mlir] Removed tight coupling of BufferPlacement pass to Alloc and De…
dfki-mako Apr 21, 2020
f5360d4
Reapply "Add support for #pragma float_control" with buildbot fixes
May 1, 2020
0863e94
[AArch64] Add NVIDIA Carmel support
tambry May 4, 2020
ff4a3ee
[libc++] Define a few Lit features using the new DSL
ldionne May 3, 2020
3834385
[ELF] Move SHF_LINK_ORDER till OutputSection addresses are known
smithp35 Apr 22, 2020
283658c
[lldb/DWARF] Remove dead code in DWARFDebugInfoEntry
labath May 4, 2020
5b898bd
[AMDGPU] Enable carry out ADD/SUB operations divergence driven instru…
alex-t Apr 23, 2020
3fc7388
[MIPS] Add a baseline test showing current inefficient hidden sret lo…
arichardson Mar 29, 2019
d1ff003
[SelectionDAGBuilder] Stop setting alignment to one for hidden sret v…
arichardson Mar 29, 2019
fce5457
[COFF] Avoid allocating temporary vectors during ICF
rnk May 2, 2020
031265a
[MLIR] Add complex numbers to standard dialect
frgossen May 4, 2020
9ae23bd
[libc++] NFC: Print Lit available features in sorted order
ldionne May 4, 2020
4b9d75c
[X86][SSE] Move some VZEXT_MOVL combines into combineTargetShuffle. NFC.
RKSimon May 4, 2020
9400614
[InstCombine] Fold (mul(abs(x),abs(x))) -> (mul(x,x)) (PR39476)
RKSimon May 4, 2020
7cbb495
Fix LABEL match for test case for D72841 #pragma float_control
May 4, 2020
b6f1bad
[flang] Fixed a crash
psteinfeld May 2, 2020
db015fd
[libc++] Translate compiler-identification Lit features to the new DSL
ldionne Apr 17, 2020
c49f83b
[ELF] Don't advance sh_offset for an empty section whose PT_LOAD is r…
MaskRay May 1, 2020
307cfdf
[mlir][Linalg] Mostly NFC - Refactor Linalg patterns and transformati…
nicolasvasilache May 2, 2020
0151174
[lldb/Host] Improve error messages on unowned read files
medismailben Apr 23, 2020
3b7f3d0
[SVE] Remove invalid usage of getNumElements in Instructions
christetreault-llvm May 4, 2020
d28f69d
[libc++] NFC: Remove outdated #if comment
ldionne May 4, 2020
8303b1f
[cmake] Ensure that LINK_LIBS are dependencies for object library tar…
stephenneuendorffer May 1, 2020
c85eda7
[AMDGPU] fix copies between 32 and 16 bit
rampitec Apr 29, 2020
0b722a8
[libc++] Translate the modules-support Lit feature to the DSL
ldionne Apr 17, 2020
6604118
Let clang print registered targets for --version
yxsamliu Apr 30, 2020
09e4e9f
[libc++] NFC: Remove unnecessary scope
ldionne May 4, 2020
8d8fda4
[llvm][dfsan][NFC] Factor out fcn initialization
May 2, 2020
cb78376
Test commit. Modified comment to add a period at the end.
ZarkoT May 4, 2020
6b8d6f4
[lldb/test] Fix wrong target command failure message on Windows
medismailben May 4, 2020
94361dd
[libc++] Always enable local submodule visibility in the test suite
ldionne May 4, 2020
721ea5b
[DebugInfo][CodeView] Include namespace into emitted globals
aganea May 4, 2020
de904f5
[ARM] isHardwareLoopProfitable debug messages. NFC
davemgreen May 2, 2020
47f9e71
[PowerPC][AIX][NFC] Remove spills and reloads from arg passing test.
mandlebug May 1, 2020
f01ac8c
A test commit as a new contributor to verify commit access is OK.
May 4, 2020
9ae2564
[libc] Include object files from alias entrypoints also in entrypoint…
Apr 30, 2020
4f0f436
[MLIR] Adjust libMLIR building to more closely follow libClang
vchuravy Apr 23, 2020
54fa46a
[SveEmitter] Add builtins for Int & FP reductions
sdesmalen-arm May 4, 2020
ac9e8b3
[llvm-objdump][ARM] Print inline relocations when dumping ARM data
MaskRay May 2, 2020
6fec2c4
[flang] Fix x87 binary->decimal
klausler May 4, 2020
c8ac29a
Descriptive symbol names for machine basic block sections.
May 4, 2020
f1d083a
[x86] add tests for concat of casts; NFC
rotateright May 4, 2020
1eb160f
[ARM] Fix tail call validity checking for varargs calls.
efriedma-quic Apr 30, 2020
6b90a68
[SveEmitter] Add builtins for svdupq and svdupq_lane
sdesmalen-arm May 4, 2020
ab1ca6e
Revert "[MLIR] Adjust libMLIR building to more closely follow libClang"
stephenneuendorffer May 4, 2020
7ac0c3b
[JITLink] Fix a typo in a comment.
lhames May 4, 2020
990eb94
[JITLink] Fix missing ADDITIONAL_HEADER_DIRS for the LLVMJITLink comp…
lhames May 4, 2020
3610fd8
[lit] Disable test on Windows
May 4, 2020
9fbf998
Reject operations between vectors and enum types.
May 4, 2020
90f3f62
Revert "[SveEmitter] Add builtins for svdupq and svdupq_lane"
sdesmalen-arm May 4, 2020
4155784
Try to make `duplicate_os_log_reports.cpp` more reliable.
delcypher May 4, 2020
8430141
[ARM] Complex LSR test showing inefficient codegen. NFC
davemgreen May 4, 2020
4ad5317
[LLDB] Fix overloaded operator new cases in TestCppOperators.py which…
shafik May 4, 2020
8dfe819
[Verifier] Constrain where DILocations may be nested
vedantk May 1, 2020
88d9e43
[lldb/Expression] Make Language() const, NFC
vedantk May 4, 2020
47e9fd4
Revert "[lldb/Expression] Make Language() const, NFC"
vedantk May 4, 2020
a37caeb
[lldb/DataFormatters] Delete GetStringPrinterEscapingHelper
vedantk Apr 9, 2020
a29f603
[cmake] restrict object library dependency generation to PUBLIC libra…
stephenneuendorffer May 4, 2020
6951fe3
[arm64] Remove an old special case that's not needed anymore.
May 4, 2020
58c1770
[x86] add test for shift+op+concat; NFC
rotateright May 4, 2020
97db238
[lldb] Fix -Wdtor-name warnings
JDevlieghere May 4, 2020
9e35498
[lldb/Expression] Make Language() const, NFC
vedantk May 4, 2020
156092b
[RegisterCoalescer] Extend a subrange if needed when filling range gap
Apr 15, 2020
6939fe6
[lld-macho] Support X86_64_RELOC_SIGNED_{1,2,4}
MaskRay May 4, 2020
3a7be24
[mlir] Support big endian in DenseElementsAttr
imaihal May 4, 2020
5d10613
[mlir][StandardToSPIRV] Emulate bitwidths not supported for store op.
hanhanW May 4, 2020
2868ee5
[PDB] Use the global BumpPtrAllocator
rnk May 4, 2020
75cbf6d
Re-land "Optimize path::remove_dots"
rnk May 4, 2020
c66f890
[ORC] Rename SearchOrder operations on JITDylib to LinkOrder.
lhames May 4, 2020
58c7bf2
Update LLDB filespec tests for remove_dots change
rnk May 5, 2020
6bce7d8
[mlir][mlir-opt] Disable multithreading when parsing the input module.
River707 May 4, 2020
1e4faf2
[mlir][IR] Add a Region::getOps method that returns a range of immedi…
River707 May 5, 2020
036772a
[mlir][EDSC] Fix off-by-one BlockBuilder insertion point.
nicolasvasilache May 4, 2020
3618381
Clarify comment
adrian-prantl May 5, 2020
ad5fad0
[LTO] Suppress emission of empty combined module by default
zakk0610 Apr 28, 2020
d75a6e9
[CUDA][HIP] Fix empty ctor/dtor check for union
yxsamliu May 4, 2020
f637334
[CallGraphUpdater] Removed references to calles when deleting function
sndmitriev May 5, 2020
13090ec
[mlir] Remove tabs from predecessor comments
GMNGeoffrey May 5, 2020
469c02d
[mlir] Add support for merging identical blocks during canonicalization
River707 May 5, 2020
0be7aca
[dsymutil] Thread the VFS through dsymutil (NFC)
JDevlieghere May 5, 2020
146192a
[MLIR] Normalize usage of intrinsics_gen
stephenneuendorffer May 5, 2020
5469f43
[MLIR] Reapply: Adjust libMLIR building to more closely follow libClang
stephenneuendorffer May 4, 2020
93f7e52
[MLIR] Update documentation of cmake best practices
stephenneuendorffer May 5, 2020
b7438c2
[PDB] Move stream index tracking to GSIStreamBuilder
rnk May 5, 2020
47b25c3
[lit] Create one output file when `--output` is specified more than once
May 5, 2020
cd3a54c
[CodeGen] Fix warnings due to SelectionDAG::getSplatSourceVector
david-arm Apr 28, 2020
b79751e
[MLIR] Add conversion from AtomicRMWOp -> GenericAtomicRMWOp.
pifon2a May 5, 2020
4f8d972
[clang] Fix an uint32_t overflow in large preamble.
hokein May 5, 2020
5a1c301
[LLD] [COFF] Fix a typo in an assert message. NFC.
mstorsjo May 5, 2020
09767af
[ARM] MVE predcast with const test. NFC
davemgreen May 5, 2020
48aebfc
[ELF][ARM] Do not create .ARM.exidx sections for out of range inputs
smithp35 May 2, 2020
ffdda49
[Target][ARM] Add PerformVSELECTCombine for MVE Integer Ops
Apr 7, 2020
d5eb7ff
[Target][ARM] Fold or(A, B) more aggressively for I1 vectors
May 1, 2020
834debf
[WebAssembly] Fix block marker placing after fixUnwindMismatches
aheejin Apr 30, 2020
898f74c
[mlir] NFC: update ::build signature in the tutorial document
ftynse May 5, 2020
08032e7
[SanitizerCoverage] Replace the unconditional store with a load, then…
pratyai May 5, 2020
5578ec3
[MCA] Fixed a bug where loads and stores were sometimes incorrectly m…
adibiagio May 4, 2020
40574fe
[NFC][CostModel] Add TargetCostKind to relevant APIs
sparker-arm Apr 28, 2020
aed6bd6
Reland D78750: [SveEmitter] Add builtins for svdupq and svdupq_lane
sdesmalen-arm May 5, 2020
07f8ca6
[clangd] NFC: Cleanup unused headers and libraries
kirillbobyrev May 5, 2020
5bb5fa3
Forgot to add a -mtriple to a test. NFC
adibiagio May 5, 2020
f174f1c
[gn build] (manually) merge 07f8ca6ab19
nico May 5, 2020
5beb9fa
[docs][llvm-objcopy] Update --output-target text with right defaults
jh7370 May 4, 2020
d870016
[clangd] Get rid of Inclusion::R
kadircet May 4, 2020
371a69a
[X86][AVX] Add PR45794 sitofp v4i64-v4f32 test case
RKSimon May 5, 2020
e53d486
[X86][AVX] combineVectorSignBitsTruncation - avoid complex vXi64->vXi…
RKSimon May 5, 2020
72700fe
[MLIR] Link MLIRStandardOpsTransforms with MLIRTransforms.
pifon2a May 5, 2020
5c91aa6
[InstCombine] Fold or(zext(bswap(x)),shl(zext(bswap(y)),bw/2)) -> bsw…
RKSimon May 5, 2020
98b8b36
[mlir][standalone] NFC: Update CMakeLists.txt to reflect best practices
May 5, 2020
5ba3290
[SveEmitter] Add builtins for svreinterpret
sdesmalen-arm May 5, 2020
f85acb1
[ARM] Correct the type on a predicate cast
davemgreen May 5, 2020
8cb5663
[AArch64][SVE] Guard bitcast patterns under IsLE predicate
sdesmalen-arm May 5, 2020
1de4e56
[AMDGPU] Don't mark the .note section as ALLOC
Flakebi Mar 17, 2020
047898c
[clang-format] C# always regards && as a binary operator
jbcoe May 5, 2020
5d33fae
Revert "[lldb][cmake] Also use local submodule visibility on Darwin"
Teemperor May 5, 2020
c0cd106
[libc++] Move parsing of <__config_site> macros to the DSL
ldionne May 4, 2020
684dc1b
Elaborate more on --rocm-path flag.
arsenm Apr 28, 2020
17a53a1
[libc++] Allow <__config_site> not being included
ldionne May 5, 2020
fa2783d
[InstCombine] Remove hasOneUse check for pow(C,x) -> exp2(log2(C)*x)
jayfoad May 5, 2020
6ccaf73
[MLIR][LINALG] Convert Linalg on Tensors to Buffers
Apr 28, 2020
7e6221d
[libc++] Remove unused functions and minor features of the test suite
ldionne May 5, 2020
f35ccfa
[NFC] Update tests
sparker-arm May 5, 2020
c5b1a03
[clang-tidy] In TransformerClangTidyCheck, support option IncludeStyle.
ymand May 5, 2020
3d76824
[AMDGPU] Better support for VMEM soft clauses in GCNHazardRecognizer
jayfoad May 4, 2020
146d44c
[LSR] Don't require register reuse under postinc
davemgreen May 5, 2020
47f5066
Precommit new test cases for D79413 [InstCombine] Allow denormal C in…
jayfoad May 5, 2020
9d53db2
[Support] Allow FileOutputBuffer::create to create an empty file
MaskRay May 4, 2020
22829ab
[InstCombine] Allow denormal C in pow(C,y) -> exp2(log2(C)*y)
jayfoad May 5, 2020
d056c0c
Remove unnecessary check for inalloca in IPConstantPropagation
aeubanks May 4, 2020
a11e90a
[llvm-objcopy][test] ELF/dump-section.test: change #CHECK to # CHECK
MaskRay May 5, 2020
32b1933
[llvm-objcopy][ELF] Allow --dump-section to dump an empty non-SHT_NOB…
MaskRay May 4, 2020
85aff8a
[RISCV] Update debug scratch register names
pzhengqc Apr 23, 2020
f432154
[flang] update tools/f18 to use LLVM_LINK_COMPONENTS.
stephenneuendorffer May 4, 2020
e78ef93
[MLIR] GPUToCUDA conversion: MC is only needed if NVPTX is enabled.
stephenneuendorffer May 5, 2020
4e3c005
[TTI] getScalarizationOverhead - use explicit VectorType operand
RKSimon May 5, 2020
80b78a4
[MachinePipeliner] Add ORE for MachinePipeliner
May 5, 2020
c05f354
[lldb/unittest] Avoid relying on compiler character encoding in unico…
vedantk May 5, 2020
175a3df
[MLIR] Add a tests for out of tree dialect example.
stephenneuendorffer Apr 22, 2020
4fa13a3
[clang][OpenMP] Fix getNDSWDS for aarch64.
Apr 27, 2020
8d0c3c0
[flang] New implementation for checks for constraints C741 through C750
psteinfeld May 1, 2020
86dfbc6
[SLP] add another bailout for load-combine patterns
rotateright May 5, 2020
0e6536f
[Hexagon] Add R_HEX_GD_PLT_B22/32_PCREL relocations
SidManning Apr 28, 2020
55b9b11
Don't assert about missing profile info in createProfileWeightsForLoop
zmodem May 5, 2020
9ef166e
[AMDGPU] Fix FoldImmediate for 16 bit operand
rampitec May 4, 2020
e4512b5
[libc++abi] NFC: Remove pragma mark in favor of normal comment
ldionne May 5, 2020
7cbbf89
[ARM] CMSE code generation
momchil-velikov May 5, 2020
d69cbd8
[libc] Improve information printed on failure of a math test which us…
May 1, 2020
50cd964
[libc++] Rewrite the tests for cin, cout, clog, cerr and friends
ldionne May 5, 2020
6fb7e9a
[mlir] Add missing dependency to MLIRMlirOptMain
antiagainst May 5, 2020
375cec4
[AMDGPU] Introduce more scratch registers in the ABI.
cdevadas Mar 27, 2020
6bb68fd
Add a test to Support.NormalizePath.
nico May 5, 2020
93d1108
[MLIR][LoopOps] Adds the loop unroll transformation for loop::ForOp.
andydavis1 May 5, 2020
8fc7a90
Let normalize() for posix style convert backslash to slash unconditio…
nico May 5, 2020
61d5b0e
[lldb/Driver] Exit with a non-zero exit code in case of error in batc…
JDevlieghere May 5, 2020
e8984fe
[Inlining] Teach shouldBeDeferred to take the total cost into account
kazutakahirata May 4, 2020
025cd30
Collapse variable into assert to remove non-assert unused variable
dwblaikie May 5, 2020
fb18dff
Revert "[ARM] CMSE code generation"
momchil-velikov May 5, 2020
0195b3a
[flang] Fix bug in tests for standalone build
tskeith May 4, 2020
9d273c0
[mlir] Harden verifiers for DMA ops
ftynse May 5, 2020
b8a616e
[AMDGPU] Fixed the test by adding the triple.
cdevadas May 5, 2020
6f790f7
[mlir] Specify CMAKE_CXX_STANDARD to standalone dialect
antiagainst May 5, 2020
873e279
[SemaObjC] Add a warning for dictionary literals with duplicate keys
epilk May 5, 2020
86e50af
[AST] Print fixed enum type regardless of language mode
epilk May 5, 2020
276c8dd
[clang][codegen] Refactor argument loading in function prolog. NFC.
darkbuck May 5, 2020
9142c0b
[clang][codegen] Hoist parameter attribute setting in function prolog.
darkbuck May 5, 2020
e17e513
Merge from 'master' to 'sycl-web' (#2)
abhinavgaba May 5, 2020
918d599
Merge from 'master' to 'sycl-web' (#2)
abhinavgaba May 5, 2020
835734c
Merge remote-tracking branch 'origin/sycl-web' into private/vlazarev/…
vladimirlaz May 7, 2020
0164438
Support lowering of constant expressions vector
zuban32 Apr 17, 2020
2b32c4d
Remove deprecated spirv-atomic-prefix option
aratajew Apr 30, 2020
3a02d78
Revert "Reapply "Add support for #pragma float_control" with buildbot…
vladimirlaz May 8, 2020
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
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .arclint
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"linters": {
"clang-format": {
"type": "script-and-regex",
"script-and-regex.script": "utils/arcanist/clang-format.sh",
"script-and-regex.script": "bash utils/arcanist/clang-format.sh",
"script-and-regex.regex": "/^(?P<severity>[[:alpha:]]+)\n(?P<message>[^\n]+)\n(====|(?P<line>\\d),(?P<char>\\d)\n(?P<original>.*)>>>>\n(?P<replacement>.*)<<<<\n)$/s",
"include": [
"(\\.(cc|cpp|h)$)"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ static std::string getExprAsString(const clang::Expr &E,
Text.erase(
llvm::remove_if(
Text,
[](char C) { return std::isspace(static_cast<unsigned char>(C)); }),
[](char C) { return llvm::isSpace(static_cast<unsigned char>(C)); }),
Text.end());
return Text;
}
Expand Down
31 changes: 27 additions & 4 deletions clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,31 @@ void SignedCharMisuseCheck::registerMatchers(MatchFinder *Finder) {
.bind("comparison");

Finder->addMatcher(CompareOperator, this);

// Catch array subscripts with signed char -> integer conversion.
// Matcher for C arrays.
const auto CArraySubscript =
arraySubscriptExpr(hasIndex(SignedCharCastExpr)).bind("arraySubscript");

Finder->addMatcher(CArraySubscript, this);

// Matcher for std arrays.
const auto STDArraySubscript =
cxxOperatorCallExpr(
hasOverloadedOperatorName("[]"),
hasArgument(0, hasType(cxxRecordDecl(hasName("::std::array")))),
hasArgument(1, SignedCharCastExpr))
.bind("arraySubscript");

Finder->addMatcher(STDArraySubscript, this);
}

void SignedCharMisuseCheck::check(const MatchFinder::MatchResult &Result) {
const auto *SignedCastExpression =
Result.Nodes.getNodeAs<ImplicitCastExpr>("signedCastExpression");
const auto *IntegerType = Result.Nodes.getNodeAs<QualType>("integerType");
assert(SignedCastExpression);
assert(IntegerType);

// Ignore the match if we know that the signed char's value is not negative.
// The potential misinterpretation happens for negative values only.
Expand Down Expand Up @@ -135,14 +155,17 @@ void SignedCharMisuseCheck::check(const MatchFinder::MatchResult &Result) {

diag(Comparison->getBeginLoc(),
"comparison between 'signed char' and 'unsigned char'");
} else if (const auto *IntegerType =
Result.Nodes.getNodeAs<QualType>("integerType")) {
} else if (Result.Nodes.getNodeAs<Expr>("arraySubscript")) {
diag(SignedCastExpression->getBeginLoc(),
"'signed char' to %0 conversion in array subscript; "
"consider casting to 'unsigned char' first.")
<< *IntegerType;
} else {
diag(SignedCastExpression->getBeginLoc(),
"'signed char' to %0 conversion; "
"consider casting to 'unsigned char' first.")
<< *IntegerType;
} else
llvm_unreachable("Unexpected match");
}
}

} // namespace bugprone
Expand Down
1 change: 1 addition & 0 deletions clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ set(LLVM_LINK_COMPONENTS
)

add_clang_library(clangTidyLLVMLibcModule
CalleeNamespaceCheck.cpp
ImplementationInNamespaceCheck.cpp
LLVMLibcTidyModule.cpp
RestrictSystemLibcHeadersCheck.cpp
Expand Down
56 changes: 56 additions & 0 deletions clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
//===-- CalleeNamespaceCheck.cpp ------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "CalleeNamespaceCheck.h"
#include "clang/AST/ASTContext.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"

using namespace clang::ast_matchers;

namespace clang {
namespace tidy {
namespace llvm_libc {

// Gets the outermost namespace of a DeclContext, right under the Translation
// Unit.
const DeclContext *getOutermostNamespace(const DeclContext *Decl) {
const DeclContext *Parent = Decl->getParent();
if (Parent && Parent->isTranslationUnit())
return Decl;
return getOutermostNamespace(Parent);
}

void CalleeNamespaceCheck::registerMatchers(MatchFinder *Finder) {
Finder->addMatcher(
declRefExpr(to(functionDecl().bind("func"))).bind("use-site"), this);
}

void CalleeNamespaceCheck::check(const MatchFinder::MatchResult &Result) {
const auto *UsageSiteExpr = Result.Nodes.getNodeAs<DeclRefExpr>("use-site");
const auto *FuncDecl = Result.Nodes.getNodeAs<FunctionDecl>("func");

// Ignore compiler builtin functions.
if (FuncDecl->getBuiltinID() != 0)
return;

// If the outermost namespace of the function is __llvm_libc, we're good.
const auto *NS = dyn_cast<NamespaceDecl>(getOutermostNamespace(FuncDecl));
if (NS && NS->getName() == "__llvm_libc")
return;

diag(UsageSiteExpr->getBeginLoc(), "%0 must resolve to a function declared "
"within the '__llvm_libc' namespace")
<< FuncDecl;

diag(FuncDecl->getLocation(), "resolves to this declaration",
clang::DiagnosticIDs::Note);
}

} // namespace llvm_libc
} // namespace tidy
} // namespace clang
38 changes: 38 additions & 0 deletions clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
//===-- CalleeNamespaceCheck.h ----------------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVMLIBC_CALLEENAMESPACECHECK_H
#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVMLIBC_CALLEENAMESPACECHECK_H

#include "../ClangTidyCheck.h"

namespace clang {
namespace tidy {
namespace llvm_libc {

/// Checks all calls resolve to functions within __llvm_libc namespace.
///
/// For the user-facing documentation see:
/// http://clang.llvm.org/extra/clang-tidy/checks/llvmlibc-callee-namespace.html
class CalleeNamespaceCheck : public ClangTidyCheck {
public:
CalleeNamespaceCheck(StringRef Name, ClangTidyContext *Context)
: ClangTidyCheck(Name, Context) {}

bool isLanguageVersionSupported(const LangOptions &LangOpts) const override {
return LangOpts.CPlusPlus;
}
void registerMatchers(ast_matchers::MatchFinder *Finder) override;
void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
};

} // namespace llvm_libc
} // namespace tidy
} // namespace clang

#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVMLIBC_CALLEENAMESPACECHECK_H
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#include "../ClangTidy.h"
#include "../ClangTidyModule.h"
#include "../ClangTidyModuleRegistry.h"
#include "CalleeNamespaceCheck.h"
#include "ImplementationInNamespaceCheck.h"
#include "RestrictSystemLibcHeadersCheck.h"

Expand All @@ -19,6 +20,8 @@ namespace llvm_libc {
class LLVMLibcModule : public ClangTidyModule {
public:
void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
CheckFactories.registerCheck<CalleeNamespaceCheck>(
"llvmlibc-callee-namespace");
CheckFactories.registerCheck<ImplementationInNamespaceCheck>(
"llvmlibc-implementation-in-namespace");
CheckFactories.registerCheck<RestrictSystemLibcHeadersCheck>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#include "clang/AST/RecursiveASTVisitor.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/Tooling/FixIt.h"
#include "llvm/ADT/StringExtras.h"

#include <cctype>

Expand Down Expand Up @@ -356,10 +357,10 @@ bool UseTrailingReturnTypeCheck::keepSpecifiers(
unsigned int TOffsetInRT = TOffset - ReturnTypeBeginOffset - DeletedChars;
unsigned int TLengthWithWS = CT.T.getLength();
while (TOffsetInRT + TLengthWithWS < ReturnType.size() &&
std::isspace(ReturnType[TOffsetInRT + TLengthWithWS]))
llvm::isSpace(ReturnType[TOffsetInRT + TLengthWithWS]))
TLengthWithWS++;
std::string Specifier = ReturnType.substr(TOffsetInRT, TLengthWithWS);
if (!std::isspace(Specifier.back()))
if (!llvm::isSpace(Specifier.back()))
Specifier.push_back(' ');
Auto.insert(Auto.size() - InitialAutoLength, Specifier);
ReturnType.erase(TOffsetInRT, TLengthWithWS);
Expand Down Expand Up @@ -459,7 +460,7 @@ void UseTrailingReturnTypeCheck::check(const MatchFinder::MatchResult &Result) {
ReturnTypeEnd.getLocWithOffset(1)),
SM, LangOpts);
bool NeedSpaceAfterAuto =
CharAfterReturnType.empty() || !std::isspace(CharAfterReturnType[0]);
CharAfterReturnType.empty() || !llvm::isSpace(CharAfterReturnType[0]);

std::string Auto = NeedSpaceAfterAuto ? "auto " : "auto";
std::string ReturnType =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,10 @@ TransformerClangTidyCheck::TransformerClangTidyCheck(
const OptionsView &)>
MakeRule,
StringRef Name, ClangTidyContext *Context)
: ClangTidyCheck(Name, Context), Rule(MakeRule(getLangOpts(), Options)) {
: ClangTidyCheck(Name, Context), Rule(MakeRule(getLangOpts(), Options)),
IncludeStyle(Options.getLocalOrGlobal("IncludeStyle",
IncludeSorter::getMapping(),
IncludeSorter::IS_LLVM)) {
if (Rule)
assert(llvm::all_of(Rule->Cases, hasExplanation) &&
"clang-tidy checks must have an explanation by default;"
Expand All @@ -40,7 +43,10 @@ TransformerClangTidyCheck::TransformerClangTidyCheck(
TransformerClangTidyCheck::TransformerClangTidyCheck(RewriteRule R,
StringRef Name,
ClangTidyContext *Context)
: ClangTidyCheck(Name, Context), Rule(std::move(R)) {
: ClangTidyCheck(Name, Context), Rule(std::move(R)),
IncludeStyle(Options.getLocalOrGlobal("IncludeStyle",
IncludeSorter::getMapping(),
IncludeSorter::IS_LLVM)) {
assert(llvm::all_of(Rule->Cases, hasExplanation) &&
"clang-tidy checks must have an explanation by default;"
" explicitly provide an empty explanation if none is desired");
Expand All @@ -53,8 +59,8 @@ void TransformerClangTidyCheck::registerPPCallbacks(
if (Rule && llvm::any_of(Rule->Cases, [](const RewriteRule::Case &C) {
return !C.AddedIncludes.empty();
})) {
Inserter = std::make_unique<IncludeInserter>(
SM, getLangOpts(), utils::IncludeSorter::IS_LLVM);
Inserter =
std::make_unique<IncludeInserter>(SM, getLangOpts(), IncludeStyle);
PP->addPPCallbacks(Inserter->CreatePPCallbacks());
}
}
Expand Down
13 changes: 11 additions & 2 deletions clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_TRANSFORMER_CLANG_TIDY_CHECK_H

#include "../ClangTidy.h"
#include "../utils/IncludeInserter.h"
#include "IncludeInserter.h"
#include "IncludeSorter.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Tooling/Transformer/Transformer.h"
Expand All @@ -31,6 +32,13 @@ namespace utils {
// MyCheck(StringRef Name, ClangTidyContext *Context)
// : TransformerClangTidyCheck(MyCheckAsRewriteRule, Name, Context) {}
// };
//
// `TransformerClangTidyCheck` recognizes this clang-tidy option:
//
// * IncludeStyle. A string specifying which file naming convention is used by
// the source code, 'llvm' or 'google'. Default is 'llvm'. The naming
// convention influences how canonical headers are distinguished from other
// includes.
class TransformerClangTidyCheck : public ClangTidyCheck {
public:
// \p MakeRule generates the rewrite rule to be used by the check, based on
Expand Down Expand Up @@ -61,7 +69,8 @@ class TransformerClangTidyCheck : public ClangTidyCheck {

private:
Optional<transformer::RewriteRule> Rule;
std::unique_ptr<clang::tidy::utils::IncludeInserter> Inserter;
const IncludeSorter::IncludeStyle IncludeStyle;
std::unique_ptr<IncludeInserter> Inserter;
};

} // namespace utils
Expand Down
22 changes: 3 additions & 19 deletions clang-tools-extra/clangd/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
add_subdirectory(support)

# Configure the Features.inc file.
if (NOT DEFINED CLANGD_BUILD_XPC)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
Expand Down Expand Up @@ -25,27 +27,15 @@ set(LLVM_LINK_COMPONENTS
FrontendOpenMP
)

if(CLANG_BUILT_STANDALONE)
# needed to get HAVE_CXX_ATOMICS64_WITHOUT_LIB defined
include(CheckAtomic)
endif()

set(CLANGD_ATOMIC_LIB "")
if(NOT HAVE_CXX_ATOMICS_WITHOUT_LIB OR NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB)
list(APPEND CLANGD_ATOMIC_LIB "atomic")
endif()

add_clang_library(clangDaemon
AST.cpp
Cancellation.cpp
ClangdLSPServer.cpp
ClangdServer.cpp
CodeComplete.cpp
CodeCompletionStrings.cpp
CollectMacros.cpp
CompileCommands.cpp
Compiler.cpp
Context.cpp
Diagnostics.cpp
DraftStore.cpp
ExpectedTypes.cpp
Expand All @@ -54,16 +44,13 @@ add_clang_library(clangDaemon
FileDistance.cpp
Format.cpp
FS.cpp
FSProvider.cpp
FormattedString.cpp
FuzzyMatch.cpp
GlobalCompilationDatabase.cpp
Headers.cpp
HeaderSourceSwitch.cpp
Hover.cpp
IncludeFixer.cpp
JSONTransport.cpp
Logger.cpp
PathMapping.cpp
Protocol.cpp
Quality.cpp
Expand All @@ -73,11 +60,8 @@ add_clang_library(clangDaemon
Selection.cpp
SemanticHighlighting.cpp
SemanticSelection.cpp
Shutdown.cpp
SourceCode.cpp
QueryDriverDatabase.cpp
Threading.cpp
Trace.cpp
TUScheduler.cpp
URI.cpp
XRefs.cpp
Expand Down Expand Up @@ -128,8 +112,8 @@ add_clang_library(clangDaemon
clangToolingInclusions
clangToolingRefactoring
clangToolingSyntax
clangdSupport
${LLVM_PTHREAD_LIB}
${CLANGD_ATOMIC_LIB}
${ALL_CLANG_TIDY_CHECKS}
)

Expand Down
Loading