Skip to content

Feature/merge upstream 20210309 #41

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 785 commits into from
Jul 2, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
785 commits
Select commit Hold shift + click to select a range
56ed64d
[sanitizer] Don't expect ABORTING in print-module-map
vitalybuka Mar 6, 2021
4f7562d
[MC][X86] Support .reloc *, BFD_RELOC_{NONE,8,16,32,64}, *
MaskRay Mar 6, 2021
aceea45
[MC][AArch64] Support .reloc *, BFD_RELOC_{NONE,16,32,64}, *
MaskRay Mar 6, 2021
3110187
[MC][PowerPC] Support .reloc *, BFD_RELOC_{NONE,16,32,64}, *
MaskRay Mar 6, 2021
f8fe6d9
Use gen-dialect-doc instead of gen-op-doc for the Builtin dialect
joker-eph Mar 6, 2021
e4398bc
[MC][test] Fix reloc-directive-elf-*.s
MaskRay Mar 6, 2021
59ff931
[MC][ARM] Support .reloc *, BFD_RELOC_{NONE,8,16,32}, *
MaskRay Mar 6, 2021
2d922de
[MC][RISCV] Support .reloc *, BFD_RELOC_{NONE,32,64}, *
MaskRay Mar 6, 2021
002dd47
[clang] Fix typos in the default logic for CLANG_DEFAULT_UNWINDLIB
mstorsjo Mar 4, 2021
ebe6d3b
[clang] Don't default to a specifically shared libunwind on mingw wit…
mstorsjo Mar 4, 2021
714644a
[libcxx] [test] Move the is_<platform> functions down to subclasses
mstorsjo Mar 5, 2021
c4efd04
[clangd] Use URIs instead of paths in the index file list
ArcsinX Mar 6, 2021
99682bc
Revert "Revert "[AMDGPU] Restore the s_memtime instruction in gfx1030""
jayfoad Mar 6, 2021
019ae82
[CVP] Fix tests for clamp patterns (NFC)
nikic Mar 6, 2021
b42be01
[LVI] Pass offset by reference (NFC)
nikic Mar 6, 2021
10a7289
[runtimes] Fix crosscompiling after a7cad6680b4087eff8994f1f99ac40c66…
tambry Mar 3, 2021
906deaa
[CVP] Add additional tests for clamp patterns (NFC)
nikic Mar 6, 2021
a917fb8
[LVI] Simplify and generalize handling of clamp patterns
nikic Mar 6, 2021
7ae191f
[LangRef] dos2unix (NFC)
aqjune Mar 6, 2021
f4059cc
Partially revert "[runtimes] Use add_lit_testsuite to register lit te…
davezarzycki Mar 6, 2021
be58465
[GVN] Regenerate test checks (NFC)
nikic Mar 6, 2021
edf7004
[ConstantFold] Handle vectors in ConstantFoldLoadThroughBitcast()
nikic Mar 6, 2021
cf7cdaf
[X86][VARARG] Avoid spilling xmm registers for va_start.
avl-llvm Feb 14, 2021
bb6f5c8
[mlir][spirv] Convert tensor.extract for very small tensors
antiagainst Mar 6, 2021
34d1a5c
[HIP] Support Spack packages
yxsamliu Feb 22, 2021
3fb384d
[MLIR][SPIRV] Rename `spv.selection` to `spv.mlir.selection`.
ergawy Mar 6, 2021
1c59bf4
[InstCombine] Add tests for non-trivial store to load forward (NFC)
nikic Mar 6, 2021
f278734
[Loads] Restructure getAvailableLoadStore implementation (NFC)
nikic Mar 6, 2021
70c0dbf
[lld-macho][NFC] Replace config param with a global in hasCompatVersi…
oontvoo Mar 6, 2021
6334952
[rs4gc] minor code style improvement
preames Mar 6, 2021
8fe59ba
[rs4gc] track the original value in the state use for base pointer re…
preames Mar 6, 2021
c6ec563
[rs4gc] autogen a bunch of tests for ease of update
preames Mar 6, 2021
06a8a86
[rs4gc/tests] Remove use of internal debug flags
preames Mar 6, 2021
15fdd53
[libcxx] [test] Fix path.itr/iterator.pass.cpp for windows
mstorsjo Nov 4, 2020
5db2735
[gvn] Handle simply phi equivalence cases
preames Mar 6, 2021
9c139c5
[tests] Update an autogen test for format change
preames Mar 6, 2021
d163e75
[Attributor] Enable heap-to-stack of any size
wsmoses Mar 2, 2021
ca747e4
[sanitizer] Restrict clock_gettime workaround to glibc
MaskRay Mar 6, 2021
b46c898
[XRay][compiler-rt][x86_64] Fix CFI directives in assembly trampolines
EliaGeretto Mar 6, 2021
8a00386
[NPM] Add -enable-loopinterchange option to NPM
TaWeiTu Mar 6, 2021
f0904a6
[PowePC][AIX] Handle variadic vector call operands.
mandlebug Mar 6, 2021
b46c085
[NFCI] SCEVExpander: emit intrinsics for integral {u,s}{min,max} SCEV…
LebedevRI Feb 26, 2021
9fb6782
[rs4gc] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off builds
MaskRay Mar 6, 2021
75c7e3e
[NFC][InstCombine] Add plain GEP test for (gep i8* X, -(ptrtoint Y))…
LebedevRI Mar 6, 2021
2ad1f5e
[InstCombine] Don't canonicalize (gep i8* X, -(ptrtoint Y)) as (in…
LebedevRI Mar 6, 2021
d601edf
[libcxx] [test] Fix lexically_normal and lexically_relative_and_proxi…
mstorsjo Oct 15, 2020
494b5ba
[VPlan] Support to widen call intructions in VPlan native path
Mar 6, 2021
fb2cf0d
[FunctionImport] Delete unneeded setLive. NFC
MaskRay Mar 6, 2021
e6a1044
[ModuleSummaryAnalysis] Avoid duplicate elements in Worklist. NFC
MaskRay Mar 6, 2021
5f319fc
[GVN] Add test for load GVN with dead block (NFC)
nikic Mar 6, 2021
3fedaf2
[GVN] Don't explicitly materialize undefs from dead blocks
nikic Mar 6, 2021
d96af2e
[MC] Support .symver *, *, remove
MaskRay Mar 6, 2021
31443f8
[clang] Fix typos in documentation (NFC)
kazutakahirata Mar 6, 2021
3e8be5a
[objdump] Use ListSeparator (NFC)
kazutakahirata Mar 6, 2021
dd9a641
[TableGen] Use range-based for loops (NFC)
kazutakahirata Mar 6, 2021
fd785f9
[MC] Parse end-of-line for .cfi_* directives
MaskRay Mar 7, 2021
e5eb3e3
[MC] Parse end-of-line for .addrsig & .addrsig_sym
MaskRay Mar 7, 2021
bb6732c
[MC] Add parseEOL() overload and migrate some parseToken(AsmToken::En…
MaskRay Mar 7, 2021
45f949e
[MC] Migrate some parseToken(AsmToken::EndOfStatement, ...) to parseE…
MaskRay Mar 7, 2021
ca602a7
[NFC][AMDGPU]DWARF Extensions For Heterogeneous Debugging generic typ…
t-tye Mar 6, 2021
41476d8
[Driver] Pass --unwindlib=platform to tests that check unwinder
petrhosek Mar 7, 2021
39ad160
[libunwind] Install the DLL when doing "ninja install"
mstorsjo Mar 4, 2021
ab67fd3
[libcxx] [test] Fix path.modifiers remove_filename and replace_filena…
mstorsjo Oct 15, 2020
772a501
[X86] canonicalizeShuffleWithBinOps - shuffle oneuse constants.
RKSimon Mar 7, 2021
cd938ab
[X86] canonicalizeShuffleWithBinOps - add X86ISD::PSHUFB handling.
RKSimon Mar 7, 2021
2c16c4a
[ValueTracking] update directlyImpliesPoison to look into select's co…
aqjune Mar 7, 2021
d65c947
[InstCombine] enrich select-safe-bool-transforms.ll test (NFC)
aqjune Mar 7, 2021
5bb38e8
[LoopUnswitch] unswitch if cond is in select form of and/or as well
aqjune Mar 7, 2021
99108c7
[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe
aqjune Mar 7, 2021
33590ed
[InstCombine] fix another poison-unsafe select transformation
aqjune Mar 7, 2021
176bbca
[DSE] Remove MemDep-based implementation
nikic Mar 3, 2021
2b494f8
[CVP] Remove -cvp-dont-add-nowrap-flags option
nikic Mar 7, 2021
d672c81
[InstCombine] use safe transformation by default
aqjune Mar 7, 2021
fdbd5d3
[RISCV] Fold (select_cc (xor X, Y), 0, eq/ne, trueV, falseV) -> (sele…
topperc Mar 7, 2021
07c3b97
[InstCombine] Add simplification of two logical and/ors
aqjune Mar 7, 2021
f449e5e
[NFCI] Fix polly tests after b46c085d2b6d15873fb53718f0a70b3848e19e4a
LebedevRI Mar 7, 2021
c91b3c9
[RISCV] Fold (select_cc (setlt X, Y), 0, ne, trueV, falseV) -> (selec…
topperc Mar 7, 2021
0eb405c
[SelectionDAG] Add computeKnownBits support for ISD::USUBSAT.
topperc Mar 7, 2021
e867951
IR: Fix assert string message referring to the wrong attribute
arsenm Mar 7, 2021
c79a449
OpaquePtr: Record byref types in bitcode writer
arsenm Mar 7, 2021
f79bab3
[NFC][AMDGPU] DWARF Extensions For Heterogeneous Debugging clarificat…
t-tye Mar 7, 2021
898b406
[ConstProp] add tests for cmp with null and constexpr; NFC
rotateright Mar 7, 2021
bde2e56
[tsan] Use large address space mapping on Apple Silicon Macs
kubamracek Mar 7, 2021
4d571cf
[libcxx] [test] Clarify and improve consistency in lexically_relative…
mstorsjo Mar 6, 2021
52c5f5a
[libcxx] [test] Fix building create_directory in MSVC configurations
mstorsjo Feb 26, 2021
3a11a41
[libcxx] [test] Don't test CharFile (/dev/null) on windows
mstorsjo Feb 26, 2021
40391ce
[LoopUnrollRuntime] Add option to assume the non latch exit block to be
Mar 7, 2021
0d8f102
[NFC][LoopUnroll] Add `-unroll-runtime-other-exit-predictable=false` in
Mar 7, 2021
8d5a981
Revert "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe"
joker-eph Mar 8, 2021
64240f8
llvm-nm: add flag to suppress no symbols warning
keith Feb 9, 2021
fe9a4b5
Fix build post-revert in 8d5a981a135a
joker-eph Mar 8, 2021
ab49f50
[libc++] Fix typos in the synopsis of bit_xor, bit_not, etc. NFC.
Quuxplusone Mar 8, 2021
7514f1a
[Driver] Pass --unwindlib=platform to tests that check unwinder
petrhosek Mar 7, 2021
df9158c
[LoopInterchange] Replace tightly-nesting-ness check with the one fro…
TaWeiTu Mar 8, 2021
e94e557
Forward the `LLVM_ENABLE_LIBCXX` CMake parameter to the mlir standalo…
joker-eph Mar 8, 2021
5f9489b
[X86] Refine "Support -march=alderlake"
FreddyLeaf Mar 3, 2021
ba86096
[CMake][compiler-rt] Use copying instead of symlinking for LSE builti…
tambry Mar 6, 2021
de31856
[LoopVectorize][SVE] Add tests for vectorising conditional loads of i…
david-arm Mar 5, 2021
63851a7
[Matrix] Implement += and -= for MatrixType.
SaurabhJha Mar 8, 2021
18173c5
[RISCV] Add new entry points to getContainerForFixedLengthVector
frasercrmck Mar 4, 2021
3b9667a
Clarify documentation for `Elementwise`, `Scalarizable`, `Vectorizabl…
frgossen Mar 3, 2021
66e3a4a
Revert "[tsan] Use large address space mapping on Apple Silicon Macs"
jmorse Mar 8, 2021
1f1b155
[NFC] Use ranged loop iteration instead of explicit looping
Mar 5, 2021
ad294e5
[sanitizers] Fix interception of GLibc regexec
arichardson Mar 8, 2021
f71cee1
[X86] Break if-else chain. NFCI.
RKSimon Mar 5, 2021
c2d18d7
[KnownBits] Add min/max shift amount handling to shl/lshr/ashr KnownB…
RKSimon Mar 8, 2021
6f3778d
[lldb][NFC] std::set -> DenseSet in ClangModulesDeclVendor
Teemperor Mar 8, 2021
c9ff39a
Add "assert require" for the test added in df9158c9a45a6902c2b0394f9b…
hokein Mar 8, 2021
962c6fd
[JumpThreading] auto-generate complete test checks; NFC
rotateright Mar 8, 2021
b9f169f
[libcxx] Document windows specifics regarding file_type and perms. NFC.
mstorsjo Mar 7, 2021
a093942
[ConstProp][JumpThreading] add more test coverage for potential nullp…
rotateright Mar 8, 2021
f75b530
[ConstantFold] allow folding icmp of null and constexpr
rotateright Mar 8, 2021
203731d
[clang/mac] Accept -why_load and make -whyload an alias for it
nico Mar 7, 2021
acce401
[PowerPC] Change target data layout for 16-byte stack alignment
Feb 8, 2021
08d9e2c
[NFC] Avoid useless BitVector move
Mar 8, 2021
e5d958c
[DebugInfo] Support DIArgList in DbgVariableIntrinsic
SLTozer Sep 30, 2020
7a46d34
[SystemZ][z/OS] Add support to validate a HLASM Label.
Mar 8, 2021
4343c68
Fix: [DebugInfo] Support DIArgList in DbgVariableIntrinsic
SLTozer Mar 8, 2021
a89a3c2
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions …
YashaswiniHegde Mar 8, 2021
60d4c73
Run non-filechecked commands in update_cc_test_checks.py
ggeorgakoudis Feb 19, 2021
b0f0115
[AIX][TLS] Generate 32-bit general-dynamic access code sequence
nemanjai Mar 4, 2021
e2738b3
[OpenMP] Fix potential integer overflow in dynamic schedule code
jpeyton52 Feb 1, 2021
57a0e0d
Fix 2: [DebugInfo] Support DIArgList in DbgVariableIntrinsic
SLTozer Mar 8, 2021
1b7e5d4
[lldb] Fix error message in IRInterpreter
werat Mar 8, 2021
c454200
AArch64/MacOS: switch default CPU to apple-a13.
TNorthover Mar 8, 2021
42c195f
[mlir][Shape] Allow shape.split_at to return extent tensors and lower…
d0k Mar 8, 2021
ff58b24
Apply update_test_checks.py to test/Transforms/Util/assume-builder.ll…
aqjune Mar 8, 2021
addbc9b
[nfc] [lldb] Remove unused function DWARFAttribute::set
jankratochvil Mar 8, 2021
2ef03bc
[ConstProp] Add more tests for pointer icmp folding (NFC)
nikic Mar 8, 2021
f08148e
[ConstProp] Fix folding of pointer icmp with signed predicates
nikic Mar 8, 2021
7faad5c
[ConstantFold] Handle icmp of global and null consistently
nikic Mar 8, 2021
2bf1955
[InstCombine] Pre-commit tests for redundant phis with pointer casts.
fhahn Mar 5, 2021
2211a49
[Assembler] Fix global icmp test
nikic Mar 8, 2021
dc4ca9b
[lldb][NFC] Code style fixes for ClangModulesDeclVendor
Teemperor Mar 8, 2021
5e963a2
Rehome an orphaned comment [NFC]
snnw Feb 19, 2021
05a6e2e
[InstCombine] Add a combine for a shuffle of similar bitcasts
snnw Feb 24, 2021
63abbeb
[nfc] [lldb] [testsuite] Cleanup of recently added dwarf5-line-strp.s
jankratochvil Mar 8, 2021
97a7bc5
[gvn] Precisely propagate equalities to phi operands
preames Mar 8, 2021
c41ae24
[OpenMP][Clang][NVPTX] Only build one bitcode library for each SM
shiltian Mar 8, 2021
e68fafa
[CSSPGO] llvm-profdata support for CS profile.
htyu Mar 5, 2021
a265126
[RISCV] Add explicit i64 types to RV64 isel patterns to stop tablegen…
topperc Mar 8, 2021
7a64cc4
[RISCV] Make use of DAG.getNeutralElement in lowerVECREDUCE to avoid …
topperc Mar 8, 2021
239a618
[instcombine] Collapse trivial and recurrences
preames Mar 8, 2021
ebc61f9
[instcombine] Collapse trivial or recurrences
preames Mar 8, 2021
f1f9cc6
Fix ppc build bot after 239a6181
preames Mar 8, 2021
fe73331
[nfc] [lldb] Removed unused operator== for DWARFAbbreviationDeclarati…
jankratochvil Mar 8, 2021
7cdcb4a
[mlir] NFC: Add #endif comment.
chsigg Mar 8, 2021
9525af7
[DebugInfo] Support representation of multiple location operands in S…
SLTozer Sep 28, 2020
cb3542e
[MLIR][TOSA] Added lowerings for Reduce operations to Linalg
rsuderman Mar 8, 2021
c0450af
Fix: [DebugInfo] Support representation of multiple location operands…
SLTozer Mar 8, 2021
e4492b6
[OpenMP] NFC: temporarily disable assertion until the bug with depend…
AndreyChurbanov Mar 8, 2021
ebe6161
[SystemZ][z/OS] Missing locale functions libc++
Mar 8, 2021
d9a29a6
constify getUnderlyingObject implementation [nfc]
preames Mar 8, 2021
aa0c571
[WebAssembly] Add new relocation for location relative data
kateinoigakukun Mar 8, 2021
08c709a
[gn build] (manually) port ebe6161c54b9
nico Mar 8, 2021
621023b
[AIX][TLS] Add assert check of valid csect type for the storage mappi…
VictorHuangIBM Mar 8, 2021
f0fcad5
[dfsan] Remove hardcoded shadow width in struct.ll
gbalats Mar 6, 2021
e81d813
[clang] Don't set CLANG_DEFAULT_UNWINDLIB to none if rtlib is set to …
mstorsjo Mar 7, 2021
a3fee39
[M68k][CODE_OWNERS](0/8) Add code owner for the M68k target
mshockwave Mar 8, 2021
5033431
[M68k][TableGen](1/8) TableGen related changes
mshockwave Mar 8, 2021
6dcc325
[M68k][MIR](2/8) Changes in the target-independent MIR part
mshockwave Mar 8, 2021
bec7b16
[M68k](3/8) Skeleton and target description files
mshockwave Mar 8, 2021
8dddc15
[M68k](4/8) MC layer and object file support
mshockwave Mar 8, 2021
5ac19e0
[M68k](5/8) Target-specific lowering
mshockwave Mar 8, 2021
c23a780
[M68k][test](6/8) Add all of the tests
mshockwave Mar 8, 2021
5eb7a58
[cfe][M68k](7/8) Clang basic support
mshockwave Mar 8, 2021
5509748
[cfe][driver][M68k](8/8) Clang driver support
mshockwave Mar 8, 2021
bb1fe3f
[gn build] Port 503343191e12
llvmgnsyncbot Mar 8, 2021
b790a15
[gn build] Port 5509748f2ce5
llvmgnsyncbot Mar 8, 2021
e1928f0
[gn build] Port 5eb7a5814a5c
llvmgnsyncbot Mar 8, 2021
2948242
Revert "[LICM] Make promotion faster"
alinas Mar 8, 2021
5c26be2
[AArch64][GlobalISel] Lower G_BUILD_VECTOR -> G_DUP
Mar 1, 2021
84fa349
[gn build] Port 5c26be214d9f
llvmgnsyncbot Mar 8, 2021
afa4438
[InstSimplify] add tests for cttz of shifted-1; NFC
rotateright Mar 8, 2021
0a2d694
[InstSimplify] cttz(1<<x) --> x
rotateright Mar 8, 2021
820f508
[PowerPC] Removing _massv place holder
msdataei Mar 8, 2021
8a8fa09
[tsan] Use large address space mapping on Apple Silicon Macs
kubamracek Mar 8, 2021
8d79b05
Add intrinsics_gen as a dependency of libRemarks
jroelofs Mar 8, 2021
c5a6ad8
[Sanitizer][RISCV] Fix internal_clone
luismarques Mar 8, 2021
a4bb667
[mlir][IR][NFC] Define the Location classes in ODS instead of C++
River707 Mar 8, 2021
0d01dfb
[mlir][IR][NFC] Move the remaining builtin types to ODS
River707 Mar 8, 2021
c460ef6
[CSSPGO][llvm-profgen] Change sample count of dangling probe in llvm-…
wlei-llvm Feb 16, 2021
f7d73a6
[SelectionDAG] Don't scalarize vector fpround sources that don't need…
Mar 8, 2021
34d0d64
[ValueTracking] move/add helper to get inverse min/max; NFC
rotateright Mar 8, 2021
c05d574
[InstCombine] add tests for min/max intrinsics with not ops; NFC
rotateright Mar 8, 2021
3f71ce8
scudo: Support memory tagging in the secondary allocator.
pcc Dec 22, 2020
535a419
[AIX][TLS] Generate 64-bit general-dynamic access code sequence
lei137 Mar 5, 2021
cfd7d81
[flang] Fix bad dereference of NULLIFY pointer object
psteinfeld Mar 8, 2021
0d96ea0
[ValueTracking] Move matchSimpleRecurrence out of line
d0k Mar 8, 2021
001a12e
[libc][NFC] Make x86_64 fenv functions msan safe.
Mar 8, 2021
3f3f88f
[libc][Obvious] Add a file which was missed in 001a12ed59c354aa759ff3…
Mar 8, 2021
5a91d23
[Docs][Windows Itanium] Add a How-To document for Windows Itanium.
bd1976bris Mar 8, 2021
f1b6905
[build][modules] Fix ObjCARCUtil.h modularization
kastiglione Mar 8, 2021
fe5305b
Revert "[Docs][Windows Itanium] Add a How-To document for Windows Ita…
bd1976bris Mar 8, 2021
e08f278
[AMDGPU] Cleanup test checks. NFC.
rampitec Mar 8, 2021
c245c21
[llvm-readelf] Support dumping the BB address map section with --bb-a…
rlavaee Mar 9, 2021
2817e21
[NFC][AMDGPU] Correct typo in DWARF Extensions For Heterogeneous Debu…
t-tye Mar 7, 2021
dca5737
Move ObjCARCUtil.h back to llvm/Analysis
ahatanaka Mar 9, 2021
c22d18b
Read NumBlocks as uint64_t.
rlavaee Mar 9, 2021
f0ccdde
[AMDGPU] Remove SI_MASK_BRANCH
ruiling Feb 25, 2021
a24644b
Revert "Run non-filechecked commands in update_cc_test_checks.py"
jroelofs Mar 9, 2021
c5c6f18
Reland: [Docs][Windows Itanium] Add a How-To document for Windows Ita…
bd1976bris Mar 9, 2021
3d61836
[LangRef] mention that the lifetime intrinsics' description in LangRe…
aqjune Mar 9, 2021
5f2f84a
[llvm-objdump][MachO] Add support for dumping function starts
Mar 9, 2021
67a05f4
[AMDGPU] Remove unused function opcodeEmitsNoInsts()
ruiling Mar 9, 2021
ede56e5
[llvm-objcopy][MachO] Add support for --keep-undefined
Mar 9, 2021
f2cb3be
[docs] Fix llvm-objcopy.rst
Mar 9, 2021
5cdb2e9
[RISCV][MC] Fix nf encoding for vector ld/st whole register
arcbbb Mar 8, 2021
7a3e664
[DebugInfo] Do not error on unsupported CIE version
rafaelauler Mar 9, 2021
f344dfe
[lld][MachO] Add support for LC_FUNCTION_STARTS
Feb 23, 2021
179d725
[lld][MachO] Fix function starts test
Mar 9, 2021
0c7c5af
Revert "[lld][MachO] Fix function starts test"
Mar 9, 2021
1b0819e
Revert "[lld][MachO] Add support for LC_FUNCTION_STARTS"
Mar 9, 2021
038f2a3
Move LLVM::FMFAttr definition to TableGen (NFC)
joker-eph Mar 5, 2021
cf82700
[CodeGenPrepare] Fix isIVIncrement (PR49466)
TaWeiTu Mar 9, 2021
9afdd36
[lld][MachO] Add support for LC_FUNCTION_STARTS
Mar 9, 2021
1200f85
[lldb] Remove duplicated ThreadPlanStepOverBreakpoint comment
kastiglione Mar 9, 2021
4c3d759
[CSSPGO] Always use callsite samples as callsite probe counts.
htyu Mar 6, 2021
e31c77b
[mlir][python] Reorganize MLIR python into namespace packages.
stellaraccident Mar 6, 2021
c1a4cd5
[mlir][linalg] refactor the result handling during vectorization.
Mar 8, 2021
ba8907b
[nfc] llvm-dwarfdump: DWARFAbbreviationDeclaration::AttributeSpec -> …
jankratochvil Mar 9, 2021
2241b39
[mlir][CMAKE] Fix cross-compilation build
Mar 4, 2021
587859d
clang-format: use `pb` as a canonical raw string delimiter for google…
krasimirgg Mar 9, 2021
90fec5e
[mlir] make MLIRPresburger depend on MLIRIR
ftynse Mar 9, 2021
8184247
[mlir] move LLVM target import header and tests
ftynse Mar 8, 2021
4289a7f
llvm-dwarfdump: Fix DWARF-5 DW_FORM_implicit_const (used by GCC)
jankratochvil Mar 9, 2021
95193ac
[flang] update character tests to use gtest
ashermancinelli Mar 9, 2021
cf806d9
[lldb] Fix DWARF-5 DW_FORM_implicit_const (used by GCC)
jankratochvil Mar 9, 2021
93b170e
[DebugInfo] Handle dbg.values with multiple variable location operand…
SLTozer Sep 29, 2020
df6d057
Fix a crash in DWARFUnit::getInlinedChainForAddress in case of unexpe…
orlov-alex Mar 9, 2021
85801b4
[sanitizers] fix wrong enum of memory_order for mips
dvyukov Mar 9, 2021
7e5cea5
[Clang][Sema] Warn when function argument is less aligned than parameter
tmatheson-arm Feb 19, 2021
2750f3e
[IR] Introduce llvm.experimental.vector.splice intrinsic
c-rhodes Jan 8, 2021
373e168
[sanitizers] Enable runtime vma for mips64 in buildgo.sh
dvyukov Mar 9, 2021
bf3a271
[CodeGen] Report a normal instead of fatal error for label redefinition
john-brawn-arm Mar 9, 2021
d1531b0
[clangd] Move logging out of LSPTest base class into a separate one.
kadircet Mar 9, 2021
0cccccf
[compiler-rt] FuzzedDataProvider: Add missing include
Mar 5, 2021
4f7dd71
M68kInstrInfo::AnalyzeBranchImpl - fix MSVC build. NFCI.
RKSimon Mar 9, 2021
13c77f2
[OpenCL] Fix builtins that require multiple extensions
svenvh Mar 9, 2021
92da5b7
[InstCombine] Simplify phis with incoming pointer-casts.
fhahn Mar 9, 2021
0875c2f
[X86][AMX] Add test case for combining AMX bitcast.
LuoYuanke Mar 9, 2021
3618b21
[X86][NFC] Adding one flag to imply whether the instruction should ch…
MoringLiu Mar 5, 2021
98f1564
[lld][MachO] Add missing test requirements
Mar 9, 2021
5491a86
[DebugInfo] Emit DBG_VALUE_LIST from ISel
SLTozer Sep 29, 2020
ea5fb24
[DebugInfo] Add tests for ISel handling of variadic debug values
SLTozer Sep 29, 2020
7d18cd9
[Orc] Fix working memory buffer for section mapping in ELFDebugObject
weliveindetail Mar 9, 2021
6a3a386
[Orc] Test DebugObjectManagerPlugin fills in load-address for .text s…
weliveindetail Mar 9, 2021
265bc5a
[Orc] Always check mapped sections for ELFDebugObject are in bounds o…
weliveindetail Mar 9, 2021
fbdfd0a
Merge commit '265bc5af7b3be612e170c66521a120b754128818' into feature/…
kaz7 Jul 1, 2021
34e21e4
[VE] Fix regression test problem related to bitreverse
kaz7 Jul 1, 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
  •  
  •  
  •  
2 changes: 0 additions & 2 deletions clang-tools-extra/clang-query/Query.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,6 @@ bool HelpQuery::run(llvm::raw_ostream &OS, QuerySession &QS) const {
" AsIs "
"Print and match the AST as clang sees it. This mode is the "
"default.\n"
" IgnoreImplicitCastsAndParentheses "
"Omit implicit casts and parens in matching and dumping.\n"
" IgnoreUnlessSpelledInSource "
"Omit AST nodes unless spelled in the source.\n"
" set output <feature> "
Expand Down
15 changes: 7 additions & 8 deletions clang-tools-extra/clang-query/tool/ClangQuery.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@
#include "clang/Tooling/Tooling.h"
#include "llvm/LineEditor/LineEditor.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Signals.h"
#include "llvm/Support/WithColor.h"
#include <fstream>
#include <string>

using namespace clang;
Expand Down Expand Up @@ -73,16 +73,15 @@ static cl::opt<std::string> PreloadFile(

bool runCommandsInFile(const char *ExeName, std::string const &FileName,
QuerySession &QS) {
std::ifstream Input(FileName.c_str());
if (!Input.is_open()) {
llvm::errs() << ExeName << ": cannot open " << FileName << "\n";
return 1;
auto Buffer = llvm::MemoryBuffer::getFile(FileName);
if (!Buffer) {
llvm::errs() << ExeName << ": cannot open " << FileName << ": "
<< Buffer.getError().message() << "\n";
return true;
}

std::string FileContent((std::istreambuf_iterator<char>(Input)),
std::istreambuf_iterator<char>());
StringRef FileContentRef(Buffer.get()->getBuffer());

StringRef FileContentRef(FileContent);
while (!FileContentRef.empty()) {
QueryRef Q = QueryParser::parse(FileContentRef, QS);
if (!Q->run(llvm::outs(), QS))
Expand Down
6 changes: 4 additions & 2 deletions clang-tools-extra/clang-tidy/ClangTidy.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -393,6 +393,10 @@ ClangTidyASTConsumerFactory::CreateASTConsumer(
std::vector<std::unique_ptr<ClangTidyCheck>> Checks =
CheckFactories->createChecks(&Context);

llvm::erase_if(Checks, [&](std::unique_ptr<ClangTidyCheck> &Check) {
return !Check->isLanguageVersionSupported(Context.getLangOpts());
});

ast_matchers::MatchFinder::MatchFinderOptions FinderOptions;

std::unique_ptr<ClangTidyProfiling> Profiling;
Expand All @@ -416,8 +420,6 @@ ClangTidyASTConsumerFactory::CreateASTConsumer(
}

for (auto &Check : Checks) {
if (!Check->isLanguageVersionSupported(Context.getLangOpts()))
continue;
Check->registerMatchers(&*Finder);
Check->registerPPCallbacks(*SM, PP, ModuleExpanderPP);
}
Expand Down
15 changes: 6 additions & 9 deletions clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
#include "clang/AST/RecordLayout.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include <math.h>
#include <sstream>

using namespace clang::ast_matchers;

Expand Down Expand Up @@ -109,15 +108,13 @@ void StructPackAlignCheck::check(const MatchFinder::MatchResult &Result) {
AlignedAttr *Attribute = Struct->getAttr<AlignedAttr>();
std::string NewAlignQuantity = std::to_string((int)NewAlign.getQuantity());
if (Attribute) {
std::ostringstream FixItString;
FixItString << "aligned(" << NewAlignQuantity << ")";
FixIt =
FixItHint::CreateReplacement(Attribute->getRange(), FixItString.str());
FixIt = FixItHint::CreateReplacement(
Attribute->getRange(),
(Twine("aligned(") + NewAlignQuantity + ")").str());
} else {
std::ostringstream FixItString;
FixItString << " __attribute__((aligned(" << NewAlignQuantity << ")))";
FixIt = FixItHint::CreateInsertion(Struct->getEndLoc().getLocWithOffset(1),
FixItString.str());
FixIt = FixItHint::CreateInsertion(
Struct->getEndLoc().getLocWithOffset(1),
(Twine(" __attribute__((aligned(") + NewAlignQuantity + ")))").str());
}

// And suggest the minimum power-of-two alignment for the struct as a whole
Expand Down
83 changes: 46 additions & 37 deletions clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,25 +25,37 @@ AST_MATCHER(CXXRecordDecl, hasNonTrivialDestructor) {

void UnusedRaiiCheck::registerMatchers(MatchFinder *Finder) {
// Look for temporaries that are constructed in-place and immediately
// destroyed. Look for temporaries created by a functional cast but not for
// those returned from a call.
auto BindTemp = cxxBindTemporaryExpr(
unless(has(ignoringParenImpCasts(callExpr()))),
unless(has(ignoringParenImpCasts(objcMessageExpr()))))
.bind("temp");
// destroyed.
Finder->addMatcher(
traverse(TK_AsIs,
exprWithCleanups(
unless(isInTemplateInstantiation()),
hasParent(compoundStmt().bind("compound")),
hasType(cxxRecordDecl(hasNonTrivialDestructor())),
anyOf(has(ignoringParenImpCasts(BindTemp)),
has(ignoringParenImpCasts(cxxFunctionalCastExpr(
has(ignoringParenImpCasts(BindTemp)))))))
.bind("expr")),
mapAnyOf(cxxConstructExpr, cxxUnresolvedConstructExpr)
.with(hasParent(compoundStmt().bind("compound")),
anyOf(hasType(cxxRecordDecl(hasNonTrivialDestructor())),
hasType(templateSpecializationType(
hasDeclaration(classTemplateDecl(has(
cxxRecordDecl(hasNonTrivialDestructor()))))))))
.bind("expr"),
this);
}

template <typename T>
void reportDiagnostic(DiagnosticBuilder D, const T *Node, SourceRange SR,
bool DefaultConstruction) {
const char *Replacement = " give_me_a_name";

// If this is a default ctor we have to remove the parens or we'll introduce a
// most vexing parse.
if (DefaultConstruction) {
D << FixItHint::CreateReplacement(CharSourceRange::getTokenRange(SR),
Replacement);
return;
}

// Otherwise just suggest adding a name. To find the place to insert the name
// find the first TypeLoc in the children of E, which always points to the
// written type.
D << FixItHint::CreateInsertion(SR.getBegin(), Replacement);
}

void UnusedRaiiCheck::check(const MatchFinder::MatchResult &Result) {
const auto *E = Result.Nodes.getNodeAs<Expr>("expr");

Expand All @@ -55,35 +67,32 @@ void UnusedRaiiCheck::check(const MatchFinder::MatchResult &Result) {
// Don't emit a warning for the last statement in the surrounding compound
// statement.
const auto *CS = Result.Nodes.getNodeAs<CompoundStmt>("compound");
if (E == CS->body_back())
const auto *LastExpr = dyn_cast<Expr>(CS->body_back());

if (LastExpr && E == LastExpr->IgnoreUnlessSpelledInSource())
return;

// Emit a warning.
auto D = diag(E->getBeginLoc(), "object destroyed immediately after "
"creation; did you mean to name the object?");
const char *Replacement = " give_me_a_name";

// If this is a default ctor we have to remove the parens or we'll introduce a
// most vexing parse.
const auto *BTE = Result.Nodes.getNodeAs<CXXBindTemporaryExpr>("temp");
if (const auto *TOE = dyn_cast<CXXTemporaryObjectExpr>(BTE->getSubExpr()))
if (TOE->getNumArgs() == 0) {
D << FixItHint::CreateReplacement(
CharSourceRange::getTokenRange(TOE->getParenOrBraceRange()),
Replacement);
return;
if (const auto *Node = dyn_cast<CXXConstructExpr>(E))
reportDiagnostic(D, Node, Node->getParenOrBraceRange(),
Node->getNumArgs() == 0 ||
isa<CXXDefaultArgExpr>(Node->getArg(0)));
if (const auto *Node = dyn_cast<CXXUnresolvedConstructExpr>(E)) {
auto SR = SourceRange(Node->getLParenLoc(), Node->getRParenLoc());
auto DefaultConstruction = Node->getNumArgs() == 0;
if (!DefaultConstruction) {
auto FirstArg = Node->getArg(0);
DefaultConstruction = isa<CXXDefaultArgExpr>(FirstArg);
if (auto ILE = dyn_cast<InitListExpr>(FirstArg)) {
DefaultConstruction = ILE->getNumInits() == 0;
SR = SourceRange(ILE->getLBraceLoc(), ILE->getRBraceLoc());
}
}

// Otherwise just suggest adding a name. To find the place to insert the name
// find the first TypeLoc in the children of E, which always points to the
// written type.
auto Matches =
match(expr(hasDescendant(typeLoc().bind("t"))), *E, *Result.Context);
if (const auto *TL = selectFirst<TypeLoc>("t", Matches))
D << FixItHint::CreateInsertion(
Lexer::getLocForEndOfToken(TL->getEndLoc(), 0, *Result.SourceManager,
getLangOpts()),
Replacement);
reportDiagnostic(D, Node, SR, DefaultConstruction);
}
}

} // namespace bugprone
Expand Down
3 changes: 3 additions & 0 deletions clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ class UnusedRaiiCheck : public ClangTidyCheck {
}
void registerMatchers(ast_matchers::MatchFinder *Finder) override;
void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
llvm::Optional<TraversalKind> getCheckTraversalKind() const override {
return TK_IgnoreUnlessSpelledInSource;
}
};

} // namespace bugprone
Expand Down
8 changes: 7 additions & 1 deletion clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -398,7 +398,13 @@ void UseAfterMoveCheck::registerMatchers(MatchFinder *Finder) {
hasArgument(0, declRefExpr().bind("arg")),
anyOf(hasAncestor(lambdaExpr().bind("containing-lambda")),
hasAncestor(functionDecl().bind("containing-func"))),
unless(inDecltypeOrTemplateArg()))
unless(inDecltypeOrTemplateArg()),
// try_emplace is a common maybe-moving function that returns a
// bool to tell callers whether it moved. Ignore std::move inside
// try_emplace to avoid false positives as we don't track uses of
// the bool.
unless(hasParent(cxxMemberCallExpr(
callee(cxxMethodDecl(hasName("try_emplace")))))))
.bind("call-move");

Finder->addMatcher(
Expand Down
Loading