Skip to content

LLVM and SPIRV-LLVM-Translator pulldown (WW49) #2836

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 567 commits into from
Dec 1, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
567 commits
Select commit Hold shift + click to select a range
c2cb61b
Fix mangling of substitutions for template-prefixes.
zygoloid Nov 24, 2020
07f234b
[lld] Add --no-lto-whole-program-visibility
teresajohnson Nov 24, 2020
23dc049
Treat a placeholder type for class template argument deduction as
zygoloid Nov 25, 2020
5c4e397
[mlir][sparse] add parallelization strategies to sparse compiler
aartbik Nov 24, 2020
9c4df9e
[clang-tidy] Support IgnoredRegexp configuration to selectively suppr…
smhc Nov 25, 2020
09ba206
Fix compilation issue reported by MSVC user on cfe-dev
rnk Nov 25, 2020
cbd7541
DebugInfo: Add some missing explicit target triples.
dwblaikie Nov 25, 2020
fa42f08
[PowerPC][FP128] Fix the incorrect calling convention for IEEE long d…
Nov 25, 2020
01cee92
DebugInfo: Remove llc_dwarf usage from tests already relying on a tar…
dwblaikie Nov 25, 2020
3d1149c
Make CallInst::updateProfWeight emit i32 weights instead of i64
aeubanks Oct 31, 2020
10ddb92
[SCEV] Use isa<> pattern for testing for CouldNotCompute [NFC]
preames Nov 25, 2020
e0f4dea
Don't assume the clang binary name contains the string "clang".
zygoloid Nov 25, 2020
60c28a5
[NFC][Test] Format the test for IEEE Long double
Nov 25, 2020
a9eaf84
Try to fix tests after e16c0a9a68971 with CLANG_DEFAULT_LINKER=lld
nico Nov 25, 2020
be7d425
[PPC][AIX] Add vector callee saved registers for AIX extended vector ABI
ZarkoT Nov 25, 2020
8e6d920
[DAG][PowerPC] Fix dropped `nsw` flag in `SimplifySetCC` by adding `d…
Nov 25, 2020
28d7ba1
[IndVars] Use more precise context when eliminating narrowing
xortator Nov 25, 2020
2c7870d
[NewPM] Add pipeline EP callback after initial frontend cleanup
aeubanks Nov 19, 2020
9c588f5
[DAGCombine] Add hook to allow target specific test for sqrt input
Nov 25, 2020
9130651
Revert "[SCEV] Generalize no-self-wrap check in isLoopInvariantExitCo…
xortator Nov 25, 2020
1c82d32
[CHR] Use pred_size (NFC)
kazutakahirata Nov 25, 2020
97e7ce3
[PowerPC] Probe the gap between stackptr and realigned stackptr
Nov 25, 2020
0bf3d4b
[NFC][ARM][PhaseOrdering] Add one more test for D91800: LoopIdiom sho…
LebedevRI Nov 25, 2020
ec0b927
[llvm-readelf/obj] - Deduplicate the logic that prints notes. NFCI.
Nov 24, 2020
00a6601
[VPlan] Turn VPReductionRecipe into a VPValue
davemgreen Nov 24, 2020
e0c479c
[VPlan] Switch VPWidenRecipe to be a VPValue
davemgreen Nov 25, 2020
ae7ac2d
[llvm-readobj] - An attempt to fix BB after D92018.
Nov 25, 2020
3d2c681
[clangd] Avoid type hierarchy crash on incomplete type
HighCommander4 Nov 25, 2020
d8f22c7
[SchedModels] Return earlier removed checks
eleviant Nov 25, 2020
5edb90c
[obj2yaml] - Dump section offsets in some cases.
Nov 9, 2020
fb6f425
[clangd] Add metrics for invalid name.
hokein Nov 25, 2020
fee910e
[libObject,llvm-readelf] - Stop describing a section/segment in `note…
Nov 24, 2020
df54f50
[ORC] Remove a superfluous semicolon, silencing GCC warnings. NFC.
mstorsjo Nov 25, 2020
d2b71ea
[ORC] Cast to const void* to silence a GCC warning. NFC.
mstorsjo Nov 25, 2020
e592dde
[clang][SVE] Activate macro `__ARM_FEATURE_SVE_VECTOR_OPERATORS`.
Nov 25, 2020
633cae3
[OpenCL] Move kernel arg type tests into one file
svenvh Nov 25, 2020
0cb3869
[clangd] Fix a tsan failure.
hokein Nov 25, 2020
ad5b83d
[VPlan] Add VPReductionSC to VPUser::classof, unify VPValue IDs.
fhahn Nov 25, 2020
d95db16
[clangd] Extract common file-caching logic from ConfigProvider.
sam-mccall Sep 23, 2020
1c3451c
[gn build] Port d95db1693cb
llvmgnsyncbot Nov 25, 2020
603d40d
[SVE][CodeGen] Add a DAG combine to extend mscatter indices
kmclaughlin-arm Nov 25, 2020
7e7106d
DetectDeadLanes.cpp - remove unused headers. NFCI.
RKSimon Nov 24, 2020
6d56823
SemaExpr.cpp - use castAs<> instead of getAs<> as we dereference the …
RKSimon Nov 24, 2020
eb7ea5a
CGCall.cpp - use castAs<> instead of getAs<> as we dereference the po…
RKSimon Nov 24, 2020
9d996c0
TargetInfo.cpp - use castAs<> instead of getAs<> as we dereference th…
RKSimon Nov 24, 2020
88bb265
SemaExpr.cpp - use castAs<> instead of getAs<> as we dereference the …
RKSimon Nov 24, 2020
2b66918
[ARM][AArch64] Adding Neoverse N2 CPU support
MarkMurrayARM Nov 16, 2020
a38d13e
[clangd] Use TimePoint<> instead of system_clock::time_point, it does…
sam-mccall Nov 25, 2020
eb9b063
[libc++] P1645 constexpr for <numeric>
mordante Nov 24, 2020
ce322fb
[llvm-readelf/obj] - Stop using `reportError` when dumping notes.
Nov 24, 2020
ed242da
Fix a typo in the documentation to unbreak the sphinx builder.
AaronBallman Nov 25, 2020
ecabb39
Revert "[libc++] P1645 constexpr for <numeric>"
mordante Nov 25, 2020
1ba4b82
[LAA] NFC: Rename [get]MaxSafeRegisterWidth -> [get]MaxSafeVectorWidt…
c-rhodes Nov 18, 2020
f697050
[clangd] PopulateSwitch: disable on dependent enums.
gislan Nov 24, 2020
bbf8a9c
[libc++] ADL-proof <variant> by adding _VSTD:: qualification on calls.
Quuxplusone Nov 24, 2020
d899f99
Fix case mismatch between definition and declaration
gchatelet Nov 25, 2020
6588592
[PowerPC] Regenerate vec_select.ll tests and add <1 x i128> test case
RKSimon Nov 25, 2020
0637dfe
[DAG] Legalize abs(x) -> smax(x,sub(0,x)) iff smax/sub are legal
RKSimon Nov 25, 2020
e73d8c7
[flang][openacc] Semantic check for cache directive
clementval Nov 25, 2020
edd6756
[AMDGPU] Emit stack frame size in metadata
Flakebi Oct 23, 2020
1933c9d
[WebAssembly] Factor out WasmTableType in binary format
wingo Nov 25, 2020
a8d7451
[PassManager] Run Induction Variable Simplification pass *after* Reco…
LebedevRI Nov 25, 2020
54f31ad
Merge from 'sycl' to 'sycl-web'
Nov 25, 2020
feac819
[MC][WebAssembly] Only emit indirect function table import if needed
wingo Nov 25, 2020
ba74fa2
[AMDGPU] Actually fully update opt-pipeline.ll test to account for -l…
LebedevRI Nov 25, 2020
572d183
[ELF] Add TargetInfo::adjustGotPcExpr for `R_GOT_PC` relaxations. NFC
MaskRay Nov 25, 2020
06654a5
[SVE] Fix TypeSize warning in RuntimePointerChecking::insert
Nov 24, 2020
50564ca
[ELF] Rename adjustRelaxExpr to adjustTlsExpr and delete the unused `…
MaskRay Nov 25, 2020
dc96cc3
[clang][test] Fix prefix operator++ signature in iterators
Oct 16, 2020
9595a7f
[gn build] Download prebuilt mac-arm64 binary now that it exists
nico Nov 25, 2020
b281a05
[OpenMP][OMPT] Implement verbose tool loading
Oct 27, 2020
6d3b816
[OpenMP][OMPT] Introduce a guard to handle OMPT return address
jprotze Nov 18, 2020
9e3e332
[OpenMP] libomp: fix non-X86, non-AARCH64 builds
AndreyChurbanov Nov 25, 2020
c557f54
[Flang][Docs] Update call information and add two more calls
jdoerfert Nov 25, 2020
227c8ff
[OpenMP][Docs] Add more content, call coordinates, FAQ entries, links
jdoerfert Nov 25, 2020
c26e869
[RISCV] Custom type legalize i32 fshl/fshr on RV64 with Zbt.
topperc Nov 25, 2020
cf1c774
[FastISel] Flush local value map on ever instruction
pogo59 Nov 18, 2020
9c86c5e
[DAG] Legalize abs(x) -> umin(x,sub(0,x)) iff umin/sub are legal
RKSimon Nov 25, 2020
73fdd99
[clangd] Implement clang-tidy options from config
njames93 Nov 25, 2020
54038ee
[gn build] Port 73fdd998701
llvmgnsyncbot Nov 25, 2020
385a27d
[CostModel][X86] Refresh ISD::ABS costs
RKSimon Nov 25, 2020
dc35368
Remove static function unused after cf1c774.
pogo59 Nov 25, 2020
5654a3d
[RISCV] Add test cases showing that we don't recognize the select for…
topperc Nov 25, 2020
a015635
[Hexagon] Add support for ISD::SMAX/SMIN/UMAX/UMIN instead of custom …
RKSimon Nov 25, 2020
3bd0672
[MS] Fix double evaluation of MSVC builtin arguments
rnk Nov 24, 2020
1e843a9
[MS] Add more 128bit cmpxchg intrinsics for AArch64
rnk Nov 24, 2020
9ffba19
[MLIR][Affine] Add custom builders for AffineVectorLoadOp/AffineVecto…
Nov 25, 2020
cbf336a
[clangd] Track deprecation of 'member' semantic token type in LSP.
sam-mccall Nov 25, 2020
a78aaa1
[libc++] Factor out common logic for calling aligned allocation
ldionne Nov 12, 2020
751b0d9
[RISCV] Make SMIN/SMAX/UMIN/UMAX legal with Zbb extension.
topperc Nov 25, 2020
bd0527f
[RISCV] Add test cases to check that we use (smax X, (neg X)) for abs…
topperc Nov 25, 2020
c5d0172
[mlir] Add build configuration for Quant unittest
marbre Nov 19, 2020
bed8916
Merge from 'master' to 'sycl-web' (#1)
aelovikov-intel Nov 25, 2020
35828b8
[ms] [llvm-ml] Implement the expression expansion operator
ericastor Nov 25, 2020
e5cc7ba
[libc++] NFC: Reindent non-lockfree-atomics feature
ldionne Nov 25, 2020
175ebad
DebugInfo: remove unnecessary mtriple from test/DebugInfo/X86/abstrac…
dwblaikie Nov 25, 2020
bb8d70b
Merge from 'master' to 'sycl-web' (#22)
aelovikov-intel Nov 25, 2020
c9eae09
github actions: Use llvmbot token for main branch sync
tstellar Nov 25, 2020
2d60429
[SelectionDAGBuilder] Add SPF_NABS support to visitSelect
topperc Nov 25, 2020
ed95caf
[RISCV] Add an implementation of isFMAFasterThanFMulAndFAdd
topperc Nov 25, 2020
5488a6b
[NFC] Fix pattern name.
silvasean Nov 26, 2020
b534bea
Revert builtins fp16 support: tests do not pass on Mac
rnk Nov 26, 2020
1363dfa
[CodeView] Avoid emitting empty debug globals subsection.
amykhuang Nov 24, 2020
3fb0879
Refactor and simplify class scope name lookup.
zygoloid Nov 25, 2020
75f50e1
Adding PoisonValue for representing poison value explicitly in IR
zhengyang92 Nov 24, 2020
7c327db
Part of C++ DR 39: a class member lookup is not ambiguous if it finds…
zygoloid Nov 26, 2020
da0aaed
[gn build] (manually) port b534beabeed3ba
nico Nov 26, 2020
d5f0d0c
[mlir][sparse] add ability to select pointer/index storage type
aartbik Nov 25, 2020
c6cb47b
[clangd] Collect main file refs by default
HighCommander4 Nov 24, 2020
48d1017
[gn build] sync script: handle multiple source lists if only deleting
nico Nov 26, 2020
12c2646
[gn build] sync script: only compute tokloc when adding files
nico Nov 26, 2020
43afba0
[gn build] sync script: try to make a loop clearer
nico Nov 26, 2020
48ddf5e
[lld][WebAssembly] Ensure stub symbols always get address 0
sbc100 Nov 23, 2020
2fb5f4a
[mlir][Python] Add additional capsule interop types.
stellaraccident Nov 26, 2020
664e1da
[LoopLoadElim] Make sure all loops are in simplify form. PR48150
xortator Nov 26, 2020
aea130f
[LegalizerTypes] Add support for scalarizing the operand of an FP_EXT…
topperc Nov 26, 2020
f78ad68
[RISCV] Remove unused PatFrag argument from the tablegen class used f…
topperc Nov 26, 2020
f10500e
[IndVars] Use isLoopBackedgeGuardedByCond for last iteration check
xortator Nov 26, 2020
2254e01
[RISCV] Add isel pattern to match (i64 (sra (shl X, 32), C)) to SRAIW…
topperc Nov 26, 2020
14f2ad0
[SCEV] Use isKnownPredicateAt in isLoopBackedgeGuardedByCond
xortator Nov 26, 2020
c3673ea
[llvm-readobj] - Fix a warning.
Nov 26, 2020
728634d
[Support] Use llvm::is_contained (NFC)
kazutakahirata Nov 26, 2020
dde0fcd
[libc++] [libc++abi] Mark a few tests as unsupported/xfail on gcc-7/8/9.
mkurdej Nov 26, 2020
6b42966
[OpenMP][OMPT] Fix building with OMPT disabled after 6d3b81664a4b79
mstorsjo Nov 26, 2020
69d2567
[libc++] [www] Fix HTML. NFC.
mkurdej Nov 26, 2020
345fccc
Fix use-of-uninitialized-value in rG75f50e15bf8f
zhengyang92 Nov 26, 2020
d1fd91d
[clangd] Do not treat line as inactive if skipped range ends at chara…
HighCommander4 Nov 26, 2020
53a14a4
[lldb] Fix TestThreadStepOut.py after "Flush local value map on every…
Teemperor Nov 26, 2020
a5f98b5
[libc++] [docs] Migrate C++ status pages to RestructuredText (RST).
mkurdej Nov 26, 2020
4f87d30
[AMDGPU] Introduce and use isGFX10Plus. NFC.
jayfoad Nov 25, 2020
841132e
[libc++] [P0966] [C++20] Fix bug PR45368 by correctly implementing P0…
mkurdej Nov 26, 2020
8db009d
[libc++] Fix gcc warning -Wsign-compare.
mkurdej Nov 26, 2020
83d2660
[NFC][libc++] Mark LWG3296 as complete.
mordante Nov 26, 2020
3b6481e
Revert "[SCEV] Use isKnownPredicateAt in isLoopBackedgeGuardedByCond"
xortator Nov 26, 2020
d8ffb1f
[llvm-profgen] [docs] Fix invalid header. Add to ToC. NFC.
mkurdej Nov 26, 2020
8fb8fb2
[RISCV] Add test cases for missed opportunities to use sbsetw/sbclrw/…
topperc Nov 26, 2020
d9500c2
[RISCV] Add isel patterns for sbsetw/sbclrw/sbinvw with sext_inreg as…
topperc Nov 26, 2020
3d4c046
[SCEV] Use isBasicBlockEntryGuardedByCond in isLoopBackedgeGuardedByCond
xortator Nov 26, 2020
54ec9bb
[llvm-readelf/obj] - Report a warning when the value of the DT_PLTREL…
Nov 25, 2020
91d6b6b
Revert "[SCEV] Use isBasicBlockEntryGuardedByCond in isLoopBackedgeGu…
xortator Nov 26, 2020
f690986
Return "[SCEV] Use isBasicBlockEntryGuardedByCond in isLoopBackedgeGu…
xortator Nov 26, 2020
4078383
[X86] Fix -DAG checks on gnux32 pic tests
RKSimon Nov 26, 2020
035955f
Revert "Return "[SCEV] Use isBasicBlockEntryGuardedByCond in isLoopBa…
xortator Nov 26, 2020
4bee319
[SVE][CodeGen] Extend isConstantSplatValue to support ISD::SPLAT_VECTOR
kmclaughlin-arm Nov 26, 2020
5641b1d
[libc++] Mark a few more tests as unsupported on gcc-8/9.
mkurdej Nov 26, 2020
45ba239
[clang][Driver] Handle risvc in Baremetal.cpp.
abidh Nov 26, 2020
926681b
[CostModel] Add basic implementation of getGatherScatterOpCost.
fhahn Nov 25, 2020
2da8fa4
[X86] Extend neg-abs test coverage
RKSimon Nov 26, 2020
1ca174b
[clangd][query-driver] Extract target
ArcsinX Nov 26, 2020
4dd5f79
[mlir][bufferize] Add argument materialization for bufferization
Nov 26, 2020
c2b49b2
[VE] Add comprehensive stackframe tests
kaz7 Nov 23, 2020
a3b1fcb
[AArch64][CostModel] Precommit some vector mul tests. NFC.
Nov 26, 2020
384996f
[IndVarSimplify] Fix Modified status when handling dead PHI nodes
dstenb Nov 26, 2020
87568c0
[mlir][linalg] Mark linalg.yield as ReturnLike
Nov 26, 2020
bd0b131
[VPlan] Turn VPReplicateRecipe into a VPValue.
fhahn Nov 26, 2020
39a5dd1
[ASTImporter] Import the default argument of TemplateTemplateParmDecl
Teemperor Nov 26, 2020
6464c4a
[LiveDebugVariables] Strip all debug instructions from nodebug functions
rlougher Nov 25, 2020
a325856
[clang][cli] Port Target option flags to new option parsing system
jansvoboda11 Nov 24, 2020
9549abc
Remove stray debug-only from test
d0k Nov 26, 2020
12d59b6
[DAG] Legalize umin(x,y) -> sub(x,usubsat(x,y)) and umax(x,y) -> add(…
RKSimon Nov 26, 2020
8057ebf
Revert rG12d59b696b330 "[DAG] Legalize umin(x,y) -> sub(x,usubsat(x,y…
RKSimon Nov 26, 2020
0e49a40
[ARM] Cleanup for the MVETailPrediction pass
davemgreen Nov 26, 2020
8562d2c
[AArch64] Regenerate min/max tests and add vXi64 umin/umax test coverage
RKSimon Nov 26, 2020
0b20d0a
[libc++] Fix two fr_FR locale tests on FreeBSD
arichardson Nov 26, 2020
20c926e
[mlir][DialectConversion] Do not prematurely drop unused cast operations
Nov 26, 2020
d7ca140
[libc++] Attempt to fix spurious modules-related failures in the CI
ldionne Nov 25, 2020
3d7f19f
[libc++] Remove sysctl-based implementation of thread::hardware_concu…
ldionne Nov 25, 2020
3f6c856
[ASTImporter] Import the default argument of TemplateTypeParmDecl
Teemperor Nov 26, 2020
6d648e6
[AIX] Add support for non var_arg extended vector ABI calling convent…
ZarkoT Nov 26, 2020
668da8c
[MC] Set the unique id of .stack_sizes to the associated .text section's
MaskRay Nov 26, 2020
4df8efc
[AA] Split up LocationSize::unknown()
nikic Nov 17, 2020
92a67e1
[BPF][NewPM] Port bpf-adjust-opt to NPM and add it to pipeline
aeubanks Nov 19, 2020
17df537
[X86] Regenerate i64-to-float.ll tests with avx512 coverage
RKSimon Nov 26, 2020
9d87739
[clangd] AddUsing: do not crash on non-namespace using decls.
gislan Nov 26, 2020
e9f7dc4
[libc++] Fix the Homebrew tap to install Buildkite on macOS hosts
ldionne Nov 26, 2020
433d0a3
[libc++] Remove ABI lists for previous releases
ldionne Nov 26, 2020
65db7d3
[NFC][SimplifyCFG] Add statistic to `FoldBranchToCommonDest()` fold
LebedevRI Nov 26, 2020
394b4fd
[NFC][SimplifyCFG] Add test coverage for FoldBranchToCommonDest xform…
LebedevRI Nov 26, 2020
2245fb8
[SimplifyCFG] FoldBranchToCommonDest: lift use-restriction on bonus i…
LebedevRI Nov 26, 2020
1de56d6
[llvmbuildectomy] Also include component groups in llvm-config --comp…
Nov 26, 2020
f3abd54
Revert "[SimplifyCFG] FoldBranchToCommonDest: lift use-restriction on…
LebedevRI Nov 26, 2020
76667c7
[libc++] Install missing package in the Dockerfile
ldionne Nov 26, 2020
f342ed1
[test] Fix runtime-pointer-checking-insert-typesize.ll under NPM
aeubanks Nov 26, 2020
8166ed1
[BasicAA] Fix BatchAA results for phi-phi assumptions
nikic Nov 22, 2020
f095ac1
[clangd] Fix use of system-installed GRPC after f726101b6240a6740b3c0…
sam-mccall Nov 25, 2020
5836e52
[RISCV] Add isel patterns to use SBSET for (1 << X) by using X0 as th…
topperc Nov 26, 2020
2e32c49
[LangRef] Add poison constant
aqjune Nov 26, 2020
60e749a
[InlineCost] Fix indentation (NFC)
kazutakahirata Nov 27, 2020
4d83aba
[DAGCombine] Adding a hook to improve the precision of fsqrt if the i…
Nov 27, 2020
abfcb60
[clangd] Add support for within-file rename of complicated fields
kirillbobyrev Nov 27, 2020
faf1838
[IndVars] LCSSA Phi users should not prevent widening
xortator Nov 27, 2020
9178c63
[IR] Use llvm::is_contained and pred_size (NFC)
kazutakahirata Nov 27, 2020
0077e16
[Test] Add some more tests showing how we fail to widen IV
xortator Nov 27, 2020
e048104
[RISCV] Don't remove (and X, 0xffffffff) from inputs when matching RI…
topperc Nov 27, 2020
3d811c5
[llvm-readelf/obj] - Stop calling `reportError` in `printArchSpecific…
Nov 25, 2020
808fcfe
Revert "[DebugInfo] Improve dbg preservation in LSR."
markuslavin Nov 27, 2020
a513be4
[libc][Obvious] Fix typo in strnlen_test.cpp.
ChennngWang Nov 27, 2020
5dd5a08
[mlir] Let ModuleTranslate propagate LLVM triple
nicolasvasilache Nov 26, 2020
8dcf8d1
[msan] Fix bugs when instrument x86.avx512*_cvt* intrinsics.
phoebewang Nov 27, 2020
5535696
[mlir] Add gpu.allocate, gpu.deallocate ops with LLVM lowering to run…
chsigg Nov 24, 2020
6484567
[MLIR][SCF] Find all innermost loops for parallel loop tiling
frgossen Nov 27, 2020
4018806
[NFC][SimplifyCFG] FoldBranchToCommonDest: add one more test with PHI
LebedevRI Nov 27, 2020
b33fbba
Reland [SimplifyCFG] FoldBranchToCommonDest: lift use-restriction on …
LebedevRI Nov 27, 2020
7b8d50b
[InstSimplify] Clarify use of FixedVectorType in SimplifySelectInst
c-rhodes Nov 24, 2020
a2d561f
[SVE] Add a couple of extra sizeless type tests
rsandifo-arm Mar 5, 2020
89c1a7a
[ASTImporter] Import the default argument of NonTypeTemplateParmDecl
Teemperor Nov 26, 2020
0d9166f
[LegacyPM] Remove unused undocumented parameter. NFC.
jayfoad Nov 27, 2020
68ed644
[LegacyPM] Avoid a redundant map lookup in setLastUser. NFC.
jayfoad Nov 26, 2020
a8beb4a
[libc] Fix typo in buildbot README.txt.
ChennngWang Oct 29, 2020
4b9c2bb
[X86] Regenerate extract-store.ll tests
RKSimon Nov 26, 2020
969918e
[DAG] Legalize umin(x,y) -> sub(x,usubsat(x,y)) and umax(x,y) -> add(…
RKSimon Nov 27, 2020
10ad64a
[SLP] Dump Tree costs. NFC.
Nov 27, 2020
d939ba4
[ARM] MVE qabs vectorization test. NFC
davemgreen Nov 27, 2020
c2090ff
[obj2yaml] - Don't assert when trying to calculate the expected secti…
Nov 26, 2020
b215198
[libc++] [docs] Exclude helper files from Sphinx configuration to avo…
mkurdej Nov 27, 2020
ee9ffc7
[obj2yaml] - Dump the `EShNum` key in some cases.
Nov 26, 2020
63d3198
[mlir] Fix typos and broken links in LangRef
felipepiovezan Nov 27, 2020
7793db3
[OpenCL] Check for extension string extension lookup
Nov 27, 2020
a2016dc
[AArch64][SLP] Precommit tests which would be better not to SLP vecto…
Nov 27, 2020
0ce32a7
Revert "[ASTMatchers] Matcher macros with params move params instead …
zmodem Nov 27, 2020
e4c74fd
Don't elide splat attributes during printing
Nov 26, 2020
ff8e8c1
[AIX] Enabling vector type arguments and return for AIX
ZarkoT Nov 27, 2020
4c419c4
[TableGen][SchedModels] Get rid of hasVariant. NFC
eleviant Nov 27, 2020
527a7fd
[libc++] Replace several uses of 0 by nullptr
waywardmonkeys Nov 24, 2020
da1b50d
[libc++] Formalize what configurations are covered by the ABI lists
ldionne Nov 26, 2020
89a0f48
[libomptarget][cuda] Detect missing symbols in plugin at build time
JonChesterfield Nov 27, 2020
c462846
[Hexagon] Add HVX support for ISD::SMAX/SMIN/UMAX/UMIN instead of cus…
RKSimon Nov 27, 2020
2ad2e91
[X86] Add AVX2/AVX512 test coverage in sat-add.ll
RKSimon Nov 27, 2020
8e0148d
[AllocaInst] Update `getAllocationSizeInBits` to return `TypeSize`.
Nov 27, 2020
5646280
[libc++] Introduce an indirection to create threads in the test suite
ldionne Nov 23, 2020
ae00879
[VPlan] Use VPTransformState::set in widenGEP.
fhahn Nov 27, 2020
9ac6e95
Merge remote-tracking branch 'otcshare_llvm/sycl-web' into llvmspirv_…
vmaksimo Nov 30, 2020
0fc9bf9
Merge commit 'ae008798a42943da709aaedb32936217422e2a6b' into llvmspir…
vmaksimo Nov 30, 2020
3c4068c
Enable GitHub Actions for builds and tests (#818)
AlexeySachkov Nov 24, 2020
f42e40c
Remove unnecessary check for ivdep (#819)
MrSidims Nov 24, 2020
51cbb72
Fix issues found by a static analysis tool (#806)
MochalovaAn Nov 24, 2020
0b649a6
Align with LLORG on sret/byval parameter attribute types (#830)
Nov 25, 2020
de2cb98
Update the test build instructions
Nov 25, 2020
61e9847
Fix IVDep translation for pointer parameters
Nov 2, 2020
b710cb7
Move the "IVDep on closure fields" test into the common directory
Nov 2, 2020
7976f31
Add GitHub Actions badges
AlexeySotkin Nov 26, 2020
8bae3c9
Add support for VectorComputeFastCompositeKernelINTEL (#827)
DmitryBushev Nov 26, 2020
744cd93
Make LoopControlLoopCoalesceINTELMask parameter be mandatory
MrSidims Nov 18, 2020
26f5d76
Support of OpSpecConstantComposite instruction
AlexeySotkin Nov 12, 2020
1a5c034
Add command line options test for OpSpecConstantComposite
AlexeySotkin Nov 26, 2020
cb33548
Support atomic ordering for LLVM load/store instructions
AlexeySotkin Nov 23, 2020
132176c
Extend atomics.spt test with SPIR-V friendly IR representation
AlexeySotkin Nov 26, 2020
dec89ea
Add intel::nofusion loop attribute translation
MrSidims Nov 20, 2020
c3485f8
Add support for SPV_INTEL_fp_fast_math_mode (#822)
MochalovaAn Nov 30, 2020
4fdbfae
Support the SPV_EXT_shader_atomic_float_add extension
Nov 23, 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
  •  
  •  
  •  
21 changes: 21 additions & 0 deletions .github/workflows/main-branch-sync.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: main branch sync

on:
push:
branches:
- 'master'

jobs:
branch_sync:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v2
with:
fetch-depth: 0

- name: Update branch
env:
LLVMBOT_TOKEN: ${{ secrets.LLVMBOT_MAIN_SYNC }}
run: |
git push https://[email protected]/${{ github.repository }} HEAD:temp-test-main
2 changes: 0 additions & 2 deletions clang-tools-extra/clang-query/QueryParser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,6 @@ QueryRef QueryParser::parseSetTraversalKind(
unsigned Value =
LexOrCompleteWord<unsigned>(this, ValStr)
.Case("AsIs", ast_type_traits::TK_AsIs)
.Case("IgnoreImplicitCastsAndParentheses",
ast_type_traits::TK_IgnoreImplicitCastsAndParentheses)
.Case("IgnoreUnlessSpelledInSource",
ast_type_traits::TK_IgnoreUnlessSpelledInSource)
.Default(~0u);
Expand Down
11 changes: 5 additions & 6 deletions clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -79,12 +79,11 @@ void UnusedRaiiCheck::check(const MatchFinder::MatchResult &Result) {
// written type.
auto Matches =
match(expr(hasDescendant(typeLoc().bind("t"))), *E, *Result.Context);
const auto *TL = selectFirst<TypeLoc>("t", Matches);
assert(TL);
D << FixItHint::CreateInsertion(
Lexer::getLocForEndOfToken(TL->getEndLoc(), 0, *Result.SourceManager,
getLangOpts()),
Replacement);
if (const auto *TL = selectFirst<TypeLoc>("t", Matches))
D << FixItHint::CreateInsertion(
Lexer::getLocForEndOfToken(TL->getEndLoc(), 0, *Result.SourceManager,
getLangOpts()),
Replacement);
}

} // namespace bugprone
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ bool isCapsOnly(StringRef Name) {
class MacroUsageCallbacks : public PPCallbacks {
public:
MacroUsageCallbacks(MacroUsageCheck *Check, const SourceManager &SM,
StringRef RegExp, bool CapsOnly, bool IgnoreCommandLine)
: Check(Check), SM(SM), RegExp(RegExp), CheckCapsOnly(CapsOnly),
StringRef RegExpStr, bool CapsOnly, bool IgnoreCommandLine)
: Check(Check), SM(SM), RegExp(RegExpStr), CheckCapsOnly(CapsOnly),
IgnoreCommandLineMacros(IgnoreCommandLine) {}
void MacroDefined(const Token &MacroNameTok,
const MacroDirective *MD) override {
Expand All @@ -47,7 +47,7 @@ class MacroUsageCallbacks : public PPCallbacks {
return;

StringRef MacroName = MacroNameTok.getIdentifierInfo()->getName();
if (!CheckCapsOnly && !llvm::Regex(RegExp).match(MacroName))
if (!CheckCapsOnly && !RegExp.match(MacroName))
Check->warnMacro(MD, MacroName);

if (CheckCapsOnly && !isCapsOnly(MacroName))
Expand All @@ -57,7 +57,7 @@ class MacroUsageCallbacks : public PPCallbacks {
private:
MacroUsageCheck *Check;
const SourceManager &SM;
StringRef RegExp;
const llvm::Regex RegExp;
bool CheckCapsOnly;
bool IgnoreCommandLineMacros;
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,14 +122,32 @@ static StringRef const StyleNames[] = {
#undef NAMING_KEYS
// clang-format on

IdentifierNamingCheck::NamingStyle::NamingStyle(
llvm::Optional<IdentifierNamingCheck::CaseType> Case,
const std::string &Prefix, const std::string &Suffix,
const std::string &IgnoredRegexpStr)
: Case(Case), Prefix(Prefix), Suffix(Suffix),
IgnoredRegexpStr(IgnoredRegexpStr) {
if (!IgnoredRegexpStr.empty()) {
IgnoredRegexp =
llvm::Regex(llvm::SmallString<128>({"^", IgnoredRegexpStr, "$"}));
if (!IgnoredRegexp.isValid())
llvm::errs() << "Invalid IgnoredRegexp regular expression: "
<< IgnoredRegexpStr;
}
}

static IdentifierNamingCheck::FileStyle
getFileStyleFromOptions(const ClangTidyCheck::OptionsView &Options) {
SmallVector<llvm::Optional<IdentifierNamingCheck::NamingStyle>, 0> Styles(
SK_Count);
SmallVector<llvm::Optional<IdentifierNamingCheck::NamingStyle>, 0> Styles;
Styles.resize(SK_Count);
SmallString<64> StyleString;
for (unsigned I = 0; I < SK_Count; ++I) {
StyleString = StyleNames[I];
size_t StyleSize = StyleString.size();
StyleString.append("IgnoredRegexp");
std::string IgnoredRegexpStr = Options.get(StyleString, "");
StyleString.resize(StyleSize);
StyleString.append("Prefix");
std::string Prefix(Options.get(StyleString, ""));
// Fast replacement of [Pre]fix -> [Suf]fix.
Expand All @@ -141,9 +159,10 @@ getFileStyleFromOptions(const ClangTidyCheck::OptionsView &Options) {
auto CaseOptional =
Options.getOptional<IdentifierNamingCheck::CaseType>(StyleString);

if (CaseOptional || !Prefix.empty() || !Postfix.empty())
if (CaseOptional || !Prefix.empty() || !Postfix.empty() ||
!IgnoredRegexpStr.empty())
Styles[I].emplace(std::move(CaseOptional), std::move(Prefix),
std::move(Postfix));
std::move(Postfix), std::move(IgnoredRegexpStr));
}
bool IgnoreMainLike = Options.get("IgnoreMainLikeFunctions", false);
return {std::move(Styles), IgnoreMainLike};
Expand Down Expand Up @@ -175,6 +194,9 @@ void IdentifierNamingCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
continue;
StyleString = StyleNames[I];
size_t StyleSize = StyleString.size();
StyleString.append("IgnoredRegexp");
Options.store(Opts, StyleString, Styles[I]->IgnoredRegexpStr);
StyleString.resize(StyleSize);
StyleString.append("Prefix");
Options.store(Opts, StyleString, Styles[I]->Prefix);
// Fast replacement of [Pre]fix -> [Suf]fix.
Expand All @@ -194,7 +216,7 @@ void IdentifierNamingCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
}

static bool matchesStyle(StringRef Name,
IdentifierNamingCheck::NamingStyle Style) {
const IdentifierNamingCheck::NamingStyle &Style) {
static llvm::Regex Matchers[] = {
llvm::Regex("^.*$"),
llvm::Regex("^[a-z][a-z0-9_]*$"),
Expand Down Expand Up @@ -589,12 +611,10 @@ static StyleKind findStyleKind(

// If this method has the same name as any base method, this is likely
// necessary even if it's not an override. e.g. CRTP.
auto FindHidden = [&](const CXXBaseSpecifier *S, clang::CXXBasePath &P) {
return CXXRecordDecl::FindOrdinaryMember(S, P, Decl->getDeclName());
};
CXXBasePaths UnusedPaths;
if (Decl->getParent()->lookupInBases(FindHidden, UnusedPaths))
return SK_Invalid;
for (const CXXBaseSpecifier &Base : Decl->getParent()->bases())
if (const auto *RD = Base.getType()->getAsCXXRecordDecl())
if (RD->hasMemberName(Decl->getDeclName()))
return SK_Invalid;

if (Decl->isConstexpr() && NamingStyles[SK_ConstexprMethod])
return SK_ConstexprMethod;
Expand Down Expand Up @@ -681,6 +701,9 @@ static llvm::Optional<RenamerClangTidyCheck::FailureInfo> getFailureInfo(
return None;

const IdentifierNamingCheck::NamingStyle &Style = *NamingStyles[SK];
if (Style.IgnoredRegexp.isValid() && Style.IgnoredRegexp.match(Name))
return None;

if (matchesStyle(Name, Style))
return None;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,12 +52,18 @@ class IdentifierNamingCheck final : public RenamerClangTidyCheck {
NamingStyle() = default;

NamingStyle(llvm::Optional<CaseType> Case, const std::string &Prefix,
const std::string &Suffix)
: Case(Case), Prefix(Prefix), Suffix(Suffix) {}
const std::string &Suffix, const std::string &IgnoredRegexpStr);
NamingStyle(const NamingStyle &O) = delete;
NamingStyle &operator=(NamingStyle &&O) = default;
NamingStyle(NamingStyle &&O) = default;

llvm::Optional<CaseType> Case;
std::string Prefix;
std::string Suffix;
// Store both compiled and non-compiled forms so original value can be
// serialized
llvm::Regex IgnoredRegexp;
std::string IgnoredRegexpStr;
};

struct FileStyle {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#include "ASTUtils.h"
#include "clang/AST/CXXInheritance.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/Basic/CharInfo.h"
#include "clang/Frontend/CompilerInstance.h"
#include "clang/Lex/PPCallbacks.h"
#include "clang/Lex/Preprocessor.h"
Expand Down Expand Up @@ -463,6 +464,8 @@ void RenamerClangTidyCheck::check(const MatchFinder::MatchResult &Result) {
Failure.FixStatus = ShouldFixStatus::ConflictsWithKeyword;
else if (Ident->hasMacroDefinition())
Failure.FixStatus = ShouldFixStatus::ConflictsWithMacroDefinition;
} else if (!isValidIdentifier(Info.Fixup)) {
Failure.FixStatus = ShouldFixStatus::FixInvalidIdentifier;
}

Failure.Info = std::move(Info);
Expand Down Expand Up @@ -503,7 +506,8 @@ void RenamerClangTidyCheck::expandMacro(const Token &MacroNameTok,
static std::string
getDiagnosticSuffix(const RenamerClangTidyCheck::ShouldFixStatus FixStatus,
const std::string &Fixup) {
if (Fixup.empty())
if (Fixup.empty() ||
FixStatus == RenamerClangTidyCheck::ShouldFixStatus::FixInvalidIdentifier)
return "; cannot be fixed automatically";
if (FixStatus == RenamerClangTidyCheck::ShouldFixStatus::ShouldFix)
return {};
Expand All @@ -517,7 +521,6 @@ getDiagnosticSuffix(const RenamerClangTidyCheck::ShouldFixStatus FixStatus,
RenamerClangTidyCheck::ShouldFixStatus::ConflictsWithMacroDefinition)
return "; cannot be fixed because '" + Fixup +
"' would conflict with a macro definition";

llvm_unreachable("invalid ShouldFixStatus");
}

Expand Down
3 changes: 3 additions & 0 deletions clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,9 @@ class RenamerClangTidyCheck : public ClangTidyCheck {
/// automatically.
ConflictsWithMacroDefinition,

/// The fixup results in an identifier that is not a valid c/c++ identifier.
FixInvalidIdentifier,

/// Values pass this threshold will be ignored completely
/// i.e no message, no fixup.
IgnoreFailureThreshold,
Expand Down
14 changes: 8 additions & 6 deletions clang-tools-extra/clangd/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ add_clang_library(clangDaemon
SemanticSelection.cpp
SourceCode.cpp
QueryDriverDatabase.cpp
TidyProvider.cpp
TUScheduler.cpp
URI.cpp
XRefs.cpp
Expand All @@ -97,6 +98,7 @@ add_clang_library(clangDaemon
index/IndexAction.cpp
index/MemIndex.cpp
index/Merge.cpp
index/ProjectAware.cpp
index/Ref.cpp
index/Relation.cpp
index/Serialization.cpp
Expand Down Expand Up @@ -139,7 +141,6 @@ clang_target_link_libraries(clangDaemon
clangTooling
clangToolingCore
clangToolingInclusions
clangToolingRefactoring
clangToolingSyntax
)

Expand Down Expand Up @@ -168,17 +169,18 @@ if ( CLANGD_BUILD_XPC )
add_subdirectory(xpc)
endif ()

if (CLANGD_ENABLE_REMOTE)
include(FindGRPC)
endif()

if(CLANG_INCLUDE_TESTS)
add_subdirectory(test)
add_subdirectory(unittests)
add_subdirectory(test)
add_subdirectory(unittests)
endif()

# FIXME(kirillbobyrev): Document this in the LLVM docs once remote index is stable.
option(CLANGD_ENABLE_REMOTE "Use gRPC library to enable remote index support for Clangd" OFF)
set(GRPC_INSTALL_PATH "" CACHE PATH "Path to gRPC library manual installation.")

if (CLANGD_ENABLE_REMOTE)
include(FindGRPC)
endif()
add_subdirectory(index/remote)
add_subdirectory(index/dex/dexp)
42 changes: 42 additions & 0 deletions clang-tools-extra/clangd/ClangdLSPServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -604,6 +604,7 @@ void ClangdLSPServer::onInitialize(const InitializeParams &Params,
}},
{"declarationProvider", true},
{"definitionProvider", true},
{"implementationProvider", true},
{"documentHighlightProvider", true},
{"documentLinkProvider",
llvm::json::Object{
Expand All @@ -624,6 +625,7 @@ void ClangdLSPServer::onInitialize(const InitializeParams &Params,
}},
{"typeHierarchyProvider", true},
{"memoryUsageProvider", true}, // clangd extension.
{"callHierarchyProvider", true},
}}}};
if (Opts.Encoding)
Result["offsetEncoding"] = *Opts.Encoding;
Expand Down Expand Up @@ -1223,6 +1225,26 @@ void ClangdLSPServer::onResolveTypeHierarchy(
std::move(Reply));
}

void ClangdLSPServer::onPrepareCallHierarchy(
const CallHierarchyPrepareParams &Params,
Callback<std::vector<CallHierarchyItem>> Reply) {
Server->prepareCallHierarchy(Params.textDocument.uri.file(), Params.position,
std::move(Reply));
}

void ClangdLSPServer::onCallHierarchyIncomingCalls(
const CallHierarchyIncomingCallsParams &Params,
Callback<std::vector<CallHierarchyIncomingCall>> Reply) {
Server->incomingCalls(Params.item, std::move(Reply));
}

void ClangdLSPServer::onCallHierarchyOutgoingCalls(
const CallHierarchyOutgoingCallsParams &Params,
Callback<std::vector<CallHierarchyOutgoingCall>> Reply) {
// FIXME: To be implemented.
Reply(std::vector<CallHierarchyOutgoingCall>{});
}

void ClangdLSPServer::applyConfiguration(
const ConfigurationSettings &Settings) {
// Per-file update to the compilation database.
Expand Down Expand Up @@ -1291,6 +1313,22 @@ void ClangdLSPServer::onReference(const ReferenceParams &Params,
});
}

void ClangdLSPServer::onGoToImplementation(
const TextDocumentPositionParams &Params,
Callback<std::vector<Location>> Reply) {
Server->findImplementations(
Params.textDocument.uri.file(), Params.position,
[Reply = std::move(Reply)](
llvm::Expected<std::vector<LocatedSymbol>> Overrides) mutable {
if (!Overrides)
return Reply(Overrides.takeError());
std::vector<Location> Impls;
for (const LocatedSymbol &Sym : *Overrides)
Impls.push_back(Sym.PreferredDeclaration);
return Reply(std::move(Impls));
});
}

void ClangdLSPServer::onSymbolInfo(const TextDocumentPositionParams &Params,
Callback<std::vector<SymbolDetails>> Reply) {
Server->symbolInfo(Params.textDocument.uri.file(), Params.position,
Expand Down Expand Up @@ -1431,6 +1469,7 @@ ClangdLSPServer::ClangdLSPServer(class Transport &Transp,
MsgHandler->bind("textDocument/signatureHelp", &ClangdLSPServer::onSignatureHelp);
MsgHandler->bind("textDocument/definition", &ClangdLSPServer::onGoToDefinition);
MsgHandler->bind("textDocument/declaration", &ClangdLSPServer::onGoToDeclaration);
MsgHandler->bind("textDocument/implementation", &ClangdLSPServer::onGoToImplementation);
MsgHandler->bind("textDocument/references", &ClangdLSPServer::onReference);
MsgHandler->bind("textDocument/switchSourceHeader", &ClangdLSPServer::onSwitchSourceHeader);
MsgHandler->bind("textDocument/prepareRename", &ClangdLSPServer::onPrepareRename);
Expand All @@ -1450,6 +1489,9 @@ ClangdLSPServer::ClangdLSPServer(class Transport &Transp,
MsgHandler->bind("textDocument/symbolInfo", &ClangdLSPServer::onSymbolInfo);
MsgHandler->bind("textDocument/typeHierarchy", &ClangdLSPServer::onTypeHierarchy);
MsgHandler->bind("typeHierarchy/resolve", &ClangdLSPServer::onResolveTypeHierarchy);
MsgHandler->bind("textDocument/prepareCallHierarchy", &ClangdLSPServer::onPrepareCallHierarchy);
MsgHandler->bind("callHierarchy/incomingCalls", &ClangdLSPServer::onCallHierarchyIncomingCalls);
MsgHandler->bind("callHierarchy/outgoingCalls", &ClangdLSPServer::onCallHierarchyOutgoingCalls);
MsgHandler->bind("textDocument/selectionRange", &ClangdLSPServer::onSelectionRange);
MsgHandler->bind("textDocument/documentLink", &ClangdLSPServer::onDocumentLink);
MsgHandler->bind("textDocument/semanticTokens/full", &ClangdLSPServer::onSemanticTokens);
Expand Down
10 changes: 10 additions & 0 deletions clang-tools-extra/clangd/ClangdLSPServer.h
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,8 @@ class ClangdLSPServer : private ClangdServer::Callbacks {
Callback<std::vector<Location>>);
void onGoToDefinition(const TextDocumentPositionParams &,
Callback<std::vector<Location>>);
void onGoToImplementation(const TextDocumentPositionParams &,
Callback<std::vector<Location>>);
void onReference(const ReferenceParams &, Callback<std::vector<Location>>);
void onSwitchSourceHeader(const TextDocumentIdentifier &,
Callback<llvm::Optional<URIForFile>>);
Expand All @@ -133,6 +135,14 @@ class ClangdLSPServer : private ClangdServer::Callbacks {
Callback<llvm::Optional<TypeHierarchyItem>>);
void onResolveTypeHierarchy(const ResolveTypeHierarchyItemParams &,
Callback<llvm::Optional<TypeHierarchyItem>>);
void onPrepareCallHierarchy(const CallHierarchyPrepareParams &,
Callback<std::vector<CallHierarchyItem>>);
void onCallHierarchyIncomingCalls(
const CallHierarchyIncomingCallsParams &,
Callback<std::vector<CallHierarchyIncomingCall>>);
void onCallHierarchyOutgoingCalls(
const CallHierarchyOutgoingCallsParams &,
Callback<std::vector<CallHierarchyOutgoingCall>>);
void onChangeConfiguration(const DidChangeConfigurationParams &);
void onSymbolInfo(const TextDocumentPositionParams &,
Callback<std::vector<SymbolDetails>>);
Expand Down
Loading