Skip to content
Closed

Cpu0 #124069

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
323 commits
Select commit Hold shift + click to select a range
bf95610
[ORC] Actually propagate memory unmapping errors on Windows
mstorsjo Aug 3, 2022
0adb0f9
[ConstProp] Don't fallthorugh for poison constants on vctp and active…
davemgreen Aug 5, 2022
22dc722
[clangd] Change the url for clang-tidy check documentation
njames93 Aug 5, 2022
8160d4a
[Sanitizer][Darwin] Support OS versions before DRIVERKIT
keith Aug 5, 2022
4acca1b
[ELF] mergeCmp: work around irreflexivity bug
MaskRay Aug 6, 2022
107b9db
[ELF][PPC64] Fix potentially corrupted section content with empty .got
MaskRay Aug 5, 2022
9383f82
[ELF] Keep only getTarget() call. NFC
MaskRay Aug 6, 2022
bf27137
[ELF][AArch64] Fix potentially corrupted section content for PAC
MaskRay Aug 6, 2022
9c68b43
Revert "[compiler-rt][CMake] Enable TF intrinsics on powerpc32 Linux"
nikic Aug 2, 2022
1f95610
[LLD][COFF] Ignore DEBUG_S_XFGHASH_TYPE/VIRTUAL
tru Aug 8, 2022
ba25a5d
[libc++] Mark -fexperimental-library test as unsupported on another A…
ldionne Aug 3, 2022
33e5f15
[libc++][ranges] Implement `ranges::rotate`.
var-const Aug 3, 2022
f20566d
[libc++][ranges] Implement `ranges::clamp`
philnik777 Aug 3, 2022
1711b90
[libc++][NFC] Remove rebase artifact
fsb4000 Aug 4, 2022
80f03ec
[libc++][ranges] Implement `ranges::is_permutation`
philnik777 Aug 4, 2022
a447396
[libc++] Fix a hard error in `contiguous_iterator<NoOperatorArrowIter>`.
var-const Aug 4, 2022
3a95060
[libc++][NFC] Remove outdated comment in CI pipeline definition
ldionne Aug 4, 2022
db9c521
[libc++] Clarify comment in CI pipeline definition
ldionne Aug 4, 2022
187bac7
[libc++][ranges][NFC] Make sure all implemented algorithms are enable…
var-const Aug 5, 2022
1c4ee5d
[libc++][ranges][NFC] Mark the completed Ranges papers and issues as …
var-const Aug 5, 2022
2fb8f67
[libc++] Allow enabling assertions when back-deploying
ldionne Aug 4, 2022
d6e5bfc
[lld-macho] Support EH frame pointer encodings that use sdata4
int3 Aug 1, 2022
8371a29
Wrap `llvm_unreachable` macro in do-while loop
weliveindetail Aug 4, 2022
0fd385c
[CodeGen] Fixed undeclared MISchedCutoff in case of NDEBUG and LLVM_E…
slydiman Jul 30, 2022
482e2dc
[OpenMP] Fix warnings about unused expressions when OMPT_LOOP_DISPATC…
mstorsjo Aug 2, 2022
53cfe2c
[NFC][AArch64] Precommit vector-fcvt tests
david-arm Jul 29, 2022
9f4d9a0
[AArch64][DAGCombine] Add performBuildVectorCombine 'extract_elt ~> a…
david-arm Jul 29, 2022
65d2e9b
[DAGCombiner] Extend visitAND to include EXTRACT_SUBVECTOR
david-arm Jul 29, 2022
63be0bc
[OpenMP][libomp] Detect if test compiler has omp.h
Aug 1, 2022
bab8af8
[OpenMP] Only include CMAKE_DL_LIBS on unix platforms
mstorsjo Aug 1, 2022
525ffb0
[ELF] Support --package-metadata
abrachet Aug 8, 2022
13e4d9e
[SPIR-V] Disable opaque pointers in relese 15
tstellar Aug 8, 2022
40c0ae9
[scudo] Try to fix standalone build on armv7
rovka Aug 5, 2022
b914b21
[ARM] Regenerate vector_store.ll tests. NFC
davemgreen Aug 7, 2022
bcd9043
[DAG] Ensure Legal BUILD_VECTOR elements types in shuffle->And combine
davemgreen Aug 8, 2022
10df85d
[clangd] Add release notes
kadircet Aug 9, 2022
4b27d95
[flang][test] Don't require .exe suffix.
Meinersbur Aug 8, 2022
1324903
[libc++][format] Exposes basic-format-string
mordante Jul 15, 2022
7b61485
[llvm-ar] Remove unused parameter. NFC
MaskRay Aug 8, 2022
81e46ae
[llvm-ranlib] Support more than one input file
MaskRay Aug 8, 2022
b9cd65f
Revert "[clang] Pass FoundDecl to DeclRefExpr creator for operator ov…
kadircet Aug 4, 2022
22dcfb4
[RISCVInsertVSETVLI] Remove an unsound optimization
preames Aug 5, 2022
a8d4cf1
[clang] add APValue type check in `TryPrintAsStringLiteral`
inclyc Aug 9, 2022
0b12f77
[Libomptarget][CUDA] Check CUDA compatibilty correctly
jhuber6 Aug 10, 2022
08badf9
[Attributor][FIX] Visit same instructions with different scopes
jdoerfert Aug 10, 2022
d3847c1
[RelLookupTableConverter] Bail on invalid pointer size (x32)
nikic Aug 8, 2022
ba988fd
[clang] Require strict matches for defines for PCH in GCC style direc…
mstorsjo May 25, 2022
d945a2c
[AArch64][LoopVectorize] Introduce trip count minimal value threshold…
Aug 9, 2022
1fc6119
Change prototype merging error into a warning for builtins
AaronBallman Aug 9, 2022
062aab1
[libc++] Add missing <stdbool.h> to the modulemap
ldionne Aug 4, 2022
c3edca9
[libc++][NFC] Fix signature of main in test
ldionne Aug 8, 2022
f488968
[libc++][ranges] Sets ranges feature-test macro.
mordante Aug 6, 2022
23690ef
[libc++] Make __libcpp_verbose_abort [[noreturn]]
ldionne Aug 8, 2022
a73632c
[libc++] Add missing includes of <cstddef>
ldionne Aug 10, 2022
8986376
[libcxx] [test] Merge the experimental-lib-exports testcases into sta…
mstorsjo Jul 7, 2022
871a78e
[LLD] [MinGW] Implement the --exclude-symbols option
mstorsjo Jul 18, 2022
6ed1460
[COFF] Change a llvm::StringSet<> to llvm::DenseSet<StringRef>. NFC
MaskRay Aug 10, 2022
3b0219a
[LLD] [COFF] Add support for a new, mingw specific embedded directive…
mstorsjo Jul 17, 2022
54f3f97
[X86][BF16] Make backend type bf16 to follow the psABI
phoebewang Aug 10, 2022
fa0ff57
[X86][BF16] Enable __bf16 for x86 targets.
FreddyLeaf Aug 10, 2022
54d0758
[compiler-rt][BF16] Provide __truncdfbf2 and __truncsfbf2 only when _…
phoebewang Aug 10, 2022
f85dc17
[mlir][sparse][bf16] disable two bf16 tests
aartbik Aug 10, 2022
23637ca
[mlir][sparse] Use the correct ABI on x86 and re-enable tests
d0k Aug 11, 2022
fbd2950
[mlir][sparse] Refine f695554a2a55 wording a bit and fix the double c…
d0k Aug 11, 2022
4683a45
Fix assert during the call to getCanonicalDecl.
jyu2-git Aug 2, 2022
2c3f5d7
[clang][AArch64][SVE] Add unary +/- operators for SVE types
DavidTruby Aug 2, 2022
5c6590e
[clang] Correct documentation for NEON and SVE operator support
DavidTruby Aug 10, 2022
aa20ed6
[clang][AArch64][SVE] Clarify documentation for sizeof operator on SVE
DavidTruby Aug 11, 2022
5932bf1
[clang][AArch64][SVE] Change SVE_VECTOR_OPERATORS macro for VLA vectors
DavidTruby Aug 11, 2022
a9ac5ac
[Clang][OpenMP] Fix the issue that `llvm.lifetime.end` is emitted too…
shiltian Aug 6, 2022
6ce4369
[OpenMP][FIX] Ensure __kmpc_kernel_parallel is reachable
jdoerfert Aug 11, 2022
ab09289
[libcxx] [test] Fix max_size.pass.cpp for PowerPC targets
amy-kwan Aug 11, 2022
76522bf
[clang][X86] Add RDPRU predefined macro tests for znver2/znver3 targets
RKSimon Aug 11, 2022
804e453
[X86] Add RDPRU instruction CPUID bit masks
RKSimon Aug 11, 2022
9c4cab0
[clang-tidy][docs] Fixed page title for abseil-no-internal-dependenci…
VladimirPlyashkun Aug 11, 2022
14a6115
[X86][FP16] Fix vector_shuffle and lowering without f16c feature prob…
phoebewang Aug 2, 2022
accc7a1
[X86][FP16] Promote FP16->[U]INT to FP16->FP32->[U]INT
phoebewang Aug 14, 2022
5b93812
__has_trivial_copy should map to __is_trivially_copyable
ZacharyHenkel Aug 13, 2022
7af201c
[libcxx] [doc] Remove a leftover tentative release note
mstorsjo Aug 15, 2022
ddb04d7
[DAGCombine] Check zext legality in zext-extract-extend combine
peterwaller-arm Aug 9, 2022
c439888
[MCDwarf] Use emplace to avoid move assignment. NFC
MaskRay Aug 12, 2022
095ea50
[MCDwarf][test] Improve debug-prefix-map.s
MaskRay Aug 12, 2022
e087912
[BOLT] Use Optional::emplace to avoid move assignment. NFC
MaskRay Aug 12, 2022
e2da724
[MCDwarf] Respect -fdebug-prefix-map= for generated assembly debug in…
MaskRay Aug 12, 2022
655a1cb
[DebugInfo] Don't join DW_AT_comp_dir and directories[0] for DWARF v5…
MaskRay Aug 12, 2022
e4aa104
[DebugInfo] -fdebug-prefix-map: handle '#line "file"' for asm source
MaskRay Aug 15, 2022
f1f55a9
[RISCV] isImpliedByDomCondition returns an Optional<bool> not a bool.
topperc Aug 14, 2022
8abe263
[flang] Install runtime libs with the toolchain
rovka Aug 11, 2022
02b82b8
[DAG] Ensure more Legal BUILD_VECTOR elements types in shuffle->And c…
davemgreen Aug 15, 2022
b4a285b
[clang][SVE] Undefine preprocessor macro defined in
mgabka Aug 12, 2022
64260fe
[llvm] [cmake] Move LLVM_INSTALL_PACKAGE_DIR top-level to fix llvm-co…
mgorny Aug 15, 2022
af3707c
[MC] Avoid C++17 structured bindings
MaskRay Aug 17, 2022
67ea7a1
[flang] Add Solaris/x86 support to Optimizer/CodeGen/Target.cpp
rorth Aug 17, 2022
0334c1a
[clangd] Fix an inlay-hint crash on a broken designator.
hokein Aug 11, 2022
0bc3cbb
workflows/version-check: Fix check for release candidates
tstellar Aug 20, 2022
05c8502
workflows/llvm-project-tests: Workaround an issue with lldb builds on…
tstellar Aug 20, 2022
e2613c5
[AArch64] add test for recursive libcall lowering; NFC
rotateright Aug 17, 2022
2950a43
[SDAG] avoid generating libcall to function with same name
rotateright Aug 17, 2022
89be541
[clang][RISCV][test] Add test that shows incorrect ABI lowering
asb Aug 11, 2022
43fb0d7
[clang][RISCV] Fix incorrect ABI lowering for inherited structs under…
asb Aug 19, 2022
b630baf
[mlir][test] Require JIT support in JIT tests
rorth Aug 18, 2022
87c92cd
[InstCombine] Correct strtol folding with nonnull endptr
Aug 1, 2022
b6889f0
[Sparc] Don't use SunStyleELFSectionSwitchSyntax
rorth Aug 17, 2022
006b649
[clang][docs] Release notes for C/C++ SVE Operators
DavidTruby Aug 22, 2022
b11009f
[NFC] Minor documentation fix for the release branch
tru Aug 22, 2022
69c35fa
[RISCV] Re-enable JIT support
hahnjo Aug 10, 2022
0777364
[InstCombine] Refactor foldICmpMulConstant
alexander-shaposhnikov Jul 30, 2022
99b6254
[clangd] Support for standard type hierarchy
kadircet Aug 8, 2022
bcb8d21
[CUDA] Fix output name being replaced in device-only mode
jhuber6 Aug 5, 2022
4e4252f
[GTest] Change detection of libpthread
nemanja-ibm Aug 22, 2022
12f27d8
Revert "GCC ABI Compatibility: Preserve alignment of non-pod members …
tru Aug 25, 2022
d761fe6
[libc++] Add a missing assertion in std::span's constructor
ldionne Aug 11, 2022
0cc033e
[runtimes] Handle interface targets in runtimes distribution components
ldionne Aug 22, 2022
427e1ea
[lit] Support reading arguments from a file
petrhosek Aug 15, 2022
3a481d4
[runtimes] Use a response file for runtimes test suites
petrhosek Aug 18, 2022
fe3ff38
[DAG] MatchRotate - bail if we fail to match a shl/srl pair
RKSimon Aug 24, 2022
5768325
SONAME introduce option CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION
h-vetinari Aug 25, 2022
e6f03d1
[NFC] Fix a misleading comment CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION
tru Aug 25, 2022
9c29291
[LLD] [COFF] Fix export directives in object files from -includeoptional
mstorsjo Aug 22, 2022
3d3ef9d
[X86][FP16] Add the missing legal action for EXTRACT_SUBVECTOR
phoebewang Aug 24, 2022
d3ba489
[release] Use threaded compression with xz
tru Aug 10, 2022
1594ec2
[workflow] Run release tasks for me (tru) as well.
tru Aug 10, 2022
68e77f1
[ReleaseNotes]: Add PowerPC release notes for LLVM 15
amy-kwan Aug 28, 2022
05d07e4
[lld] Fix typo in 15.x release notes
smeenai Aug 29, 2022
0c5ce1d
Fix formatting in release notes
aaronpuchert Aug 29, 2022
4bb006d
[LV] Convert runtime diff check test to use opaque pointers.
fhahn Aug 26, 2022
afde142
[LV] Add test for incorrect runtime check generation #57315.
fhahn Aug 26, 2022
3367244
[LV] Add another test for incorrect runtime check generation.
fhahn Aug 26, 2022
9070c25
[LAA] Require AddRecs to be in the innermost loop for diff-checks.
fhahn Aug 26, 2022
761d71a
[MCContext] Reverse order of DebugPrefixMap sort for generated assemb…
dankm Aug 25, 2022
4d2256a
[SLP]Fix PR57447: Assertion `!getTreeEntry(V) && "Scalar already in t…
alexey-bataev Aug 30, 2022
98b6628
[docs] Add "Standard C++ Modules"
ChuanqiXu9 Aug 31, 2022
0b644cb
[Frontend] Restore Preprocessor::getPredefines()
royjacobson Aug 31, 2022
5e1b36c
[Docs][OpenCL][SPIR-V] Release 15 notes for Clang.
Sep 1, 2022
80b4a25
[SystemZ][z/OS] Account for renamed parameter name (libc++)
Aug 30, 2022
11ba13a
[clang] Add __is_target_variant_{os,environment} builtins
nico Aug 26, 2022
be16691
[RLEV] Pick a correct insert point when incoming instruction is itsel…
preames Aug 29, 2022
28f4245
[DOCS] Minor fixes and removals of WIP warnings
tru Sep 4, 2022
4ba6a9c
[RISCV][ReleaseNotes] Added LLVM and Clang release notes for RISC-V 1…
asb Sep 5, 2022
dca7f08
AMDGPU: mbcnt allow for non-zero src1 for known-bits
dstutt Aug 9, 2022
8f820dd
[Symbolizer] Implement data symbolizer markup element.
mysterymath Jul 19, 2022
4cc81e3
[Symbolizer] Implement pc element in symbolizing filter.
mysterymath Aug 1, 2022
55b8f29
[Symbolizer] Fix symbolizer-filter-markup-pc.test on Windows
mysterymath Aug 8, 2022
7ce1ec5
[Symbolizer] Handle {{{bt}}} symbolizer markup element.
mysterymath Aug 5, 2022
4c6350f
[compiler-rt] [test] Handle missing ld.gold gracefully
mgorny Sep 6, 2022
0595790
[clang-format] Distinguish logical and after bracket from reference
jackhong12 Aug 13, 2022
5e1ba27
[DAG] extractShiftForRotate - replace assertion for shift opcode with…
RKSimon Aug 31, 2022
1c73596
[clang] Skip re-building lambda expressions in parameters to consteva…
usx95 Aug 30, 2022
3a08ad2
[Clang] Fix crash in coverage of if consteval.
cor3ntin Aug 26, 2022
1a5c5e0
[DwarfEhPrepare] Assign dummy debug location for inserted _Unwind_Res…
nikic Sep 1, 2022
c643956
[mlir] Fix building CRunnerUtils on OpenBSD with 15.x
brad0 Sep 10, 2022
92e7ef9
[LLD][COFF] Fix writing a map file when range extension thunks are in…
Sep 7, 2022
c51a59d
[libc++][format] Updates feature-test macros.
mordante Sep 4, 2022
a5ae700
[MachO] Fix dead-stripping __eh_frame
smeenai Aug 22, 2022
6fe6989
[MachO] Don't fold compact unwind entries with LSDA
smeenai Aug 28, 2022
c0141f3
Downgrade implicit int and implicit function declaration to warning only
AaronBallman Sep 14, 2022
3637f34
Bump version to 15.0.1
tru Sep 15, 2022
8b75172
[NFC] Fix exception in version-check.py script
tru Sep 15, 2022
9988220
[compiler-rt] Handle non-canonical triples with new runtime lib layout
rorth Sep 11, 2022
4936d7c
[llvm-objdump][test] Add verneed-invalid.test
MaskRay Sep 14, 2022
29d395a
[llvm-objdump] Change printSymbolVersionDependency to use ELFFile API
MaskRay Sep 14, 2022
046d5b9
[Libomptarget] Revert changes to AMDGPU plugin destructors
jhuber6 Sep 15, 2022
063556d
[clang(d)] Include/Exclude CLDXC options properly
kadircet Sep 15, 2022
433f2aa
[lit] Set shlibpath_var on OpenBSD
brad0 Sep 16, 2022
d4bada9
[CodeGen] Don't zero callee-save registers with zero-call-used-regs (…
nikic Sep 15, 2022
43b5b04
[libcxx] Bump libc++ version to 15.0.1
tru Sep 19, 2022
c6d2e8b
[docs] Fix build-docs.sh
tru Sep 19, 2022
d64394b
[libc++] Always query the compiler to find whether a type is always l…
ldionne Sep 6, 2022
c079a29
[LV] Add tests for epilogue vectorization with widened inductions.
fhahn Sep 19, 2022
38b5fa7
[LV] Move new epilog-vectorization-widen-inductions.ll to AArch64 dir.
fhahn Sep 19, 2022
b73d2c8
[LV] Keep track of cost-based ScalarAfterVec in VPWidenPointerInd.
fhahn Sep 19, 2022
5d9fa4d
SPIRV: Fix compilation in NDEBUG.
jyknight Aug 11, 2022
8d802f7
[libc++] Keep unary_function and binary_function in C++17 for one mor…
ldionne Sep 22, 2022
f1ad3ab
[MachineCycle][NFC] add a cache for block and its top level cycle
Sep 16, 2022
a26ef3c
[Hexagon] Add defaulted operator= to classes with defaulted copy ctor
Aug 18, 2022
9d3635c
Exclude check-polly-unittests and check-polly-isl from check-all
efriedma-quic Aug 24, 2022
451e3b6
Bump version to 15.0.2
tru Sep 26, 2022
2eba4dd
[ELF] Rewrite R_RISCV_ALIGN nops when r.addend%4 != 0
MaskRay Sep 26, 2022
e08c165
[clangd] Avoid crash when printing call to string literal operator te…
HighCommander4 Aug 29, 2022
10a5497
Fix build error in StmtPrinterTest.cpp
HighCommander4 Sep 5, 2022
0b41e63
[clang-tidy] adjust treating of array-of-pointers when 'AnalyzePointe…
JonasToth Sep 25, 2022
d3e48d9
[docs] improve documentation for misc-const-correctness
JonasToth Aug 29, 2022
bcb9b9f
[libcxx] Make stdatomic.h work when included from a C source file
ngg Sep 27, 2022
6ba100a
[InstSimplify] Add test for PR58046 (NFC)
nikic Sep 29, 2022
77ff99c
[ValueTracking] Fix CannotBeOrderedLessThanZero() for fdiv (PR58046)
nikic Sep 29, 2022
ebbb544
[Clang] Fix variant crashes from GH58028, GH57370
royjacobson Sep 29, 2022
966e71d
[LV] Convert sve-epilog-vect.ll to use opaque pointers.
fhahn Sep 23, 2022
b3669eb
[LV] Add test for #57912.
fhahn Sep 23, 2022
5f620d0
[LV] Update handling of scalable pointer inductions after b73d2c8.
fhahn Sep 23, 2022
541ea23
[gn build] (manually) port 18b4a8bcf35 more
nico Jul 28, 2022
67ac047
[clang][DebugInfo] Emit debuginfo for non-constant case value
yonghong-song Sep 26, 2022
55d4d86
tweak zstd behavior in cmake and llvm config for better testing
ckissane Sep 1, 2022
4bd3f37
use LLVM_USE_STATIC_ZSTD
ckissane Sep 2, 2022
c0748fe
[clang-tools-extra] [clangd] Respect llvm_shlib_dir in tests
mgorny Oct 3, 2022
61fa709
[LoopVersioning] Invalidate SCEV for phi if new values are added.
fhahn Sep 23, 2022
73ea64f
[clangd] Avoid scanning up to end of file on each comment!
sam-mccall Oct 5, 2022
bd5722b
[X86] Remove AVX512VP2INTERSECT from Sapphire Rapids.
FreddyLeaf Oct 8, 2022
359ef0c
[clangd] Improve inlay hints of things expanded from macros
sam-mccall Sep 15, 2022
27e075f
[Syntax] Fix macro-arg handling in TokenBuffer::spelledForExpanded
sam-mccall Sep 26, 2022
fc47af8
Bump version to 15.0.3
tru Oct 10, 2022
02129ea
[Syntax] avoid using c++17 features on 15.x branch
sam-mccall Oct 10, 2022
6599b6e
Fix LLDB build on old Linux kernels (pre-4.1)
DavidSpickett Oct 5, 2022
f3c5289
Revert "Recommit "[SCEV] Look through single value PHIs." (take 3)"
mstorsjo Oct 5, 2022
d35bc70
[AArch64][SVE] Fix AArch64_SVE_VectorCall calling convention
MDevereau Sep 8, 2022
dfef316
[clang-tidy] Fix a false positive in readability-simplify-boolean-expr
njames93 Sep 24, 2022
e3b0721
[llvm] [lit] Fix use_lld() to respect llvm_shlib_dir
mgorny Oct 6, 2022
6fba785
[llvm] [test] Add missing canonicalization of LLVM_ENABLE_ZSTD
mgorny Oct 6, 2022
b484027
[CMake] Provide Findzstd module
petrhosek Sep 30, 2022
6872509
[libc++] Fix std::function's handling of blocks under Objc ARC
ldionne Oct 11, 2022
f6af957
[clangd] Block clang-tidy misc-const-correctness check
sam-mccall Oct 12, 2022
4a2c05b
[ARM] Fix for MVE i128 vector icmp costs.
davemgreen Oct 14, 2022
086365b
[test] Make Linux/sem_init_glibc.cpp robust
MaskRay Oct 2, 2022
ceee53c
[SROA] Don't speculate phis with different load user types
aeubanks Oct 18, 2022
455e1d7
[InstCombine] Bail out of casting calls when a conversion from/to byv…
glandium Oct 23, 2022
5388da1
Bump version to 15.0.4
tru Oct 24, 2022
5834fe6
[AutoUpgrade] Fix remangling when upgrading struct return type
nikic Oct 21, 2022
dccd061
[ELF] Suppress "duplicate symbol" when resolving STB_WEAK and STB_GNU…
MaskRay Oct 21, 2022
1e1c520
[SystemZ] Relase notes for LLVM 15
tstellar Oct 24, 2022
2d5c43a
[lldb] Automatically unwrap parameter packs in template argument acc…
JDevlieghere Aug 17, 2022
db68723
[clangd] Return earlier when snippet is empty
tom-anders Sep 18, 2022
3010b7e
[clang][driver] Remove dynamic gcc-toolset/devtoolset logic
tbaederr Oct 21, 2022
dd711a9
[lld-macho] Canonicalize personality pointers in EH frames
int3 Oct 12, 2022
9d46557
Take memset_inline into account in analyzeLoadFromClobberingMemInst
gchatelet Oct 26, 2022
08bd84e
[SPARC] Make calls to function with big return values work
koachan Oct 18, 2022
80a9fc8
[clang][Sema] Fix a clang crash with btf_type_tag
yonghong-song Oct 26, 2022
5c68a1c
AMDGPU: Make various vector undefs legal
arsenm Sep 27, 2022
c8e7a87
[CMake] Fix -Wstrict-prototypes
thesamesam Nov 8, 2022
931b6d5
Reenable POSIX builtin library functions in gnu2x mode
AaronBallman Nov 2, 2022
58ba50a
[cmake] Add missing CMakePushCheckState include to FindLibEdit.cmake
mgorny Nov 7, 2022
6750e34
[TypePromotion] Replace Zext to Truncate for the case src bitwidth is…
bcl5980 Nov 8, 2022
d75ae21
Set LLVM_ATOMIC_LIB variable for convenient linking against libatomic
thesamesam Oct 19, 2022
4c3d838
Link liblldCOFF against libatomic when necessary
thesamesam Oct 19, 2022
0988add
Link libclangBasic against libatomic when necessary.
thesamesam Oct 19, 2022
11c3a21
[analyzer] Workaround crash on encountering Class non-type template p…
steakhal Oct 13, 2022
68799e7
[GlobalOpt] Don't remove inalloca from varargs functions
aeubanks Nov 1, 2022
392963b
[lldb] Fix 'error: non-const lvalue...' caused by SWIG 4.1.0
jplesnik Sep 21, 2022
dc8f6ff
[lldb] Get rid of __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS
Sep 29, 2022
a399896
[VectorUtils] Skip interleave members with diff type and alloca sizes.
fhahn Nov 13, 2022
154e88a
Bump version to 15.0.5
tstellar Nov 16, 2022
25a36ca
Bump version to 15.0.6
tstellar Nov 21, 2022
e6e61e9
Revert "Reapply: Add an error message to the default SIGPIPE handler"
bwendling Nov 18, 2022
abcd034
[ELF] Handle GCC collect2 -plugin-opt= on Windows
bwerl Nov 16, 2022
088f336
[CodeGen][ARM] Fix ARMABIInfo::EmitVAAarg crash with empty record typ…
yronglin Nov 17, 2022
a8af9f6
Bump version to 15.0.7
tstellar Jan 6, 2023
74d3ba1
[X86] Don't zero out %eax if both %al and %ah are used
bwendling Dec 13, 2022
67fd0d2
[TypePromotion] Add truncate in ConvertTruncs when the original trunc…
bcl5980 Jan 3, 2023
1095870
[wasm-ld] Define a `__heap_end` symbol marking the end of allocated m…
sunfishcode Oct 17, 2022
948cadd
[RegAllocFast] Handle new debug values for spills
cuviper Jan 4, 2023
939f5a3
libc++: bring back the unsigned in the return type in wcstoull_l
sylvestre Jan 7, 2023
8dfdcc7
[libc++] Fix memory leaks when throwing inside std::vector constructors
philnik777 Nov 17, 2022
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
  •  
  •  
  •  
10 changes: 4 additions & 6 deletions .github/workflows/libclang-abi-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,12 +124,10 @@ jobs:
- name: Dump ABI
run: |
parallel abi-dumper -lver ${{ matrix.ref }} -skip-cxx -public-headers ./install/include/${{ needs.abi-dump-setup.outputs.ABI_HEADERS }} -o {}-${{ matrix.ref }}.abi ./build/lib/{} ::: ${{ needs.abi-dump-setup.outputs.ABI_LIBS }}
# Remove symbol versioning from dumps, so we can compare across major
# versions. We don't need to do this for libclang.so since its ABI
# is stable across major releases and the symbol versions don't change.
if [ -e libclang-cpp.so-${{ matrix.ref }}.abi ]; then
sed -i 's/LLVM_[0-9]\+/LLVM_NOVERSION/' libclang-cpp.so-${{ matrix.ref }}.abi
fi
for lib in ${{ needs.abi-dump-setup.outputs.ABI_LIBS }}; do
# Remove symbol versioning from dumps, so we can compare across major versions.
sed -i 's/LLVM_[0-9]\+/LLVM_NOVERSION/' $lib-${{ matrix.ref }}.abi
done
- name: Upload ABI file
uses: actions/upload-artifact@v2
with:
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/llvm-project-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,21 @@ jobs:
- windows-2019
# We're using a specific version of macOS due to:
# https://github.com/actions/virtual-environments/issues/5900
# We need addtional testing to see if our workaround works for
# new macOS builds.
- macOS-10.15
- macOS-11
steps:
- name: Setup Windows
if: startsWith(matrix.os, 'windows')
uses: llvm/actions/setup-windows@main
with:
arch: amd64
# On Windows, starting with win19/20220814.1, cmake choose the 32-bit
# python3.10.6 libraries instead of the 64-bit libraries when building
# lldb. Using this setup-python action to make 3.10 the default
# python fixes this.
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install Ninja
uses: llvm/actions/install-ninja@main
# actions/checkout deletes any existing files in the new git directory,
Expand All @@ -74,7 +80,7 @@ jobs:
env:
# Workaround for https://github.com/actions/virtual-environments/issues/5900.
# This should be a no-op for non-mac OSes
PKG_CONFIG_PATH: /usr/local/Homebrew/Library/Homebrew/os/mac/pkgconfig//11
PKG_CONFIG_PATH: /usr/local/Homebrew/Library/Homebrew/os/mac/pkgconfig//12
with:
cmake_args: '-GNinja -DLLVM_ENABLE_PROJECTS="${{ inputs.projects }}" -DCMAKE_BUILD_TYPE=Release -DLLDB_INCLUDE_TESTS=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'
build_target: '${{ inputs.build_target }}'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-tasks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Validate Tag
id: validate-tag
run: |
test "${{ github.actor }}" = "tstellar"
test "${{ github.actor }}" = "tstellar" || test "${{ github.actor }}" = "tru"
echo "${{ github.ref_name }}" | grep -e '^llvmorg-[0-9]\+\.[0-9]\+\.[0-9]\+\(-rc[0-9]\+\)\?$'
release_version=`echo "${{ github.ref_name }}" | sed 's/llvmorg-//g'`
echo "::set-output name=release-version::$release_version"
Expand Down
32 changes: 18 additions & 14 deletions .github/workflows/version-check.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,29 @@
import re
import sys


def get_version_from_tag(tag):
m = re.match('llvmorg-([0-9]+)\.([0-9]+)\.([0-9]+)(-rc[0-9]+)?$', tag)
if m:
if m.lastindex == 4:
# We have an rc tag.
return m.group(1,2,3)
# We have a final release tag.
return (m.group(1), m.group(2), str(int(m.group(3)) + 1))

m = re.match('llvmorg-([0-9]+)-init', tag)
if m:
return (int(m.group(1)) + 1, 0, 0)

raise Exception(f"error: Tag is not valid: {tag}")


version = sys.argv[1]

repo = Repo()

tag = repo.git.describe(tags = True, abbrev=0)
m = re.match('llvmorg-([0-9]+)\.([0-9]+)\.([0-9]+)', tag)
if not m:
print("error: Tag is not valid: ", tag)
sys.exit(1)

expected_major = m.group(1)
expected_minor = m.group(2)
expected_patch = int(m.group(3)) + 1
expected_version = f"{expected_major}.{expected_minor}.{expected_patch}"

m = re.match("[0-9]+\.[0-9]+\.[0-9]+", version)
if not m:
print("error: Version is not valid: ", version)
sys.exit(1)
expected_version = '.'.join(get_version_from_tag(tag))

if version != expected_version:
print("error: Expected version", expected_version, "but found version", version)
Expand Down
2 changes: 1 addition & 1 deletion bolt/lib/Core/DebugData.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1593,7 +1593,7 @@ void DwarfLineTable::emit(BinaryContext &BC, MCStreamer &Streamer) {
// Some versions of GCC output DWARF5 .debug_info, but DWARF4 or lower
// .debug_line
if (LineStrSection) {
LineStr = MCDwarfLineStr(*BC.Ctx);
LineStr.emplace(*BC.Ctx);
parseAndPopulateDebugLineStr(*LineStrSection, *LineStr, BC, Streamer);
}

Expand Down
14 changes: 10 additions & 4 deletions clang-tools-extra/clang-tidy/misc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,18 @@ set(LLVM_LINK_COMPONENTS
Support
)

if(LLVM_USE_HOST_TOOLS)
build_native_tool(make-confusable-table make_confusable_table)
set(CLANG_TIDY_CONFUSABLE_CHARS_GEN "clang-tidy-confusable-chars-gen" CACHE
STRING "Host clang-tidy-confusable-chars-gen executable. Saves building if cross-compiling.")

if(NOT CLANG_TIDY_CONFUSABLE_CHARS_GEN STREQUAL "clang-tidy-confusable-chars-gen")
set(make_confusable_table ${CLANG_TIDY_CONFUSABLE_CHARS_GEN})
set(make_confusable_table_target ${CLANG_TIDY_CONFUSABLE_CHARS_GEN})
elseif(LLVM_USE_HOST_TOOLS)
build_native_tool(clang-tidy-confusable-chars-gen make_confusable_table)
set(make_confusable_table_target "${make_confusable_table}")
else()
set(make_confusable_table $<TARGET_FILE:make-confusable-table>)
set(make_confusable_table_target make-confusable-table)
set(make_confusable_table $<TARGET_FILE:clang-tidy-confusable-chars-gen>)
set(make_confusable_table_target clang-tidy-confusable-chars-gen)
endif()

add_subdirectory(ConfusableTable)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
set(LLVM_LINK_COMPONENTS Support)
list(REMOVE_ITEM LLVM_COMMON_DEPENDS clang-tablegen-targets)

add_llvm_executable(make-confusable-table
add_llvm_executable(clang-tidy-confusable-chars-gen
BuildConfusableTable.cpp
)
8 changes: 6 additions & 2 deletions clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/ASTMatchers/ASTMatchers.h"

#include <iostream>

using namespace clang::ast_matchers;

namespace clang {
Expand Down Expand Up @@ -132,6 +130,12 @@ void ConstCorrectnessCheck::check(const MatchFinder::MatchResult &Result) {
VC = VariableCategory::Reference;
if (Variable->getType()->isPointerType())
VC = VariableCategory::Pointer;
if (Variable->getType()->isArrayType()) {
if (const auto *ArrayT = dyn_cast<ArrayType>(Variable->getType())) {
if (ArrayT->getElementType()->isPointerType())
VC = VariableCategory::Pointer;
}
}

// Each variable can only be in one category: Value, Pointer, Reference.
// Analysis can be controlled for every category.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -472,8 +472,8 @@ class SimplifyBooleanExprCheck::Visitor : public RecursiveASTVisitor<Visitor> {
checkSingleStatement(If->getThen(), parseReturnLiteralBool);
if (ThenReturnBool &&
ThenReturnBool.Bool != TrailingReturnBool.Bool) {
if (Check->ChainedConditionalReturn ||
(!PrevIf && If->getElse() == nullptr)) {
if ((Check->ChainedConditionalReturn || !PrevIf) &&
If->getElse() == nullptr) {
Check->replaceCompoundReturnWithCondition(
Context, cast<ReturnStmt>(*Second), TrailingReturnBool.Bool,
If, ThenReturnBool.Item);
Expand Down
101 changes: 93 additions & 8 deletions clang-tools-extra/clangd/ClangdLSPServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@
#include "support/Trace.h"
#include "clang/Tooling/Core/Replacement.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/FunctionExtras.h"
#include "llvm/ADT/None.h"
#include "llvm/ADT/Optional.h"
#include "llvm/ADT/ScopeExit.h"
#include "llvm/ADT/StringRef.h"
Expand Down Expand Up @@ -571,8 +573,12 @@ void ClangdLSPServer::onInitialize(const InitializeParams &Params,
{"referencesProvider", true},
{"astProvider", true}, // clangd extension
{"typeHierarchyProvider", true},
{"memoryUsageProvider", true}, // clangd extension
{"compilationDatabase", // clangd extension
// Unfortunately our extension made use of the same capability name as the
// standard. Advertise this capability to tell clients that implement our
// extension we really have support for the standardized one as well.
{"standardTypeHierarchyProvider", true}, // clangd extension
{"memoryUsageProvider", true}, // clangd extension
{"compilationDatabase", // clangd extension
llvm::json::Object{{"automaticReload", true}}},
{"callHierarchyProvider", true},
{"clangdInlayHintsProvider", true},
Expand Down Expand Up @@ -1183,18 +1189,94 @@ void ClangdLSPServer::onHover(const TextDocumentPositionParams &Params,
});
}

void ClangdLSPServer::onTypeHierarchy(
const TypeHierarchyParams &Params,
Callback<Optional<TypeHierarchyItem>> Reply) {
// Our extension has a different representation on the wire than the standard.
// https://clangd.llvm.org/extensions#type-hierarchy
llvm::json::Value serializeTHIForExtension(TypeHierarchyItem THI) {
llvm::json::Object Result{{
{"name", std::move(THI.name)},
{"kind", static_cast<int>(THI.kind)},
{"uri", std::move(THI.uri)},
{"range", THI.range},
{"selectionRange", THI.selectionRange},
{"data", std::move(THI.data)},
}};
if (THI.deprecated)
Result["deprecated"] = THI.deprecated;
if (THI.detail)
Result["detail"] = std::move(*THI.detail);

if (THI.parents) {
llvm::json::Array Parents;
for (auto &Parent : *THI.parents)
Parents.emplace_back(serializeTHIForExtension(std::move(Parent)));
Result["parents"] = std::move(Parents);
}

if (THI.children) {
llvm::json::Array Children;
for (auto &child : *THI.children)
Children.emplace_back(serializeTHIForExtension(std::move(child)));
Result["children"] = std::move(Children);
}
return Result;
}

void ClangdLSPServer::onTypeHierarchy(const TypeHierarchyPrepareParams &Params,
Callback<llvm::json::Value> Reply) {
auto Serialize =
[Reply = std::move(Reply)](
llvm::Expected<std::vector<TypeHierarchyItem>> Resp) mutable {
if (!Resp) {
Reply(Resp.takeError());
return;
}
if (Resp->empty()) {
Reply(nullptr);
return;
}
Reply(serializeTHIForExtension(std::move(Resp->front())));
};
Server->typeHierarchy(Params.textDocument.uri.file(), Params.position,
Params.resolve, Params.direction, std::move(Reply));
Params.resolve, Params.direction, std::move(Serialize));
}

void ClangdLSPServer::onResolveTypeHierarchy(
const ResolveTypeHierarchyItemParams &Params,
Callback<Optional<TypeHierarchyItem>> Reply) {
Callback<llvm::json::Value> Reply) {
auto Serialize =
[Reply = std::move(Reply)](
llvm::Expected<llvm::Optional<TypeHierarchyItem>> Resp) mutable {
if (!Resp) {
Reply(Resp.takeError());
return;
}
if (!*Resp) {
Reply(std::move(*Resp));
return;
}
Reply(serializeTHIForExtension(std::move(**Resp)));
};
Server->resolveTypeHierarchy(Params.item, Params.resolve, Params.direction,
std::move(Reply));
std::move(Serialize));
}

void ClangdLSPServer::onPrepareTypeHierarchy(
const TypeHierarchyPrepareParams &Params,
Callback<std::vector<TypeHierarchyItem>> Reply) {
Server->typeHierarchy(Params.textDocument.uri.file(), Params.position,
Params.resolve, Params.direction, std::move(Reply));
}

void ClangdLSPServer::onSuperTypes(
const ResolveTypeHierarchyItemParams &Params,
Callback<llvm::Optional<std::vector<TypeHierarchyItem>>> Reply) {
Server->superTypes(Params.item, std::move(Reply));
}

void ClangdLSPServer::onSubTypes(
const ResolveTypeHierarchyItemParams &Params,
Callback<std::vector<TypeHierarchyItem>> Reply) {
Server->subTypes(Params.item, std::move(Reply));
}

void ClangdLSPServer::onPrepareCallHierarchy(
Expand Down Expand Up @@ -1523,6 +1605,9 @@ void ClangdLSPServer::bindMethods(LSPBinder &Bind,
Bind.method("textDocument/symbolInfo", this, &ClangdLSPServer::onSymbolInfo);
Bind.method("textDocument/typeHierarchy", this, &ClangdLSPServer::onTypeHierarchy);
Bind.method("typeHierarchy/resolve", this, &ClangdLSPServer::onResolveTypeHierarchy);
Bind.method("textDocument/prepareTypeHierarchy", this, &ClangdLSPServer::onPrepareTypeHierarchy);
Bind.method("typeHierarchy/supertypes", this, &ClangdLSPServer::onSuperTypes);
Bind.method("typeHierarchy/subtypes", this, &ClangdLSPServer::onSubTypes);
Bind.method("textDocument/prepareCallHierarchy", this, &ClangdLSPServer::onPrepareCallHierarchy);
Bind.method("callHierarchy/incomingCalls", this, &ClangdLSPServer::onCallHierarchyIncomingCalls);
Bind.method("textDocument/selectionRange", this, &ClangdLSPServer::onSelectionRange);
Expand Down
13 changes: 10 additions & 3 deletions clang-tools-extra/clangd/ClangdLSPServer.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#include <chrono>
#include <cstddef>
#include <memory>
#include <vector>

namespace clang {
namespace clangd {
Expand Down Expand Up @@ -132,10 +133,16 @@ class ClangdLSPServer : private ClangdServer::Callbacks,
void onRename(const RenameParams &, Callback<WorkspaceEdit>);
void onHover(const TextDocumentPositionParams &,
Callback<llvm::Optional<Hover>>);
void onTypeHierarchy(const TypeHierarchyParams &,
Callback<llvm::Optional<TypeHierarchyItem>>);
void onPrepareTypeHierarchy(const TypeHierarchyPrepareParams &,
Callback<std::vector<TypeHierarchyItem>>);
void onSuperTypes(const ResolveTypeHierarchyItemParams &,
Callback<llvm::Optional<std::vector<TypeHierarchyItem>>>);
void onSubTypes(const ResolveTypeHierarchyItemParams &,
Callback<std::vector<TypeHierarchyItem>>);
void onTypeHierarchy(const TypeHierarchyPrepareParams &,
Callback<llvm::json::Value>);
void onResolveTypeHierarchy(const ResolveTypeHierarchyItemParams &,
Callback<llvm::Optional<TypeHierarchyItem>>);
Callback<llvm::json::Value>);
void onPrepareCallHierarchy(const CallHierarchyPrepareParams &,
Callback<std::vector<CallHierarchyItem>>);
void onCallHierarchyIncomingCalls(
Expand Down
18 changes: 17 additions & 1 deletion clang-tools-extra/clangd/ClangdServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -751,7 +751,7 @@ void ClangdServer::findHover(PathRef File, Position Pos,

void ClangdServer::typeHierarchy(PathRef File, Position Pos, int Resolve,
TypeHierarchyDirection Direction,
Callback<Optional<TypeHierarchyItem>> CB) {
Callback<std::vector<TypeHierarchyItem>> CB) {
auto Action = [File = File.str(), Pos, Resolve, Direction, CB = std::move(CB),
this](Expected<InputsAndAST> InpAST) mutable {
if (!InpAST)
Expand All @@ -763,6 +763,22 @@ void ClangdServer::typeHierarchy(PathRef File, Position Pos, int Resolve,
WorkScheduler->runWithAST("TypeHierarchy", File, std::move(Action));
}

void ClangdServer::superTypes(
const TypeHierarchyItem &Item,
Callback<llvm::Optional<std::vector<TypeHierarchyItem>>> CB) {
WorkScheduler->run("typeHierarchy/superTypes", /*Path=*/"",
[=, CB = std::move(CB)]() mutable {
CB(clangd::superTypes(Item, Index));
});
}

void ClangdServer::subTypes(const TypeHierarchyItem &Item,
Callback<std::vector<TypeHierarchyItem>> CB) {
WorkScheduler->run(
"typeHierarchy/subTypes", /*Path=*/"",
[=, CB = std::move(CB)]() mutable { CB(clangd::subTypes(Item, Index)); });
}

void ClangdServer::resolveTypeHierarchy(
TypeHierarchyItem Item, int Resolve, TypeHierarchyDirection Direction,
Callback<llvm::Optional<TypeHierarchyItem>> CB) {
Expand Down
8 changes: 7 additions & 1 deletion clang-tools-extra/clangd/ClangdServer.h
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,13 @@ class ClangdServer {
/// Get information about type hierarchy for a given position.
void typeHierarchy(PathRef File, Position Pos, int Resolve,
TypeHierarchyDirection Direction,
Callback<llvm::Optional<TypeHierarchyItem>> CB);
Callback<std::vector<TypeHierarchyItem>> CB);
/// Get direct parents of a type hierarchy item.
void superTypes(const TypeHierarchyItem &Item,
Callback<llvm::Optional<std::vector<TypeHierarchyItem>>> CB);
/// Get direct children of a type hierarchy item.
void subTypes(const TypeHierarchyItem &Item,
Callback<std::vector<TypeHierarchyItem>> CB);

/// Resolve type hierarchy item in the given direction.
void resolveTypeHierarchy(TypeHierarchyItem Item, int Resolve,
Expand Down
Loading
Loading