Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
483 commits
Select commit Hold shift + click to select a range
eff1265
[clang][NFC] Fix expected directives in C++ DRs
Endilll Jan 6, 2025
3c8344f
[AArch64][SME] Fix broken compiler check for SME2 support in compiler…
aemerson Jan 6, 2025
0b73b5a
[AArch64] Correct position of CFI Instruction for Pointer Authenticat…
Stylie777 Jan 6, 2025
9e4774b
[clang-format] Add LT_RequiresExpression and LT_SimpleRequirement (#1…
owenca Jan 6, 2025
f6bfbc8
[mlir] flush output in transform.print (#121382)
ftynse Jan 6, 2025
3c5f269
[clang][NFC] Stop using atypical compiler arguments in C++ DR tests
Endilll Jan 6, 2025
8e1b49c
Complex deinterleaving/single reductions build fix Reapply "Add suppo…
NickGuy-Arm Jan 6, 2025
a3fff3a
[LoopVectorize][NFC] Fix arith-fp-frem-costs.ll test to use new vplan…
david-arm Jan 6, 2025
3a7a9c9
[lldb][AIX] HostInfoAIX Support (#117906)
DhruvSrivastavaX Jan 6, 2025
d3b77a9
[gn build] Port 3a7a9c928671
llvmgnsyncbot Jan 6, 2025
1feeeb4
[LoopVectorize][NFC] Move "LV: Selecting VF" debug output (#120744)
david-arm Jan 6, 2025
3134045
[AArch64][SVE] Add dot product codegen for partial reductions with no…
JamesChesterman Jan 6, 2025
a13bcf3
[clang] Do not serialize function definitions without a body (#121550)
alejandro-alvarez-sonarsource Jan 6, 2025
599c739
[mlir][GPU] Add NVVM-specific `cf.assert` lowering (#120431)
matthias-springer Jan 6, 2025
4df366c
[FLANG][OpenMP]Add support for ALIGN clause on OMP ALLOCATE (#120791)
Leporacanthicus Jan 6, 2025
e4e2f53
[clang] Add sincos builtin using `llvm.sincos` intrinsic (#114086)
MacDue Jan 6, 2025
ef2afa1
[libc++] Simplify unwrap_ref_decay a bit (#121623)
philnik777 Jan 6, 2025
b359c84
[RISCV] Don't commute with shift if it would break sh{1,2,3}add patte…
lukel97 Jan 6, 2025
3bd494d
[lldb][POSIX] Replace bzero with memset in domain socket code (#121747)
DhruvSrivastavaX Jan 6, 2025
266bb49
[docs] fix grammar mistake (#121695)
alyanser Jan 6, 2025
648e256
Reapply "[clang][analyzer] Stable order for SymbolRef-keyed container…
necto Jan 6, 2025
d8d4c18
[AArch64][SME] Disable inlining of callees with new ZT0 state (#121338)
kmclaughlin-arm Jan 6, 2025
9ce8f4b
[mlir] DCE `friend Dialect::registerDialect` (#121728)
makslevental Jan 6, 2025
fd6f8b3
[AMDGPU] [GlobalIsel] Combine Fmul with Select into ldexp instruction…
vg0204 Jan 6, 2025
0c1cf75
[mlir] DCE `RegisteredOperationName::parseAssembly` decl (#121730)
makslevental Jan 6, 2025
67652a3
[PhaseOrdering][X86] Add horizontal-sub test coverage for #34072
RKSimon Jan 6, 2025
3edbe36
[clang] Fix missing check for nullptr in CallExpr::getUnusedResultAtt…
Mick235711 Jan 6, 2025
8f17c90
[clang] Expose -f(no-)wrapv as clang-cl option (#120787)
nico Jan 6, 2025
346185c
[AArch64] Improve codegen of vectorised early exit loops (#119534)
david-arm Jan 6, 2025
f024708
Fix after #121482 (#121764)
JoelWee Jan 6, 2025
1547382
[X86] Support lowering of FMINIMUMNUM/FMAXIMUMNUM (#121464)
phoebewang Jan 6, 2025
7cdbde7
[CostModel][X86] getShuffleCost - use processShuffleMasks for all shu…
RKSimon Jan 6, 2025
c630e13
[InstSimplify] Simplify both operands of select before comparing (#12…
nikic Jan 6, 2025
69ba565
[InstCombine] Handle commuted pattern for `((X s/ C1) << C2) + X` (#1…
dtcxzyw Jan 6, 2025
3f79057
[Clang] Make passing incomplete types to builtin type-traits a non-sf…
cor3ntin Jan 6, 2025
81fae0d
[Clang][AMDGPU] Stop defaulting to `one-as` for all atomic scopes (#1…
jhuber6 Jan 6, 2025
b79d3b9
[clang][NFC] Move CWG273 test into its own file
Endilll Jan 6, 2025
d68ea31
[InstCombine] Add additional tests for icmp of phi of zext (NFC)
nikic Jan 6, 2025
14ba3f9
[clang][NFC] Fill in historical data for C++ DRs with 'yes' availability
Endilll Jan 6, 2025
05bd7d2
[MLIR] Fix triple mismatch warning for embedded libdevice (#121447)
arthurqiu Jan 6, 2025
7cb6e6b
[libc] Fix sort test failing on NVPTX
jhuber6 Jan 6, 2025
1229b78
[clang][NFC] Clean up CWG2396 test
Endilll Jan 6, 2025
d993b11
[VectorCombine] Remove superfluous whitespace from debug log comment.…
RKSimon Jan 6, 2025
27751c3
Update BUILD.bazel after #121482
JoelWee Jan 6, 2025
4ebfd43
[InstCombine] Always treat inner and/or as bitwise (#121766)
dtcxzyw Jan 6, 2025
df67e37
[clang][NFC] clean up the handling of convergence control tokens (#12…
ssahasra Jan 6, 2025
10fb5d2
[clang] Add test for CWG203 "Type of address-of-member expression" (#…
Endilll Jan 6, 2025
93220e7
RegAllocGreedy: Fix use after free during last chance recoloring (#12…
arsenm Jan 6, 2025
ca603d2
[AArch64] Regenerate neon-vcmla.c test. NFC
davemgreen Jan 6, 2025
21edac2
[SPIRV] Add Target Builtins using Distance ext as an example (#121598)
farzonl Jan 6, 2025
98b3191
[libc][docgen] regen docgen via cmake (#119628)
nickdesaulniers Jan 6, 2025
d00f65c
[Driver][SYCL] Add initial SYCL offload compilation support (#117268)
mdtoguchi Jan 6, 2025
5e0be96
[PowerPC] Support PIC Secure PLT for CALL_RM
MaskRay Jan 6, 2025
55391f8
[analyzer] Retry UNDEF Z3 queries 2 times by default (#120239)
steakhal Jan 6, 2025
b6960e2
[lldb][ResolveSourceFileCallback] Update SBModule (#120832)
rchamala Jan 6, 2025
cb5d866
[AArch64][SME] Add Darwin specific SME ABI routines.
aemerson Jan 4, 2025
db88071
[CostModel][X86] Attempt to match cheap v4f32 shuffles that map to SH…
RKSimon Jan 6, 2025
d40235a
[TableGen] Remove unused functionality from OpInit class. NFC (#121680)
topperc Jan 6, 2025
fe42e63
[mlir][NFC] Refactor `eraseState` to take constant time (#121670)
IanWood1 Jan 6, 2025
1401703
[RISCV] Add Enum for CSR encodings. (#121674)
topperc Jan 6, 2025
6b0807f
[AArch64][GlobalISel] Add support for lowering trunc stores of vector…
aemerson Jan 6, 2025
2d53eaf
[AArch64][GlobalISel] Fix legalization for <4 x i1> vector stores.
aemerson Jan 6, 2025
0d5c072
[HLSL] Adding Flatten and Branch if attributes (#116331)
joaosaffran Jan 6, 2025
7a07d8e
[flang][Driver] Fix flang/test/Driver/parse-error.ll
kparzysz Jan 6, 2025
112793a
[DAG] expandUINT_TO_FP - use getShiftAmountConstant helper. NFC.
RKSimon Jan 6, 2025
9236751
[DAG] VectorLegalizer::ExpandUINT_TO_FLOAT- pull out repeated getValu…
RKSimon Jan 6, 2025
f3bc8c3
Add SD matchers and unit test coverage for ISD::VECTOR_SHUFFLE (#119592)
AidanGoldfarb Jan 6, 2025
3f93625
[HLSL] Fix debug info generation for RWBuffer types (#119041)
joaosaffran Jan 6, 2025
21c785d
[OpenACC] Implement 'set' construct sema
erichkeane Jan 3, 2025
ff24e9a
[OpenACC] Implement 'default_async' sema
erichkeane Jan 6, 2025
7d53762
[AArch64] Migrate from SearchableTable to GenericTable/Enum. NFC (#12…
topperc Jan 6, 2025
c388da6
[libc][bazel] Simplify libc_build_rules by grouping release copts (#1…
vonosmas Jan 6, 2025
f4bab06
[libc] Split AMDGPU and NVPTX configs into separate folders (#120153)
jhuber6 Jan 6, 2025
dc0e258
[AMDGPU] Remove Dwarf encodings for subregisters (#117891)
epilk Jan 6, 2025
6f28b4b
[GSYM] Add support for querying merged functions in llvm-gsymutil (#1…
alx32 Jan 6, 2025
ce831a2
[AMDGPU][True16][MC] true16 for v_fma_f16 (#119477)
broxigarchen Jan 6, 2025
97ea0ab
[TableGen] Do not exit in template argument check (#121636)
zero9178 Jan 6, 2025
40a00af
[gn] port 21edac25f09f (BuiltinsSPIRV)
nico Jan 6, 2025
4af3332
[AMDGPU][True16][MC] true16 for v_cvt_u32_u16 (#120646)
broxigarchen Jan 6, 2025
6e6f89c
[flang][test] One more fix in flang/test/Driver/parse-error.ll
kparzysz Jan 6, 2025
15f30e7
[libc++] Fix the batch size used in the std::gcd benchmark (#120618)
ldionne Jan 6, 2025
cb1c156
[libc++] Use copy_file_range for fs::copy (#109211)
Jannik2099 Jan 6, 2025
774c226
[LLDB] Add external progress bit category (#120171)
Jlalond Jan 6, 2025
bda7c9a
[libc++][hardening] Add checks to `forward_list` element access. (#12…
var-const Jan 6, 2025
fbcf3cb
[libclang/python] Add python binding for clang_Cursor_isAnonymousReco…
efriedma-quic Jan 6, 2025
be21bd9
Revert "[BOLT] Add --pad-funcs-before=func:n (#117924)"
aaupov Jan 6, 2025
3f1a391
[llvm-gsymutil] Fix broken tests (#121837)
alx32 Jan 6, 2025
f06d4d9
[gn build] Port d00f65c6acd9
llvmgnsyncbot Jan 6, 2025
ec58ad6
[Driver][SYCL] Address sanitizer and test issue (#121822)
mdtoguchi Jan 6, 2025
32d761b
[AArch64][machine-scheduler][Neoverse-N2] fdiv is blocking (#119206)
simonwallis2 Jan 6, 2025
4cceea1
[libc][bazel] Remove customization from several libc BUILD rules. (#1…
vonosmas Jan 6, 2025
c8d435f
[RISCV] Use ISD::XOR instead of RISCVISD::VMXOR_VL in lowerVectorMask…
topperc Jan 6, 2025
d0c00cf
[LV] Add test case for #121745.
fhahn Jan 6, 2025
3874c64
[flang][cuda] Allow constant actual argument for device dummy (#121845)
clementval Jan 6, 2025
f9369cc
[VPlan] Make sure last IV increment value is available if needed.
fhahn Jan 6, 2025
1a435fe
[HLSL] Fix build warning after #116331 (#121852)
vitalybuka Jan 6, 2025
8cd94e0
[mlir][Affine] Add nsw to lowering of `AffineMulExpr`. (#121535)
MaheshRavishankar Jan 6, 2025
4312075
[nfc][thinlto] remove unnecessary return from `renameModuleForThinLTO…
mtrofin Jan 6, 2025
01e980e
[lldb] Use `Address` to setup breakpoint (#94794)
yln Jan 6, 2025
4dc34b0
[bazel] Add BuiltinsSPIRV (for #121598)
chapuni Jan 6, 2025
9709795
[Coverage] MCDC: Move findIndependencePairs deferred into MCDCRecord …
chapuni Jan 6, 2025
90b04bf
[NFC] fix up typos (#121842)
farzonl Jan 7, 2025
7e2ed35
AMDGPU: Reduce AddedComplexity on canonicalize pattern (#119796)
arsenm Jan 7, 2025
f6365a4
AMDGPU: Fix assert on physreg MUBUF rsrc operand (#120815)
arsenm Jan 7, 2025
a8f3eba
AMDGPU: Mark test as XFAIL in expensive_checks builds
arsenm Jan 7, 2025
737d6ca
[RISCV] Add Qualcomm uC Xqcicm (Conditional Move) extension (#121752)
hchandel Jan 7, 2025
93e6346
RegAllocGreedy: Un-disable test in expensive_checks builds
arsenm Jan 7, 2025
8c0483b
RegisterCoalescer: Fix assert on remat to copy-to-physreg with subreg…
arsenm Jan 7, 2025
653a547
[Darwin][Driver][clang] apple-none-macho orders the resource director…
ian-twilightcoder Jan 7, 2025
8d2e611
[AMDGPU] Calculate getDivNumBits' AtLeast using bitwidth (#121758)
choikwa Jan 7, 2025
5aef8ab
[lld,NFC] Fix stale comments related to config->
MaskRay Jan 7, 2025
5656cbc
[MLIR][CAPI] export LLVMFunctionType param getter and setters (#121888)
wsmoses Jan 7, 2025
a8072a0
[InstCombine] Eliminate icmp+zext pairs over phis more aggressively (…
nikic Jan 7, 2025
9c1fecf
[LLVM] Update debuginfo maintainers (#120231)
nikic Jan 7, 2025
7810e6a
[ARM] Introduce test for PR121565 (NFC)
antoniofrighetto Jan 7, 2025
446a426
[ARM] Record store with pre/post-indexed addressing as `mayStore`
antoniofrighetto Jan 7, 2025
93011fe
[FMV][AArch64][clang] Emit fmv-features metadata in LLVM IR. (#118544)
labrinea Jan 7, 2025
064da42
[clang-format][NFC] Remove unneeded ST_ChildBlock in annotator
owenca Jan 7, 2025
21b531e
[clang][llvm][aarch64] Add aarch64_sme_in_streaming_mode intrinsic (#…
NickGuy-Arm Jan 7, 2025
d82d53b
[flang][openmp] initialize allocatable components of firstprivate cop…
jeanPerier Jan 7, 2025
231d113
[InstCombine] Handle commuted patterns in `foldSelectWithSRem` (#121896)
dtcxzyw Jan 7, 2025
0fa59c6
[llvm][Docs] Update supported hardware (#121743)
DavidSpickett Jan 7, 2025
2db7b31
[AArch64] Add BF16 fpext and fptrunc costs. (#119524)
davemgreen Jan 7, 2025
cf23549
[clang] Improve `make_cxx_dr_status` behavior when error occurs (#121…
Endilll Jan 7, 2025
83c1d00
[SPIR-V] Overhaul module analysis to improve translation speed and si…
VyacheslavLevytskyy Jan 7, 2025
b0e05a5
[RISCV] Add missing check before accessing pointer
mikhailramalho Jan 6, 2025
5514865
[Coalescer] Move code added in #116191 (#121779)
sdesmalen-arm Jan 7, 2025
7ce15f3
[NFC][analyzer][docs] Document MallocChecker's ownership attributes (…
Szelethus Jan 7, 2025
66acb26
[clang][CodeGen][SPIRV] Translate `amdgpu_flat_work_group_size` into …
AlexVlx Jan 7, 2025
a774e7f
[SPIR-V] Fix OpName and LinkageAttributes decoration of global variab…
VyacheslavLevytskyy Jan 7, 2025
bc51a2e
[Support] Recycler: Implement move constructor (#120555)
optimisan Jan 7, 2025
19c9348
[FLANG][OPENMP] Fix handling of continuation lines in mixed OpenMP an…
Karthikdhondi Jan 7, 2025
4a42658
[VectorCombine][X86] shuffle-of-cmps.ll - tweak shuf_fcmp_oeq_v4i32 s…
RKSimon Jan 7, 2025
63d4e0f
[InstCombine] Compute result directly on APInts
nikic Jan 7, 2025
647cadb
explicitly specify the -fopenmp lib in spirv-openmp-toolchain.c test
d0k Jan 7, 2025
1fb98b5
[mlir][Transforms] Make LocationSnapshotPass respect OpPrintingFlags …
jungmair Jan 7, 2025
4ecd9bd
[lldb][Posix] Remove unused includes in file system (#121913)
DavidSpickett Jan 7, 2025
5a7dfb4
[CostModel][X86] Attempt to match v4f32 shuffles that map to MOVSS/IN…
RKSimon Jan 7, 2025
1729e6e
[AArch64] Improve bf16 fp_extend lowering. (#118966)
davemgreen Jan 7, 2025
1eed780
[bazel] Update dependency for a738d81cd2822698539b0482af48d49d91ea5a2e
d0k Jan 7, 2025
a5e129c
[CostModel][X86] getVectorInstrCost - correctly cost v4f32 insertelem…
RKSimon Jan 7, 2025
ca5fd06
[clang] Fix crashes when passing VLA to va_arg (#119563)
amane-ame Jan 7, 2025
882df05
[InstCombine] Fold `(A | B) ^ (A & C) --> A ? ~C : B` (#121906)
dtcxzyw Jan 7, 2025
525f526
[RISCV] Support Parsing Nonstandard Relocations (#119909)
lenary Jan 7, 2025
c274837
[clang-tidy] bugprone-unhandled-self-assignment: fix smart pointer ch…
flovent Jan 7, 2025
a629d9e
[NVPTX] Constant-folding for f2i, d2ui, f2ll etc. (#118965)
LewisCrawford Jan 7, 2025
4e066b6
[PatternMatch] Match commuted patterns in `Signum_match` (#121911)
dtcxzyw Jan 7, 2025
1332db3
[DAG] TransformFPLoadStorePair - early out if we're not loading a sim…
RKSimon Jan 7, 2025
7edeeab
[lldb][NetBSD] Remove unused include in FileSystemPosix.cpp (#121920)
DavidSpickett Jan 7, 2025
ef391db
[LV] Drop incorrect inbounds for reverse vector pointer when folding …
fmayer Jan 7, 2025
5f6b714
[analyzer][NFC] Simplify PositiveAnalyzerOption handling (#121910)
steakhal Jan 7, 2025
ab5133b
Revert "[Darwin][Driver][clang] apple-none-macho orders the resource …
nico Jan 7, 2025
faa3f75
[libc++] Fix largefile handling in fs::copy_file (#121855)
Jannik2099 Jan 7, 2025
0c8efbe
[X86] Add shuffle test for #121823
RKSimon Jan 7, 2025
c3fc41c
[gn build] Port bc51a2e3940a
llvmgnsyncbot Jan 7, 2025
82ec2d6
[Coalescer] Consider NewMI's subreg index when updating lanemask. (#1…
sdesmalen-arm Jan 7, 2025
473cdb9
[TySan] Don't report globals with incomplete types. (#121922)
fhahn Jan 7, 2025
71ddde8
[RISCV][llvm-exegesis] Add unittests. NFC (#121862)
topperc Jan 7, 2025
2c7c07d
[DirectX] Remove the "checked" variants of `dx.resource.load` (#120778)
bogner Jan 7, 2025
8178d3c
[DirectX] Add getpointer docs to DXILResources.rst (#120779)
bogner Jan 7, 2025
17c8c1c
[AMDGPU] Do not fold into v_accvpr_mov/write/read (#120475)
bcahoon Jan 7, 2025
d0812db
[AMDGPU][True16][MC] true16 for v_minmax/maxmin_f16 and v_minmax/maxm…
broxigarchen Jan 7, 2025
96f8cfe
Cosmetic fixes in the code and typos in Python bindings docs (#121791)
vfdev-5 Jan 7, 2025
a0f5bbc
Fixed typo in dunder get/set methods in PyAttrBuilderMap (#121794)
vfdev-5 Jan 7, 2025
7899572
AMDGPU: Forcibly disable verifier in test
arsenm Jan 7, 2025
4e36d5b
[NFC][Coroutines] Remove invalid coroutine intrinsic name (#114543)
veselypeta Jan 7, 2025
785b16a
[RISCV][GISel] Support G_MERGE_VALUES/G_UNMERGE_VALUES with Zfa. (#12…
topperc Jan 7, 2025
b7a6e9d
[ubsan] Use internal_memcpy to copy ubsan bits size (#121586)
earnol Jan 7, 2025
619a5d3
[X86] combineTarge - pull out repeated getVectorNumElements calls. NFC.
RKSimon Jan 7, 2025
56c5a6b
[NFC][analyzer][docs] Crosslink MallocChecker's ownership attributes …
Szelethus Jan 7, 2025
db81e8c
[OpenACC] Initial sema implementation of 'update' construct
erichkeane Jan 6, 2025
dd1e8aa
[OpenACC] Enable 'if' and 'if_present' for 'update' construct
erichkeane Jan 7, 2025
9374453
[compiler-rt][rtsan] Reland posix part of #121616 setbuf, setvbuf. (#…
devnexen Jan 7, 2025
611c96a
[flang] Schedule InlineHLFIRAssign after BufferizeHLFIR. (#121863)
vzakhari Jan 7, 2025
51c9c82
[RISCV] Added test case for PR119527. NFC (#121816)
mikhailramalho Jan 7, 2025
2e637db
[flang] Canonicalize redundant pointer converts. (#121864)
vzakhari Jan 7, 2025
8557a57
[flang][OpenMP][NFC] Move reduction init and cleanup region gen to he…
tblah Jan 7, 2025
57b80e8
[SystemZ][z/OS] Add z/OS customization file (#111182)
perry-ca Jan 7, 2025
fbd2365
[libc++] Improve coverage of std::atomic_ref<T>::exchange() (#121596)
dalg24 Jan 7, 2025
0a58a1c
[libc] update todo with bug link
nickdesaulniers Jan 7, 2025
5130a4e
[flang][OpenMP] Handle pointers and allocatables in clone init (#121824)
luporl Jan 7, 2025
0d9cf26
[lldb-dap] Ensure the IO forwarding threads are managed by the DAP ob…
ashgti Jan 7, 2025
aa9cc72
Reapply "[BOLT] Add --pad-funcs-before=func:n (#117924)" (#121918)
peterwaller-arm Jan 7, 2025
15d3e4a
[InstCombine] Test for two types of bittests (NFC)
andjo403 Jan 7, 2025
292c135
[libc++] Add new utilities to compare benchmark results between build…
ldionne Jan 7, 2025
6192faf
[InstSimplify] Use multi-op replacement when simplify `select` (#121708)
goldsteinn Jan 7, 2025
afa8aee
[RISCV][llvm-exegesis] Add default Pfm cycle counter. (#121866)
topperc Jan 7, 2025
5c7a696
[ARM] Migrate from SearchableTable to GenericTable. NFC (#121840)
topperc Jan 7, 2025
478648e
[gwp_asan] Soft-transition ZXTEST_USE_STREAMABLE_MACROS removal (#121…
Caslyn Jan 7, 2025
49357b2
[AMDGPU][True16][CodeGen] true16 codegen pattern for v_med3_u/i16 (#1…
broxigarchen Jan 7, 2025
e2c1b1f
[OpenACC] enable 'async' and 'wait' for 'update' construct
erichkeane Jan 7, 2025
6c3c90b
[CSSPGO]Add a flag to limit unsymbolized context depth (#121531)
wlei-llvm Jan 7, 2025
a15fedc
[lldb] Correct address calculation for reading segment data (#120655)
GeorgeHuyubo Jan 7, 2025
ac604b2
[libc] Switch to using the generic `<gpuintrin.h>` implementations (#…
jhuber6 Jan 7, 2025
666eee0
[OpenACC] enable 'device_type' for the 'update' construct
erichkeane Jan 7, 2025
6869425
AMDGPU: Use getSignedTargetConstant for ImmOffset in SelectScratchSVA…
changpeng Jan 7, 2025
ce33a48
[libc] Keep headers compatible with -std=c89 mode (#121981)
frobtech Jan 7, 2025
cda43e1
[libcxx] Fix build for glibc < 2.27 (#121893)
kongy Jan 7, 2025
ea14bdb
[LV] Add test showing debug output for loops with uncountable BTCs.
fhahn Jan 7, 2025
29b5c18
[NVPTX] Do not run the NVVMReflect pass as part of the normal pipelin…
jhuber6 Jan 7, 2025
2ab447a
Fix dangling IPOAmendableCB function_ref. (#120698)
hokein Jan 7, 2025
e7a83fc
[NVPTX] Fix a warning
kazutakahirata Jan 7, 2025
56936ec
Fixing FindUnusedPort method tcp_socket object creation with proper c…
SiamAbdullah Jan 7, 2025
75325c6
[Darwin][CompilerRT] Set compiler ID to 'Clang' for Compiler RT Tests…
thetruestblue Jan 7, 2025
3b19e78
[libc] Keep framepointers for baremetal (#121836)
Prabhuk Jan 7, 2025
0eaa69e
[VPlan] Handle VPExpandSCEVRecipe in isUniformAfterVectorization.
fhahn Jan 7, 2025
858f025
[ci] Bump the version of clang-format used in the CI (#119915)
ldionne Jan 7, 2025
71e9a48
[libc++] Mark vector<bool>::at() as constexpr to conform to C++20 sta…
winner245 Jan 7, 2025
8418955
[libcxx] Use alias for detecting overriden function (#120805)
petrhosek Jan 7, 2025
9612175
[libc++][NFC] Remove stray backtick in documentation
ldionne Jan 7, 2025
1855333
[libc++] Fix documentation for setting hardening ABI macros (#121946)
ldionne Jan 7, 2025
287a17d
[bazel] Add missing dependency for 0d9cf2671e06c9124a0b5fc753330c39c8…
d0k Jan 7, 2025
0bfee00
[bazel] Port afa8aeeeec9a897a35ba5c8afc024d9b10504db1
d0k Jan 7, 2025
2015c0a
[AArch64] Remove unused AltName field from PHint GenericTable. NFC
topperc Jan 7, 2025
c6f67b8
[mlir][affine] Add ValueBoundsOpInterface to [de]linearize_index (#12…
krzysz00 Jan 7, 2025
36e4176
[RISCV][VLOPT] Add strided, unit strided, and indexed loads to isSupp…
michaelmaitland Jan 7, 2025
b225513
[RISCV] Add missing SiFive P400 scheduling model test for divisions. NFC
mshockwave Jan 7, 2025
142787d
[RISCV][VLOPT] Add support for checkUsers when UserMI is a Single-Wid…
michaelmaitland Jan 7, 2025
90d79ca
[RISCV] Update the latencies of MUL and CPOP in SiFive P400 schedulin…
mshockwave Jan 7, 2025
2359635
workflows/commit-access-review: Exclude users who have recently reque…
tstellar Jan 7, 2025
4c43648
[RISCV][VLOpt] Kill all uses of and remove twoTimesVLMUL [NFC] (#122003)
preames Jan 7, 2025
6ad0dcf
[libc] Revamp hdrgen command line and build integration (#121522)
frobtech Jan 7, 2025
94c0db0
[update_cc_test_checks] Add test for missing handling of mangled names
arichardson Jan 8, 2025
ca3fd63
[libc] clean up the hdrgen docs a bit (#121974)
michaelrj-google Jan 8, 2025
45d4698
[NVPTX] designate fabs and fneg as free (#121513)
AlexMaclean Jan 8, 2025
b8ad6fb
[MemProf] Allow cloning of callsites in recursive cycles (#121985)
teresajohnson Jan 8, 2025
c438758
[NFC][SandboxVectorizer] Disable default copy CTOR/assigment for Sche…
offsake Jan 8, 2025
9184c42
[LoadStoreVectorizer] Postprocess and merge equivalence classes (#121…
v-klochkov Jan 8, 2025
30ba8be
[clangd] Add a unit test suite for HeuristicResolver (#121313)
HighCommander4 Jan 8, 2025
db408ac
[Modules] Fix modular build. (#122034)
vsapsai Jan 8, 2025
4583f6d
[NVPTX] Switch front-ends and tests to ptx_kernel cc (#120806)
AlexMaclean Jan 8, 2025
dde5546
[RISCV] GISel custom lowering for G_ADD/G_SUB (#121587)
lquinn2015 Jan 8, 2025
bfb0a51
[llvm-jitlink] Use -num-threads=0 for regression tests relying on deb…
lhames Jan 8, 2025
b253a80
[RISCV][VLOPT] Add mask load to isSupported and getOperandInfo (#122030)
michaelmaitland Jan 8, 2025
2a16328
[tysan] Convert TySan from function+module pass to just module pass (…
Enna1 Jan 8, 2025
9020d19
[RISCV][GISel] Re-generate combine-neg-abs.ll to fix build bot failur…
topperc Jan 8, 2025
b4ae419
[clang] [NFC] explicitly check if ParentMap contains key (#121736)
ssahasra Jan 8, 2025
162814a
[lld-macho] Include branch extension thunks in linker map (#120496)
alx32 Jan 8, 2025
d6bfe10
[Darwin][Driver][clang] apple-none-macho orders the resource director…
ian-twilightcoder Jan 8, 2025
61b806f
[clang] assign the correct parent in update to ParentMap
ssahasra Jan 8, 2025
f0d5104
[VPlan] Handle some VPInstructions in may{Read,Write}FromMemory (#120…
lukel97 Jan 8, 2025
f50f969
[MLIR][GPU] Fix gpu.printf (#121940)
grypp Jan 8, 2025
de67ca1
Fix extra parenthesis in diagnostic (#122055)
hubert-reinterpretcast Jan 8, 2025
457f302
[AMDGPU] Disallow null for more resource operands (#121941)
jayfoad Jan 8, 2025
a8dab1a
[AArch64] Add a subvector extract cost. (#121472)
davemgreen Jan 8, 2025
49668d5
[Polly] Switch DT/LI in RegionGenerator for parallel subfn (#120413)
kartcq Jan 8, 2025
e7244d8
[BOLT][CMake] Don't export bolt libraries in LLVMExports.cmake (#121936)
nikic Jan 8, 2025
7ec93e3
[AutoBump] Merge with fixes of d622b66a (Jan 02)
jorickert Mar 18, 2025
0676d76
[AutoBump] Merge with e7244d86 (Jan 08)
jorickert Mar 18, 2025
0873b17
Merge pull request #499 from Xilinx/bump_to_e7244d86
jorickert Apr 14, 2025
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
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .github/new-prs-labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -661,6 +661,11 @@ backend:DirectX:

backend:SPIR-V:
- clang/lib/Driver/ToolChains/SPIRV.*
- clang/lib/Sema/SemaSPIRV.cpp
- clang/include/clang/Sema/SemaSPIRV.h
- clang/include/clang/Basic/BuiltinsSPIRV.td
- clang/test/CodeGenSPIRV/**
- clang/test/SemaSPIRV/**
- llvm/lib/Target/SPIRV/**
- llvm/test/CodeGen/SPIRV/**
- llvm/test/Frontend/HLSL/**
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/build-ci-container.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,9 @@ jobs:

- name: Test Container
run: |
for image in ${{ steps.vars.outputs.container-name-tag }} ${{ steps.vars.outputs.container-name }}; do
podman run --rm -it $image /usr/bin/bash -x -c 'cd $HOME && printf '\''#include <iostream>\nint main(int argc, char **argv) { std::cout << "Hello\\n"; }'\'' | clang++ -x c++ - && ./a.out | grep Hello'
for image in ${{ steps.vars.outputs.container-name-tag }}; do
# Use --pull=never to ensure we are testing the just built image.
podman run --pull=never --rm -it $image /usr/bin/bash -x -c 'cd $HOME && printf '\''#include <iostream>\nint main(int argc, char **argv) { std::cout << "Hello\\n"; }'\'' | clang++ -x c++ - && ./a.out | grep Hello'
done

push-ci-container:
Expand Down
44 changes: 26 additions & 18 deletions .github/workflows/commit-access-review.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,39 +67,47 @@ def check_manual_requests(
) -> list[str]:
"""
Return a list of users who have been asked since ``start_date`` if they
want to keep their commit access.
want to keep their commit access or if they have applied for commit
access since ``start_date``
"""

query = """
query ($query: String!) {
search(query: $query, type: ISSUE, first: 100) {
query ($query: String!, $after: String) {
search(query: $query, type: ISSUE, first: 100, after: $after) {
nodes {
... on Issue {
body
comments (first: 100) {
nodes {
author {
login
}
}
author {
login
}
body
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
"""
formatted_start_date = start_date.strftime("%Y-%m-%dT%H:%M:%S")
variables = {
"query": f"type:issue created:>{formatted_start_date} org:llvm repo:llvm-project label:infra:commit-access"
"query": f"type:issue created:>{formatted_start_date} org:llvm repo:llvm-project label:infra:commit-access,infra:commit-access-request"
}

res_header, res_data = gh._Github__requester.graphql_query(
query=query, variables=variables
)
data = res_data["data"]
has_next_page = True
users = []
for issue in data["search"]["nodes"]:
users.extend([user[1:] for user in re.findall("@[^ ,\n]+", issue["body"])])

while has_next_page:
res_header, res_data = gh._Github__requester.graphql_query(
query=query, variables=variables
)
data = res_data["data"]
for issue in data["search"]["nodes"]:
users.extend([user[1:] for user in re.findall("@[^ ,\n]+", issue["body"])])
if issue["author"]:
users.append(issue["author"]["login"])
has_next_page = data["search"]["pageInfo"]["hasNextPage"]
if has_next_page:
variables["after"] = data["search"]["pageInfo"]["endCursor"]
return users


Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/new-issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
steps:
- uses: llvm/actions/issue-labeler@main
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
repo-token: ${{ secrets.ISSUE_SUBSCRIBER_TOKEN }}
configuration-path: .github/new-issues-labeler.yml
include-title: 1
include-body: 0
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-code-format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ jobs:
- name: Install clang-format
uses: aminya/setup-cpp@v1
with:
clangformat: 18.1.7
clangformat: 19.1.6

- name: Setup Python env
uses: actions/setup-python@v5
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/release-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ jobs:
USER_TOKEN: ${{ secrets.RELEASE_TASKS_USER_TOKEN }}
shell: bash
run: |
./llvm/utils/release/./github-upload-release.py --token "$GITHUB_TOKEN" --user ${{ github.actor }} --user-token "$USER_TOKEN" check-permissions
./llvm/utils/release/./github-upload-release.py --token "$GITHUB_TOKEN" --user "$GITHUB_ACTOR" --user-token "$USER_TOKEN" check-permissions

- name: Collect Variables
id: vars
Expand All @@ -102,8 +102,8 @@ jobs:
release_version="$trimmed"
ref="llvmorg-$release_version"
else
release_version="${{ (github.event_name == 'pull_request' && format('PR{0}', github.event.pull_request.number)) || 'CI'}}-${{ github.sha }}"
ref=${{ github.sha }}
release_version="${{ (github.event_name == 'pull_request' && format('PR{0}', github.event.pull_request.number)) || 'CI'}}-$GITHUB_SHA"
ref="$GITHUB_SHA"
fi
if [ -n "${{ inputs.upload }}" ]; then
upload="${{ inputs.upload }}"
Expand All @@ -114,20 +114,20 @@ jobs:
echo "ref=$ref" >> $GITHUB_OUTPUT
echo "upload=$upload" >> $GITHUB_OUTPUT

release_binary_basename="LLVM-$release_version-${{ runner.os }}-${{ runner.arch }}"
release_binary_basename="LLVM-$release_version-$RUNNER_OS-$RUNNER_ARCH"
echo "release-binary-basename=$release_binary_basename" >> $GITHUB_OUTPUT
echo "release-binary-filename=$release_binary_basename.tar.xz" >> $GITHUB_OUTPUT

# Detect necessary CMake flags
target="${{ runner.os }}-${{ runner.arch }}"
target="$RUNNER_OS-$RUNNER_ARCH"
echo "enable-pgo=false" >> $GITHUB_OUTPUT
target_cmake_flags="-DLLVM_RELEASE_ENABLE_PGO=OFF"
# The macOS builds try to cross compile some libraries so we need to
# add extra CMake args to disable them.
# See https://github.com/llvm/llvm-project/issues/99767
if [ "${{ runner.os }}" = "macOS" ]; then
if [ "$RUNNER_OS" = "macOS" ]; then
target_cmake_flags="$target_cmake_flags -DBOOTSTRAP_COMPILER_RT_ENABLE_IOS=OFF"
if [ "${{ runner.arch }}" = "ARM64" ]; then
if [ "$RUNNER_ARCH" = "ARM64" ]; then
arches=arm64
else
arches=x86_64
Expand All @@ -137,7 +137,7 @@ jobs:

build_flang="true"

if [ "${{ runner.os }}" = "Windows" ]; then
if [ "$RUNNER_OS" = "Windows" ]; then
# The build times out on Windows, so we need to disable LTO.
target_cmake_flags="$target_cmake_flags -DLLVM_RELEASE_ENABLE_LTO=OFF"
fi
Expand Down
23 changes: 15 additions & 8 deletions bolt/lib/Core/BinaryEmitter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,13 +46,13 @@ BreakFunctionNames("break-funcs",
cl::Hidden,
cl::cat(BoltCategory));

cl::list<std::string>
static cl::list<std::string>
FunctionPadSpec("pad-funcs", cl::CommaSeparated,
cl::desc("list of functions to pad with amount of bytes"),
cl::value_desc("func1:pad1,func2:pad2,func3:pad3,..."),
cl::Hidden, cl::cat(BoltCategory));

cl::list<std::string> FunctionPadBeforeSpec(
static cl::list<std::string> FunctionPadBeforeSpec(
"pad-funcs-before", cl::CommaSeparated,
cl::desc("list of functions to pad with amount of bytes"),
cl::value_desc("func1:pad1,func2:pad2,func3:pad3,..."), cl::Hidden,
Expand All @@ -74,10 +74,9 @@ X86AlignBranchBoundaryHotOnly("x86-align-branch-boundary-hot-only",
cl::init(true),
cl::cat(BoltOptCategory));

size_t padFunction(const cl::list<std::string> &Spec,
size_t padFunction(std::map<std::string, size_t> &FunctionPadding,
const cl::list<std::string> &Spec,
const BinaryFunction &Function) {
static std::map<std::string, size_t> FunctionPadding;

if (FunctionPadding.empty() && !Spec.empty()) {
for (const std::string &Spec : Spec) {
size_t N = Spec.find(':');
Expand All @@ -99,6 +98,15 @@ size_t padFunction(const cl::list<std::string> &Spec,
return 0;
}

size_t padFunctionBefore(const BinaryFunction &Function) {
static std::map<std::string, size_t> CacheFunctionPadding;
return padFunction(CacheFunctionPadding, FunctionPadBeforeSpec, Function);
}
size_t padFunctionAfter(const BinaryFunction &Function) {
static std::map<std::string, size_t> CacheFunctionPadding;
return padFunction(CacheFunctionPadding, FunctionPadSpec, Function);
}

} // namespace opts

namespace {
Expand Down Expand Up @@ -324,8 +332,7 @@ bool BinaryEmitter::emitFunction(BinaryFunction &Function,
Streamer.emitCodeAlignment(Function.getAlign(), &*BC.STI);
}

if (size_t Padding =
opts::padFunction(opts::FunctionPadBeforeSpec, Function)) {
if (size_t Padding = opts::padFunctionBefore(Function)) {
// Handle padFuncsBefore after the above alignment logic but before
// symbol addresses are decided.
if (!BC.HasRelocations) {
Expand Down Expand Up @@ -404,7 +411,7 @@ bool BinaryEmitter::emitFunction(BinaryFunction &Function,
emitFunctionBody(Function, FF, /*EmitCodeOnly=*/false);

// Emit padding if requested.
if (size_t Padding = opts::padFunction(opts::FunctionPadSpec, Function)) {
if (size_t Padding = opts::padFunctionAfter(Function)) {
LLVM_DEBUG(dbgs() << "BOLT-DEBUG: padding function " << Function << " with "
<< Padding << " bytes\n");
Streamer.emitFill(Padding, MAI->getTextAlignFillValue());
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ add_llvm_library(LLVMBOLTCore
ParallelUtilities.cpp
Relocation.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB
LINK_LIBS
${LLVM_PTHREAD_LIB}
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Passes/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ add_llvm_library(LLVMBOLTPasses
VeneerElimination.cpp
RetpolineInsertion.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

LINK_LIBS
Expand Down
15 changes: 6 additions & 9 deletions bolt/lib/Passes/ReorderFunctions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,8 @@ extern cl::OptionCategory BoltOptCategory;
extern cl::opt<unsigned> Verbosity;
extern cl::opt<uint32_t> RandomSeed;

extern size_t padFunction(const cl::list<std::string> &Spec,
const bolt::BinaryFunction &Function);
extern cl::list<std::string> FunctionPadSpec, FunctionPadBeforeSpec;
extern size_t padFunctionBefore(const bolt::BinaryFunction &Function);
extern size_t padFunctionAfter(const bolt::BinaryFunction &Function);

extern cl::opt<bolt::ReorderFunctions::ReorderType> ReorderFunctions;
cl::opt<bolt::ReorderFunctions::ReorderType> ReorderFunctions(
Expand Down Expand Up @@ -306,12 +305,10 @@ Error ReorderFunctions::runOnFunctions(BinaryContext &BC) {
return false;
if (B->isIgnored())
return true;
const size_t PadA =
opts::padFunction(opts::FunctionPadSpec, *A) +
opts::padFunction(opts::FunctionPadBeforeSpec, *A);
const size_t PadB =
opts::padFunction(opts::FunctionPadSpec, *B) +
opts::padFunction(opts::FunctionPadBeforeSpec, *B);
const size_t PadA = opts::padFunctionBefore(*A) +
opts::padFunctionAfter(*A);
const size_t PadB = opts::padFunctionBefore(*B) +
opts::padFunctionAfter(*B);
if (!PadA || !PadB) {
if (PadA)
return true;
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Profile/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ add_llvm_library(LLVMBOLTProfile
YAMLProfileReader.cpp
YAMLProfileWriter.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

LINK_COMPONENTS
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Rewrite/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ add_llvm_library(LLVMBOLTRewrite
RewriteInstance.cpp
SDTRewriter.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

LINK_LIBS
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/RuntimeLibs/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ add_llvm_library(LLVMBOLTRuntimeLibs
HugifyRuntimeLibrary.cpp
InstrumentationRuntimeLibrary.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB
)

Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Target/AArch64/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ endif()
add_llvm_library(LLVMBOLTTargetAArch64
AArch64MCPlusBuilder.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

DEPENDS
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Target/RISCV/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ endif()
add_llvm_library(LLVMBOLTTargetRISCV
RISCVMCPlusBuilder.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

DEPENDS
Expand Down
1 change: 1 addition & 0 deletions bolt/lib/Target/X86/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ add_llvm_library(LLVMBOLTTargetX86
X86MCPlusBuilder.cpp
X86MCSymbolizer.cpp

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

DEPENDS
Expand Down
2 changes: 2 additions & 0 deletions bolt/lib/Utils/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ add_llvm_library(LLVMBOLTUtils
CommandLineOpts.cpp
Utils.cpp
${version_inc}

NO_EXPORT
DISABLE_LLVM_LINK_LLVM_DYLIB

LINK_LIBS
Expand Down
21 changes: 20 additions & 1 deletion bolt/test/AArch64/pad-before-funcs.s
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,18 @@
# It should be able to introduce a configurable offset for the _start symbol.
# It should reject requests which don't obey the code alignment requirement.

# Tests check inserting padding before _start; and additionally a test where
# padding is inserted after start. In each case, check that the following
# symbol ends up in the expected place as well.


# RUN: llvm-mc -filetype=obj -triple aarch64-unknown-unknown %s -o %t.o
# RUN: %clang %cflags %t.o -o %t.exe -Wl,-q -Wl,--section-start=.text=0x4000
# RUN: llvm-bolt %t.exe -o %t.bolt.0 --pad-funcs-before=_start:0
# RUN: llvm-bolt %t.exe -o %t.bolt.4 --pad-funcs-before=_start:4
# RUN: llvm-bolt %t.exe -o %t.bolt.8 --pad-funcs-before=_start:8
# RUN: llvm-bolt %t.exe -o %t.bolt.4.4 --pad-funcs-before=_start:4 --pad-funcs=_start:4
# RUN: llvm-bolt %t.exe -o %t.bolt.4.8 --pad-funcs-before=_start:4 --pad-funcs=_start:8

# RUN: not llvm-bolt %t.exe -o %t.bolt.8 --pad-funcs-before=_start:1 2>&1 | FileCheck --check-prefix=CHECK-BAD-ALIGN %s

Expand All @@ -15,15 +22,27 @@
# RUN: llvm-objdump --section=.text --disassemble %t.bolt.0 | FileCheck --check-prefix=CHECK-0 %s
# RUN: llvm-objdump --section=.text --disassemble %t.bolt.4 | FileCheck --check-prefix=CHECK-4 %s
# RUN: llvm-objdump --section=.text --disassemble %t.bolt.8 | FileCheck --check-prefix=CHECK-8 %s
# RUN: llvm-objdump --section=.text --disassemble %t.bolt.4.4 | FileCheck --check-prefix=CHECK-4-4 %s
# RUN: llvm-objdump --section=.text --disassemble %t.bolt.4.8 | FileCheck --check-prefix=CHECK-4-8 %s

# Trigger relocation mode in bolt.
.reloc 0, R_AARCH64_NONE

.section .text
.globl _start

# CHECK-0: 0000000000400000 <_start>
# CHECK-4: 0000000000400004 <_start>
# CHECK-4-4: 0000000000400004 <_start>
# CHECK-8: 0000000000400008 <_start>
.globl _start
_start:
ret

# CHECK-0: 0000000000400004 <_subsequent>
# CHECK-4: 0000000000400008 <_subsequent>
# CHECK-4-4: 000000000040000c <_subsequent>
# CHECK-4-8: 0000000000400010 <_subsequent>
# CHECK-8: 000000000040000c <_subsequent>
.globl _subsequent
_subsequent:
ret
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,11 @@ void UnhandledSelfAssignmentCheck::registerMatchers(MatchFinder *Finder) {
// Matcher for standard smart pointers.
const auto SmartPointerType = qualType(hasUnqualifiedDesugaredType(
recordType(hasDeclaration(classTemplateSpecializationDecl(
hasAnyName("::std::shared_ptr", "::std::unique_ptr",
"::std::weak_ptr", "::std::auto_ptr"),
templateArgumentCountIs(1))))));
anyOf(allOf(hasAnyName("::std::shared_ptr", "::std::weak_ptr",
"::std::auto_ptr"),
templateArgumentCountIs(1)),
allOf(hasName("::std::unique_ptr"),
templateArgumentCountIs(2))))))));

// We will warn only if the class has a pointer or a C array field which
// probably causes a problem during self-assignment (e.g. first resetting
Expand Down
Loading