Skip to content

Feature/merge upstream 20210212 #35

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 1,239 commits into from
Jun 28, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1239 commits
Select commit Hold shift + click to select a range
9bf3cfa
[SCEV] Add a missing AssumptionCache parameter
preames Feb 10, 2021
19fc8ee
Add missing nullptr check.
adrian-prantl Feb 10, 2021
c81d529
[libc++] Use builtins in more math.h functions.
TocarIP Feb 10, 2021
1cb47a0
[CSSPGO] Unblock optimizations with pseudo probe instrumentation.
htyu Feb 8, 2021
5e77ea0
Make gCrashRecoveryEnabled thread local
jpienaar Feb 10, 2021
4dc8365
[clangd] Remove support for pre-standard semanticHighlighting notific…
sam-mccall Jan 28, 2021
bda5e57
[clangd] Remove redundant -fno-delayed-template-parsing in tests. NFCI
sam-mccall Feb 10, 2021
9283058
[AArch64][GlobalISel] Fold G_ADD into the cset for G_ICMP
Feb 10, 2021
db0d7d0
[SampleFDO][NFC] Refactor SampleProfileLoader to reuse in CodeGen
xur-llvm Feb 10, 2021
606c3be
[lldb] Minor cleanups to ThreadPlan.h (NFC)
kastiglione Feb 8, 2021
d650365
Revert "Make gCrashRecoveryEnabled thread local"
jpienaar Feb 10, 2021
228f00b
[NFC] Simplify test
vitalybuka Feb 10, 2021
b6051f5
[Clang, NewPM] Add KMSan support
vitalybuka Feb 9, 2021
cee9869
[opt] Add helpful alternatives for -analyze under new PM
aeubanks Feb 10, 2021
096f547
[asan][test] Fix Linux/odr-violation.cpp after symbolizer change D95927
MaskRay Feb 10, 2021
8fb4a4f
[SampleFDO] Silence -Wnon-virtual-dtor warning
d0k Feb 10, 2021
3a5f8a3
[CSSPGO] Restrict pseudo probe tests to x86_64 only.
htyu Feb 10, 2021
5f7a4d8
[AArch64][GlobalISel] Perform load/store extended reg folding with op…
Feb 10, 2021
4643fd2
[mlir][Linalg] Fix crash when tileSizeComputationFunction is left uns…
nicolasvasilache Feb 10, 2021
24db783
[mlir] NFC - Extend inferResultType API for SubViewOp and SubTensorOp
nicolasvasilache Feb 10, 2021
309d40f
[lldb] Use internal_dict name over dict in python examples
kastiglione Feb 10, 2021
6b07a97
[mlir] Introduce more intuitive wording for attributes.
silvasean Feb 5, 2021
b83361b
Minor fixes to Type ODS docs.
silvasean Feb 10, 2021
1cd1573
[docs] Make clearer in WritingAnLLVMPass that the legacy PM isn't the…
aeubanks Feb 10, 2021
c19a412
[MLIR][TOSA] Tosa elementwise broadcasting
rsuderman Feb 6, 2021
1514f3b
[AArch64][GlobalISel] Don't perform the mul const combine with G_PTR_ADD
Feb 10, 2021
897bec9
[test/ubsan] Allow unused FileCheck prefixes in TypeCheck/vptr.cpp
vedantk Feb 11, 2021
edd365c
[flang][fir][NFC] Move ShapeType to TableGen type definition
clementval Feb 11, 2021
fa35c1f
ValueMapper: Rename RF_MoveDistinctMDs => RF_ReuseAndMutateDistinctMD…
dexonsmith Feb 10, 2021
09cfec6
Fix CMake configuration for MLIR unittests
joker-eph Feb 11, 2021
4fc6ff0
[Draft] [examples] Move llvm/examples/OCaml-Kaleidoscope/ to llvm-arc…
xgupta Feb 8, 2021
77fecc0
[NFC][libunbind] Fix Sphinx error during CMake invocation
xgupta Feb 11, 2021
47b97d4
[flang] Manage per-specification-part state better
klausler Feb 11, 2021
b4993cf
[sanitizer] Move MSan's chained_origin_depot to sanitizer_common
stephan-yichao-zhao Feb 9, 2021
585e7a3
Diagnose unhandled cases in DW_OP_deref
adrian-prantl Feb 10, 2021
9895ba8
[flang] Cope with specific procedures with same name as generic
klausler Feb 11, 2021
550f251
[flang][fir][NFC] Move ShapeShiftType to TableGen type definition
clementval Feb 11, 2021
b1aaed0
Enable `Pass::initialize()` to fail by returning a LogicalResult
joker-eph Feb 11, 2021
350ab4e
[RISCV] Use OperandTransform field of ImmLeaf to slightly simplify a …
topperc Feb 11, 2021
11bec2a
[mlir][sparse] reduce tensor dimensions in sparse test
aartbik Feb 11, 2021
0973ce8
[RISCV] Fix whitespace in RISCVInstrInfoC.td
jrtc27 Feb 11, 2021
ca606dc
[RISCV] More whitespace and comment typo fixes in RISCVInstrInfoC.td
jrtc27 Feb 11, 2021
2407eb0
[analyzer] Update static analyzer to be support sarif-html
Feb 11, 2021
5ad416c
[flang][fir] Fix Werror build failure after D96422
clementval Feb 11, 2021
91ca9ad
[Polly] Avoid "using namespace llvm" in public headers. NFC.
Meinersbur Feb 11, 2021
5189c5b
[X86] Simplify patterns for avx512 vpcmp. NFC
topperc Feb 11, 2021
d12a0f4
[GCOV] Drop unnecessary const from return types (NFC)
kazutakahirata Feb 11, 2021
b16c6b2
[TableGen] Use ListSeparator (NFC)
kazutakahirata Feb 11, 2021
c5e90a8
[AsmPrinter] Use range-based for loops (NFC)
kazutakahirata Feb 11, 2021
23753c6
[Polly] Hide Simplify implementation from header. NFC.
Meinersbur Feb 11, 2021
e5b0b43
[AMDGPU] Refactor MIMG tables to better handle hardware variants
perlfu Feb 11, 2021
984cfdc
[clang][cli] Fix gcc warning (NFC)
nullptr-cpp Feb 11, 2021
6efcc2f
[Test] Add negative tests where usub optimization should not apply
xortator Feb 11, 2021
3d15b7e
[Codegenprepare][X86] Use usub with overflow opt for IV increment
xortator Feb 11, 2021
a76761c
NFC comment-only cleanups
sanjoy Feb 11, 2021
bac1f12
NFC; fix typo in comment
sanjoy Feb 11, 2021
8334cdd
[NFC] Don't pass redundant arguments
aeubanks Feb 11, 2021
9325b8d
[mlir][Linalg] Add conv ops with TF definition.
hanhanW Feb 11, 2021
3b4f706
[AArch64][SVE] Asm: Fix supported immediates for DUP/CPY
sdesmalen-arm Feb 11, 2021
df1a17c
[clang-check] Add tokens-dump in clang-check.
hokein Feb 11, 2021
be9bbb5
[LoopVectorize] NFC: Change selectVectorizationFactor to work on Elem…
sdesmalen-arm Feb 11, 2021
35a5e88
[Syntax] NFC, Simplify a test with annotations
hokein Feb 8, 2021
e159a3c
[Syntax] Remove a strict valid source location assertion for TypeLoc.
hokein Feb 8, 2021
1db7b9c
[ARM] Make a BE predicate bitcast consistent with the rest of llvm
davemgreen Feb 8, 2021
9498315
Expand masked mem intrinsics correctly wrt big-endian
markuslavin Feb 11, 2021
33a58c1
[mlir][gpu] Allow all dialects in SCF to GPU conversion.
Feb 11, 2021
703130f
[TTI] Change TargetTransformInfo::getMinimumVF to return ElementCount
sdesmalen-arm Feb 11, 2021
0b44885
[OpenCL] Add cl_khr_subgroup_extended_types to TableGen BIFs
svenvh Feb 11, 2021
a874d18
[DebugInfo] Prevent inlining in NRVO-string test cases
Teemperor Feb 11, 2021
5c55d37
[CodeComplete] Member completion: heuristically resolve some dependen…
sam-mccall Feb 9, 2021
6c47eaf
[clang][index] report references from unreslovedLookupExpr.
hokein Jan 29, 2021
7786ac8
[ARM] Remove dead mov's in preheader of tail predicated loops
davemgreen Feb 11, 2021
90081f3
Revert "[Codegenprepare][X86] Use usub with overflow opt for IV incre…
xortator Feb 11, 2021
4150083
NFC: Migrate CodeMetrics to work on InstructionCost
sdesmalen-arm Feb 11, 2021
c16f776
[AMDGPU] Move kill lowering to WQM pass and add live mask tracking
perlfu Feb 10, 2021
0feff71
[flang][driver] Move standard macro predefs to a dedicated method (nfc)
banach-space Feb 11, 2021
a31eae8
[test][Dexter] Fix test failure if space in python path
jh7370 Feb 10, 2021
e771614
[ARM] Change getScalarizationOverhead overload used in gather costs. NFC
davemgreen Feb 11, 2021
81bc136
Correct swift_bridge duplicate attribute warning logic
AaronBallman Feb 11, 2021
af1cccf
[Test] Add test that exposed failure on reverted patch in codegen
xortator Feb 11, 2021
78717f5
[gn build] Port b4993cf54d7f
nico Feb 11, 2021
418c218
Return "[Codegenprepare][X86] Use usub with overflow opt for IV incre…
xortator Feb 11, 2021
3a29ac2
[OpenCL] Fix missing const attributes for get_image_ builtins
svenvh Feb 11, 2021
69f1a7a
[ARM] Copy-paste error in ARMv87a architecture definition.
statham-arm Feb 11, 2021
7df4eaa
[lldb/test] Automatically find debug servers to test
labath Feb 4, 2021
81a9707
[Attr] Apply GNU-style attributes to expression statements
SavchenkoValeriy Dec 21, 2020
9a08f76
[mlir] Make JitRunnerMain main take a DialectRegistry
ftynse Feb 10, 2021
0881a4f
[mlir] make ModuleTranslation mapping fields private
ftynse Feb 10, 2021
67464df
[DebugInfo] Only perform TypeSize -> unsigned cast when necessary
Feb 11, 2021
a56e574
[lld][WebAssembly] Common superclass for input globals/events/tables
wingo Feb 11, 2021
bad0290
Improve STRICT_FSETCC codegen in absence of no NaN
Nov 19, 2020
e87b8e4
[lldb] Log the actual expression result in UserExpression::Evaluate
Teemperor Feb 11, 2021
059a335
Store the calculated constant expression value into the ConstantExpr …
AaronBallman Feb 11, 2021
b1ef919
[ARM] Add CostKind to getMVEVectorCostFactor.
davemgreen Feb 11, 2021
19b4d3c
[lldb] Don't emit a warning when using Objective-C getters in express…
Teemperor Feb 11, 2021
e332c22
[mlir][LLVM] NFC - Refactor a lookupOrCreateFn to reuse common functi…
nicolasvasilache Feb 11, 2021
71536fd
[lldb] Fix that running a top level expression without a process fail…
Teemperor Feb 11, 2021
d96bb48
[flang][fir][NFC] Move BoxType to TableGen type definition
clementval Feb 11, 2021
7e3b9ab
[Timer] On macOS count number of executed instructions
ahoppen Feb 11, 2021
a260ae7
BPF: Implement TTI.IntImmCost() properly
yonghong-song Feb 10, 2021
661f9e2
Revert "[flang][fir][NFC] Move BoxType to TableGen type definition"
clementval Feb 11, 2021
1739e7e
[gn build] Port 7e3b9aba609f
nico Feb 11, 2021
38ddead
[libc++][format] Add basic_format_parse_context.
mordante Feb 2, 2021
5beebf9
[DAG] foldLogicOfSetCCs - Generalize and/or (setcc X, CMax, ne), (set…
RKSimon Feb 11, 2021
033b1bd
[RISCV] Add support loads, stores, and splats of vXi1 fixed vectors.
topperc Feb 11, 2021
6a7deff
[flang] Remove `LINK_WITH_FIR` cmake switch
SouraVX Feb 10, 2021
d5387ec
[LV] Add tests showing suboptimal vectorization for narrow types.
fhahn Feb 11, 2021
88d1724
[sanitizer] Fix suffix-log-path_test.c on arm-linux-gnu
zatrazz Feb 11, 2021
ed98676
Support multi-configuration generators correctly in several config files
sstamenova Feb 11, 2021
18d38b2
[gn build] port ed98676fa483
nico Feb 11, 2021
0557b1b
[ELF] Resolve defined symbols before undefined symbols
MaskRay Feb 11, 2021
5744502
[TargetLowering][RISCV][AArch64][PowerPC] Enable BuildUDIV/BuildSDIV …
topperc Feb 11, 2021
23db2d3
[AMDGPU] Better selection of base offset when merging DS reads/writes
jayfoad Feb 9, 2021
0f60ed1
[ARM] Single source vmovnt tests. NFC
davemgreen Feb 11, 2021
0dc6122
[asan][test] Fix Linux/odr-violation.cpp on gcc
MaskRay Feb 11, 2021
af83e89
[libc++][format] Improve Add basic_format_parse_context.
mordante Feb 11, 2021
204360f
[flang] Fix typo in FlangConfig.cmake.in.
Feb 11, 2021
f8772da
[libc++][format] Enable format_error on older compilers.
mordante Feb 11, 2021
606aa62
Revert "[AssumptionCache] Avoid dangling llvm.assume calls in the cache"
Meinersbur Feb 11, 2021
74975d3
BPF: Add LLVMAnalysis in CMakefile LINK_COMPONENTS
yonghong-song Feb 11, 2021
6ef8473
[InstCombine] add tests for disguised mul ops; NFC
rotateright Feb 11, 2021
81c5189
[tests] Precommit tests for D96440
preames Feb 11, 2021
a680bc3
[clang][Arm] Fix handling of -Wa,-implicit-it=
nickdesaulniers Feb 11, 2021
70f3c6e
[lld][WebAssembly] Delay the merging of data section when dynamic lin…
sbc100 Feb 10, 2021
0bfa4ac
[flang] Improve "Error reading module file" error message
klausler Feb 11, 2021
e3c6fa3
AMDGPU: Restrict soft clause bundling at half of the available regs
arsenm Jan 14, 2021
2d9c6e1
[dfsan] Add origin chain utils
stephan-yichao-zhao Feb 5, 2021
4dc87d1
[flang][fir] Update the kind mapping class.
schweitzpgi Feb 9, 2021
d079dbc
[CodeGen] Basic block sections should take precendence over splitting.
snehasish Feb 10, 2021
97dbab8
llvm-dwarfdump: fix the counting when printing DW_OP_entry_value
adrian-prantl Feb 11, 2021
2c7077e
[CodeGen] Split out cold exception handling pads.
snehasish Feb 9, 2021
8880a63
[flang] Don't perform macro replacement unless *.F, *.F90, &c.
klausler Feb 11, 2021
3cad308
Revert "[lldb/test] Automatically find debug servers to test"
labath Feb 11, 2021
573348a
[clangd] Retire the cross-file-rename command-line flag.
hokein Feb 11, 2021
f47d7c1
[flang][fir][NFC] Rename WhereOp to IfOp.
schweitzpgi Feb 11, 2021
8151c1b
Move implementation of isAssumeLikeIntrinsic into IntrinsicInst
rampitec Feb 4, 2021
cb41ee9
[AMDGPU] Fix promote alloca with double use in a same insn
rampitec Feb 10, 2021
d06ab79
Encode alignment attribute for `atomicrmw`
gchatelet Feb 11, 2021
17517f3
Encode alignment attribute for `cmpxchg`
gchatelet Feb 11, 2021
ca052ad
Fix incorrect indentation in LangRef.rst
gchatelet Feb 11, 2021
de40f6d
[CSSPGO] Process functions in a top-down order on a dynamic call graph.
htyu Feb 9, 2021
8f3518e
Fix incorrect indentation in LangRef.rst
gchatelet Feb 11, 2021
ffb21e7
[OpenMP] Enable omp_get_num_devices() on Windows
hansangbae Feb 5, 2021
876e771
[lldb] Disable x86-multithread-write.test with reproducers
JDevlieghere Feb 11, 2021
7b48326
NFCI. With the move to the new pass manager by default, sanitize-cove…
dyung Feb 11, 2021
0f848a2
Undo test changs introduced by D96193.
htyu Feb 11, 2021
838dcdb
[OpenMP] libomp: minor changes to improve library performance
AndreyChurbanov Feb 11, 2021
7491600
Fix errors in distributions
gchatelet Feb 11, 2021
61cca0f
[AArch64] Adding Neon Sm3 & Sm4 Intrinsics
pzhengqc Feb 11, 2021
60bed4a
Replace deprecated %T in 2 tests.
abidh Feb 11, 2021
5ebbc58
[dfsan] Introduce memory mapping for origin tracking
stephan-yichao-zhao Feb 11, 2021
8043d5a
NFC: update clang tests to check ordering and alignment for atomicrmw…
jyknight Feb 11, 2021
9e62c91
[RISCV] Initial support for insert/extract subvector
arcbbb Feb 11, 2021
5bc4f88
s[mlir] Tighten computation of inferred SubView result type.
nicolasvasilache Feb 11, 2021
f9c05fc
[WebAssembly] Use the new crt1-command.o if present.
sunfishcode Oct 12, 2020
0eed2b1
Remove test code that cause MSAN failure.
htyu Feb 11, 2021
a5ab1dc
[lldb] Add step target to ThreadPlanStepInRange constructor
kastiglione Feb 11, 2021
c314f5e
ObjectFileELF: Test whether reloc_header is non-null instead of asser…
pcc Dec 17, 2020
a48bee2
[flang][fir][NFC] Move BoxType to TableGen type definition
clementval Feb 11, 2021
9360f1a
[Sanitizer] Fix sanitizer tests without reducing optimization levels
Feb 9, 2021
f2f59d2
[NFC] Extract function which registers sanitizer passes
vitalybuka Feb 10, 2021
7a7836b
[RISCV] Add a pattern for a scalable vector mask vnot.
topperc Feb 11, 2021
686b65f
[Msan, NewPM] Reduce size of msan binaries
vitalybuka Feb 10, 2021
f2133f2
[NFC,memprof] Update test after D96319
vitalybuka Feb 12, 2021
6538cef
[tests] Autogen a few tests for ease of update
preames Feb 12, 2021
b911a71
[tests] precommit a tests for D96534 (and other range quality items)
preames Feb 12, 2021
72fc5b1
[tests] Autogen update test to remove whitespace diffs
preames Feb 12, 2021
ac2be2b
[lld][WebAssembly] Fix for weak undefined functions in -pie mode
sbc100 Feb 3, 2021
8ef4b96
[knownbits] Preserve known bits for small shift recurrences
preames Feb 12, 2021
5f022ad
[mlir] detect integer overflow in debug mode
aartbik Feb 11, 2021
7387f33
[Polly] Hide IslScheduleOptimizer implementation from header. NFC.
Meinersbur Feb 11, 2021
e3cd3a3
Partially Revert "scan-view: Remove Reporter.py and associated AppleS…
tstellar Feb 11, 2021
92ee3dd
DebugInfo/Symbolize: Don't differentiate function/data symbolization
MaskRay Feb 12, 2021
de035c1
[GlobalISel] Fix sext_inreg(load) combine to not move the originating…
aemerson Feb 12, 2021
db00953
Fix bitcode decoder error in "Encode alignment attribute for `atomicr…
jyknight Feb 12, 2021
4d3a061
[lldb] Fix 'r' and 'run' aliases on Apple Silicon
JDevlieghere Feb 12, 2021
732534e
[lldb] s/TARGET_OS_EMBEDDED/TARGET_OS_IPHONE/
JDevlieghere Feb 12, 2021
083d45b
[dfsan] Fix building OriginAddr at non-linux OS
stephan-yichao-zhao Feb 12, 2021
9b123cd
[Polly] Sanitize optimization levels.
Meinersbur Feb 12, 2021
56277e3
[TableGen] Make the map in InfoByHwMode protected. NFCI
topperc Feb 12, 2021
79401b4
[OpenMP][AMDGPU] Add support for linking libomptarget bitcode
pdhaliwal-amd Feb 8, 2021
e434fc0
gn build: Support cross-compiling libunwind for Android.
pcc Feb 4, 2021
2968611
[WebAssembly] Fix delegate's argument computation
aheejin Feb 11, 2021
b32fa17
[Test] Add a potentially hanging test to prevent merging patches that…
xortator Feb 12, 2021
0fd7c31
DebugInfo/Symbolize: Use stable_sort
MaskRay Feb 12, 2021
3e2e630
[TableGen] Use ListSeparator (NFC)
kazutakahirata Feb 12, 2021
9dc62d1
[PGO] Drop unnecessary const from return types (NFC)
kazutakahirata Feb 12, 2021
d61b4cb
[CodeGen] Use range-based for loops (NFC)
kazutakahirata Feb 12, 2021
63d787e
[CostModel] An extending load to illegal type is not free.
sdesmalen-arm Feb 12, 2021
f0f5afc
[Polly] Remove unused declaration. NFC.
Meinersbur Feb 12, 2021
1d42ba2
[BasicTTIImpl] Fix getCastInstrCost for scalable vectors by querying …
sdesmalen-arm Feb 12, 2021
0c11883
[lldb] Let TestPExpectTest test the right test class
Teemperor Feb 12, 2021
16213e1
[mlir] Allow users of `PromoteBuffersToStackPass` to customize `small…
pifon2a Feb 12, 2021
c3aeaba
[CSSPGO][llvm-profgen] Add brackets for context id to support extende…
wlei-llvm Feb 3, 2021
f816cf6
[DeveloperPolicy] Specify LLVM's license more clearly.
kbeyls Feb 11, 2021
e88da1d
[RISCV] Add support for integer fixed min/max
frasercrmck Feb 11, 2021
891e769
[mlir] Initialize `isSmallAlloc` in `initialize` method.
pifon2a Feb 12, 2021
9700228
[Analysis] Change VFABI::mangleTLIVectorName to use ElementCount
david-arm Feb 8, 2021
06f53f2
Fix exegesis build on aarch64-windows-msvc host
maxim-kuvyrkov Feb 12, 2021
6f04add
[libomptarget][amdgcn] Build amdgcn devicertl as openmp
JonChesterfield Feb 12, 2021
4348d8a
[mlir][math] Split off the math dialect.
Feb 12, 2021
18a7079
[OpenCL][Docs] Describe internals of TableGen builtins
svenvh Feb 12, 2021
18f16c9
[OpenCL][Docs] Clean up trailing characters
svenvh Feb 12, 2021
6103ba4
[AArch64] Add tests with sign cmps patterns that can be improved.
fhahn Feb 12, 2021
cc4dcd4
[MIRLangRef] Document MachineOperand comments
Feb 11, 2021
2bfe27d
[mlir][math] Fix cmake files after dialect splitting.
Feb 12, 2021
2465541
[DAG] DAGTypeLegalizer::PromoteIntRes_ADDSUBSHLSAT - break if-else ch…
RKSimon Feb 12, 2021
b6ccc76
[Test] Add test with uadd intrinsic with missing opt opportunity
xortator Feb 12, 2021
fc05b2d
[NFC][ProfileData] Improve language
vitalybuka Feb 12, 2021
0b3d312
[ASAN][NFC] Improve language
vitalybuka Feb 12, 2021
01b8744
[NFC][Analysis] Change struct VecDesc to use ElementCount
david-arm Feb 2, 2021
feaf1d8
[RISCV] Change parseVTypeI function
Feb 12, 2021
fdb640e
Mark output as text if it is really text
abhina-sree Feb 12, 2021
85fe5c9
[VPlan] Make VPRecipeBase inherit from VPUser directly (NFC).
fhahn Nov 9, 2020
4c4876c
[mlir] Use target-specific GPU kernel attributes in lowering pipelines
ftynse Feb 12, 2021
79b1b4a
[Vectorizers][TTI] remove option to bypass creation of vector reducti…
rotateright Feb 12, 2021
fea06ef
[SVE][LoopVectorize] Support for vectorization of loops with function…
kmclaughlin-arm Feb 12, 2021
530d6ea
[mlir][spirv] Lower sexti -> SConvert
d0k Feb 12, 2021
541828e
[ARM] Single source VMOVNT
davemgreen Feb 12, 2021
ee4dd0f
[clangd] Remove the cross-file-rename option.
hokein Feb 11, 2021
973e133
[mlir][Linalg] Improve region support in Linalg ops.
nicolasvasilache Feb 12, 2021
cea9f05
[clangd] Move command handlers into a map in ClangdLSPServer. NFC
sam-mccall Feb 11, 2021
7e9ceed
[TableGen][GlobalISel] Allow duplicate RendererFns
jayfoad Aug 27, 2020
33e731e
[analyzer][Liveness][NFC] Remove an unneeded pass to collect variable…
Szelethus Jul 21, 2020
07c5a80
Improve hover scopes for Objective-C code
DavidGoldman Dec 4, 2020
053e61d
Relands "[HIP] Change default --gpu-max-threads-per-block value to 1024"
yxsamliu Feb 12, 2021
f3fb2dd
[mlir][Linalg] NFC - Add an OpFoldResult-based builder for InitTensorOp
nicolasvasilache Feb 12, 2021
841ee74
AMDGPU/GlobalISel: Precommit globalisel tests for isKnownNeverNaN
petar-avramovic Feb 12, 2021
122c649
AMDGPU/GlobalISel: Check values of constants in isKnownNeverNaN
petar-avramovic Feb 12, 2021
f0d65f4
AMDGPU/GlobalISel: Calculate isKnownNeverNaN for fminnum and fmaxnum
petar-avramovic Feb 12, 2021
a3f6233
[AArch64] Add test case where machine outliner breaks up a bundle.
fhahn Feb 12, 2021
142c09f
[AArch64] Increase outlined sequence in test added in a3f6233fa4b4.
fhahn Feb 12, 2021
33f35a4
[clang-tidy] Fix `TransformerClangTidyCheck`'s handling of include in…
ymand Feb 11, 2021
b77bac0
[mlir] Introduce dialect interfaces for translation to LLVM IR
ftynse Feb 11, 2021
fb4d8fe
[clang] Update mustprogress tests.
fhahn Feb 10, 2021
ba3ea9c
[clangd] Fix clang tidy provider when multiple config files exist in …
njames93 Feb 12, 2021
ac2627f
[gn build] Port ba3ea9c60f0f
llvmgnsyncbot Feb 12, 2021
8dd6dd9
[clangd] Work around presumed MSVC stdlib bug
sam-mccall Feb 12, 2021
e1617d2
Revert "[lld][WebAssembly] Fix for weak undefined functions in -pie m…
sbc100 Feb 12, 2021
7590c00
[dfsan] Turn off THP at dfsan_flush
stephan-yichao-zhao Feb 12, 2021
875c76d
[RISCV] Add support for matching .vx and .vi forms of binary instruct…
topperc Feb 12, 2021
1697cc7
[RISCV] Add support for integer fixed vector setcc
topperc Feb 12, 2021
2423a38
[clangd] Introduce Modules
kadircet Feb 6, 2021
66900b3
[mlir] Use dialect interfaces to translate OpenMP dialect to LLVM IR
ftynse Feb 11, 2021
0b1914e
[ThinLTO][gold] Fix filenaming scheme for tasks.
htyu Feb 5, 2021
81b1d3d
[sanitizers][Windows] Implement __sanitizer_purge_allocator for Win64
mcgov Feb 3, 2021
ed4718e
[ObjC][ARC] Use operand bundle 'clang.arc.attachedcall' instead of
ahatanaka Feb 10, 2021
c7930fd
Merge commit 'dc6a5e070d1b05cd8ddea8294a8dbb6203fada4e' into feature/…
kaz7 Jun 14, 2021
0eed963
Merge commit 'ed4718eccb12bd42214ca4fb17d196d49561c0c7' into feature/…
kaz7 Jun 14, 2021
c4d48f1
[VP] Solve merge conflict
kaz7 Jun 12, 2021
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
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,7 @@ SymbolIndexManager::search(llvm::StringRef Identifier,
rank(MatchedSymbols, FileName);
// Strip signals, they are no longer needed.
std::vector<SymbolInfo> Res;
Res.reserve(MatchedSymbols.size());
for (auto &SymAndSig : MatchedSymbols)
Res.push_back(std::move(SymAndSig.Symbol));
return Res;
Expand Down
10 changes: 5 additions & 5 deletions clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ namespace bugprone {

static internal::Matcher<Stmt>
loopEndingStmt(internal::Matcher<Stmt> Internal) {
return stmt(anyOf(breakStmt(Internal), returnStmt(Internal),
gotoStmt(Internal), cxxThrowExpr(Internal),
callExpr(Internal, callee(functionDecl(isNoReturn())))));
return stmt(anyOf(
mapAnyOf(breakStmt, returnStmt, gotoStmt, cxxThrowExpr).with(Internal),
callExpr(Internal, callee(functionDecl(isNoReturn())))));
}

/// Return whether `Var` was changed in `LoopStmt`.
Expand Down Expand Up @@ -122,8 +122,8 @@ void InfiniteLoopCheck::registerMatchers(MatchFinder *Finder) {
unless(hasBody(hasDescendant(
loopEndingStmt(forFunction(equalsBoundNode("func")))))));

Finder->addMatcher(stmt(anyOf(whileStmt(LoopCondition), doStmt(LoopCondition),
forStmt(LoopCondition)))
Finder->addMatcher(mapAnyOf(whileStmt, doStmt, forStmt)
.with(LoopCondition)
.bind("loop-stmt"),
this);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,34 +59,20 @@ void SpuriouslyWakeUpFunctionsCheck::registerMatchers(MatchFinder *Finder) {
if (getLangOpts().CPlusPlus) {
// Check for `CON54-CPP`
Finder->addMatcher(
ifStmt(
allOf(HasWaitDescendantCpp,
unless(anyOf(hasDescendant(ifStmt(HasWaitDescendantCpp)),
hasDescendant(whileStmt(HasWaitDescendantCpp)),
hasDescendant(forStmt(HasWaitDescendantCpp)),
hasDescendant(doStmt(HasWaitDescendantCpp)))))

),
ifStmt(HasWaitDescendantCpp,
unless(hasDescendant(mapAnyOf(ifStmt, whileStmt, forStmt, doStmt)
.with(HasWaitDescendantCpp)))),
this);
} else {
// Check for `CON36-C`
Finder->addMatcher(
ifStmt(
allOf(HasWaitDescendantC,
unless(anyOf(hasDescendant(ifStmt(HasWaitDescendantC)),
hasDescendant(whileStmt(HasWaitDescendantC)),
hasDescendant(forStmt(HasWaitDescendantC)),
hasDescendant(doStmt(HasWaitDescendantC)),
hasParent(whileStmt()),
hasParent(compoundStmt(hasParent(whileStmt()))),
hasParent(forStmt()),
hasParent(compoundStmt(hasParent(forStmt()))),
hasParent(doStmt()),
hasParent(compoundStmt(hasParent(doStmt())))))

))

,
ifStmt(HasWaitDescendantC,
unless(anyOf(
hasDescendant(mapAnyOf(ifStmt, whileStmt, forStmt, doStmt)
.with(HasWaitDescendantC)),
hasParent(mapAnyOf(whileStmt, forStmt, doStmt)),
hasParent(compoundStmt(
hasParent(mapAnyOf(whileStmt, forStmt, doStmt))))))),
this);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,10 +113,8 @@ void SuspiciousStringCompareCheck::registerMatchers(MatchFinder *Finder) {
// Detect suspicious calls to string compare:
// 'if (strcmp())' -> 'if (strcmp() != 0)'
Finder->addMatcher(
stmt(anyOf(ifStmt(hasCondition(StringCompareCallExpr)),
whileStmt(hasCondition(StringCompareCallExpr)),
doStmt(hasCondition(StringCompareCallExpr)),
forStmt(hasCondition(StringCompareCallExpr)),
stmt(anyOf(mapAnyOf(ifStmt, whileStmt, doStmt, forStmt)
.with(hasCondition(StringCompareCallExpr)),
binaryOperator(hasAnyOperatorName("&&", "||"),
hasEitherOperand(StringCompareCallExpr))))
.bind("missing-comparison"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,9 @@ void UnhandledSelfAssignmentCheck::registerMatchers(MatchFinder *Finder) {

// Self-check: Code compares something with 'this' pointer. We don't check
// whether it is actually the parameter what we compare.
const auto HasNoSelfCheck = cxxMethodDecl(unless(anyOf(
hasDescendant(binaryOperator(hasAnyOperatorName("==", "!="),
has(ignoringParenCasts(cxxThisExpr())))),
hasDescendant(cxxOperatorCallExpr(
hasAnyOverloadedOperatorName("==", "!="), argumentCountIs(2),
has(ignoringParenCasts(cxxThisExpr())))))));
const auto HasNoSelfCheck = cxxMethodDecl(unless(hasDescendant(
binaryOperation(hasAnyOperatorName("==", "!="),
hasEitherOperand(ignoringParenCasts(cxxThisExpr()))))));

// Both copy-and-swap and copy-and-move method creates a copy first and
// assign it to 'this' with swap or move.
Expand Down
4 changes: 1 addition & 3 deletions clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -310,9 +310,7 @@ void UseAfterMoveFinder::getReinits(
// Assignment. In addition to the overloaded assignment operator,
// test for built-in assignment as well, since template functions
// may be instantiated to use std::move() on built-in types.
binaryOperator(hasOperatorName("="), hasLHS(DeclRefMatcher)),
cxxOperatorCallExpr(hasOverloadedOperatorName("="),
hasArgument(0, DeclRefMatcher)),
binaryOperation(hasOperatorName("="), hasLHS(DeclRefMatcher)),
// Declaration. We treat this as a type of reinitialization too,
// so we don't need to treat it separately.
declStmt(hasDescendant(equalsNode(MovedVariable))),
Expand Down
12 changes: 3 additions & 9 deletions clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,22 +30,16 @@ void MutatingCopyCheck::registerMatchers(MatchFinder *Finder) {
MemberExprOrSourceObject);

const auto IsSourceMutatingAssignment = traverse(
TK_AsIs,
expr(anyOf(binaryOperator(isAssignmentOperator(), hasLHS(IsPartOfSource))
.bind(MutatingOperatorName),
cxxOperatorCallExpr(isAssignmentOperator(),
hasArgument(0, IsPartOfSource))
.bind(MutatingOperatorName))));
TK_AsIs, binaryOperation(hasOperatorName("="), hasLHS(IsPartOfSource))
.bind(MutatingOperatorName));

const auto MemberExprOrSelf = anyOf(memberExpr(), cxxThisExpr());

const auto IsPartOfSelf = allOf(
unless(hasDescendant(expr(unless(MemberExprOrSelf)))), MemberExprOrSelf);

const auto IsSelfMutatingAssignment =
expr(anyOf(binaryOperator(isAssignmentOperator(), hasLHS(IsPartOfSelf)),
cxxOperatorCallExpr(isAssignmentOperator(),
hasArgument(0, IsPartOfSelf))));
binaryOperation(isAssignmentOperator(), hasLHS(IsPartOfSelf));

const auto IsSelfMutatingMemberFunction =
functionDecl(hasBody(hasDescendant(IsSelfMutatingAssignment)));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,8 @@ void AvoidGotoCheck::registerMatchers(MatchFinder *Finder) {

// Check if the 'goto' is used for control flow other than jumping
// out of a nested loop.
auto Loop = stmt(anyOf(forStmt(), cxxForRangeStmt(), whileStmt(), doStmt()));
auto NestedLoop =
stmt(anyOf(forStmt(hasAncestor(Loop)), cxxForRangeStmt(hasAncestor(Loop)),
whileStmt(hasAncestor(Loop)), doStmt(hasAncestor(Loop))));
auto Loop = mapAnyOf(forStmt, cxxForRangeStmt, whileStmt, doStmt);
auto NestedLoop = Loop.with(hasAncestor(Loop));

Finder->addMatcher(gotoStmt(anyOf(unless(hasAncestor(NestedLoop)),
unless(isForwardJumping())))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ namespace google {
namespace readability {

// Check for underscores in the names of googletest tests, per
// https://github.com/google/googletest/blob/master/googletest/docs/faq.md#why-should-test-suite-names-and-test-names-not-contain-underscore
// https://github.com/google/googletest/blob/master/docs/faq.md#why-should-test-suite-names-and-test-names-not-contain-underscore
///
/// For the user-facing documentation see:
/// http://clang.llvm.org/extra/clang-tidy/checks/google-readability-avoid-underscore-in-googletest-name.html
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,9 @@ void PreferIsaOrDynCastInConditionalsCheck::registerMatchers(
allOf(callee(namedDecl(hasAnyName("isa", "cast", "cast_or_null",
"dyn_cast", "dyn_cast_or_null"))
.bind("func")),
hasArgument(0, anyOf(declRefExpr().bind("arg"),
cxxMemberCallExpr().bind("arg"))))))
hasArgument(
0,
mapAnyOf(declRefExpr, cxxMemberCallExpr).bind("arg")))))
.bind("rhs");

Finder->addMatcher(
Expand Down
23 changes: 7 additions & 16 deletions clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -188,11 +188,6 @@ StatementMatcher makeIteratorLoopMatcher(bool IsReverse) {
StatementMatcher IteratorComparisonMatcher = expr(
ignoringParenImpCasts(declRefExpr(to(varDecl().bind(ConditionVarName)))));

auto OverloadedNEQMatcher = ignoringImplicit(
cxxOperatorCallExpr(hasOverloadedOperatorName("!="), argumentCountIs(2),
hasArgument(0, IteratorComparisonMatcher),
hasArgument(1, IteratorBoundMatcher)));

// This matcher tests that a declaration is a CXXRecordDecl that has an
// overloaded operator*(). If the operator*() returns by value instead of by
// reference then the return type is tagged with DerefByValueResultName.
Expand All @@ -216,14 +211,9 @@ StatementMatcher makeIteratorLoopMatcher(bool IsReverse) {
containsDeclaration(0, InitDeclMatcher),
containsDeclaration(1, EndDeclMatcher)),
declStmt(hasSingleDecl(InitDeclMatcher)))),
hasCondition(
anyOf(binaryOperator(hasOperatorName("!="),
hasLHS(IteratorComparisonMatcher),
hasRHS(IteratorBoundMatcher)),
binaryOperator(hasOperatorName("!="),
hasLHS(IteratorBoundMatcher),
hasRHS(IteratorComparisonMatcher)),
OverloadedNEQMatcher)),
hasCondition(ignoringImplicit(binaryOperation(
hasOperatorName("!="), hasOperands(IteratorComparisonMatcher,
IteratorBoundMatcher)))),
hasIncrement(anyOf(
unaryOperator(hasOperatorName("++"),
hasUnaryOperand(declRefExpr(
Expand Down Expand Up @@ -722,10 +712,11 @@ StringRef LoopConvertCheck::getContainerString(ASTContext *Context,
if (isa<CXXThisExpr>(ContainerExpr)) {
ContainerString = "this";
} else {
// For CXXOperatorCallExpr (e.g. vector_ptr->size()), its first argument is
// the class object (vector_ptr) we are targeting.
// For CXXOperatorCallExpr such as vector_ptr->size() we want the class
// object vector_ptr, but for vector[2] we need the whole expression.
if (const auto* E = dyn_cast<CXXOperatorCallExpr>(ContainerExpr))
ContainerExpr = E->getArg(0);
if (E->getOperator() != OO_Subscript)
ContainerExpr = E->getArg(0);
ContainerString =
getStringFromRange(Context->getSourceManager(), Context->getLangOpts(),
ContainerExpr->getSourceRange());
Expand Down
13 changes: 4 additions & 9 deletions clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -183,15 +183,10 @@ static bool isCopyAssignmentAndCanBeDefaulted(ASTContext *Context,
auto LHS = memberExpr(hasObjectExpression(cxxThisExpr()),
member(fieldDecl(equalsNode(Field))));
auto RHS = accessToFieldInVar(Field, Param);
if (match(
traverse(TK_AsIs,
compoundStmt(has(ignoringParenImpCasts(stmt(anyOf(
binaryOperator(hasOperatorName("="), hasLHS(LHS),
hasRHS(RHS)),
cxxOperatorCallExpr(
hasOverloadedOperatorName("="), argumentCountIs(2),
hasArgument(0, LHS), hasArgument(1, RHS)))))))),
*Compound, *Context)
if (match(traverse(TK_AsIs,
compoundStmt(has(ignoringParenImpCasts(binaryOperation(
hasOperatorName("="), hasLHS(LHS), hasRHS(RHS)))))),
*Compound, *Context)
.empty())
return false;
}
Expand Down
29 changes: 25 additions & 4 deletions clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,28 @@ StatementMatcher makeCastSequenceMatcher() {
unless(hasImplicitDestinationType(qualType(substTemplateTypeParmType()))),
unless(hasSourceExpression(hasType(sugaredNullptrType()))));

auto IsOrHasDescendant = [](auto InnerMatcher) {
return anyOf(InnerMatcher, hasDescendant(InnerMatcher));
};

return traverse(
TK_AsIs,
castExpr(anyOf(ImplicitCastToNull,
explicitCastExpr(hasDescendant(ImplicitCastToNull))),
unless(hasAncestor(explicitCastExpr())))
.bind(CastSequence));
anyOf(castExpr(anyOf(ImplicitCastToNull,
explicitCastExpr(hasDescendant(ImplicitCastToNull))),
unless(hasAncestor(explicitCastExpr())),
unless(hasAncestor(cxxRewrittenBinaryOperator())))
.bind(CastSequence),
cxxRewrittenBinaryOperator(
// Match rewritten operators, but verify (in the check method)
// that if an implicit cast is found, it is not from another
// nested rewritten operator.
expr().bind("matchBinopOperands"),
hasEitherOperand(IsOrHasDescendant(
implicitCastExpr(
ImplicitCastToNull,
hasAncestor(cxxRewrittenBinaryOperator().bind(
"checkBinopOperands")))
.bind(CastSequence))))));
}

bool isReplaceableRange(SourceLocation StartLoc, SourceLocation EndLoc,
Expand Down Expand Up @@ -480,6 +496,11 @@ void UseNullptrCheck::check(const MatchFinder::MatchResult &Result) {
const auto *NullCast = Result.Nodes.getNodeAs<CastExpr>(CastSequence);
assert(NullCast && "Bad Callback. No node provided");

if (Result.Nodes.getNodeAs<CXXRewrittenBinaryOperator>(
"matchBinopOperands") !=
Result.Nodes.getNodeAs<CXXRewrittenBinaryOperator>("checkBinopOperands"))
return;

// Given an implicit null-ptr cast or an explicit cast with an implicit
// null-to-pointer cast within use CastSequenceVisitor to identify sequences
// of explicit casts that can be converted into 'nullptr'.
Expand Down
2 changes: 1 addition & 1 deletion clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@ static bool isTypedefTypeMatching(const TypedefType *const Typedef,
/// Get the unqualified, dereferenced type of an argument.
///
/// \param CE call expression
/// \param idx argument index
/// \param Idx argument index
///
/// \returns type of the argument
static const Type *argumentType(const CallExpr *const CE, const size_t Idx) {
Expand Down
10 changes: 4 additions & 6 deletions clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,11 @@ void MoveConstArgCheck::registerMatchers(MatchFinder *Finder) {

Finder->addMatcher(MoveCallMatcher, this);

auto ConstParamMatcher = forEachArgumentWithParam(
MoveCallMatcher, parmVarDecl(hasType(references(isConstQualified()))));

Finder->addMatcher(callExpr(ConstParamMatcher).bind("receiving-expr"), this);
Finder->addMatcher(
traverse(TK_AsIs,
cxxConstructExpr(ConstParamMatcher).bind("receiving-expr")),
invocation(forEachArgumentWithParam(
MoveCallMatcher,
parmVarDecl(hasType(references(isConstQualified())))))
.bind("receiving-expr"),
this);
}

Expand Down
Loading