Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1696 commits
Select commit Hold shift + click to select a range
92f1635
[clang-tidy] Rename google-build-namespaces to misc-anonymous-namespa…
ThanSin02426 Jan 1, 2026
33ddbfd
InstCombine: Fix another wrong interested mask computeKnownFPClass ca…
arsenm Jan 1, 2026
5ee82df
[VPlan] Handle addrspacecast/ptrtoaddr in VPlan-based cost model.
fhahn Jan 1, 2026
0b24580
[mlir][Interfaces][NFC] Add `RegionBranchOpInterface` helper for forw…
matthias-springer Jan 1, 2026
07adecf
[libc++] Resolve LWG4370 (#174062)
smallp-o-p Jan 1, 2026
765b64b
[bazel] Port 92f16356340d230f04e67d9d7b8f3d91b9f0513b
d0k Jan 1, 2026
6561f39
InstCombine: Fix defining undef constant vector elts in SimplifyDeman…
arsenm Jan 1, 2026
c94ddea
InstCombine: Basic insertelement support for SimplifyDemandedFPClass …
arsenm Jan 1, 2026
831bb12
[SLP] Support for copyables in the reduced values (#153589)
alexey-bataev Jan 1, 2026
1febc3f
Revert "[SLP] Support for copyables in the reduced values (#153589)"
alexey-bataev Jan 1, 2026
025d74d
[NVPTX] Add proper precondition in tensormap_replace_sm_103a test (#1…
googlewalt Jan 1, 2026
410ec6d
[flang] Disable new -Wused-undefined-variable warning by default (#17…
klausler Jan 1, 2026
72022ab
InstCombine: Rudimentary support of shufflevector in SimplifyDemanded…
arsenm Jan 1, 2026
dca074a
[CIR] Match codegen change on __builtin_clrsb expansion
darkbuck Jan 1, 2026
182d9a3
[Clang] Use valid source loc for empty target_clones diagnostic (#173…
keinflue Jan 1, 2026
2b432dc
[flang] Fix two bugs with new warnings (#174153)
klausler Jan 1, 2026
cd470dd
[LV] Add test selecting negated IVs (NFC).
fhahn Jan 1, 2026
d1b88ca
[CMake] Re-add -fno-rtti to llvm-config --cxxflags (#174084)
aengelke Jan 1, 2026
a0be472
[SLP] Support for copyables in the reduced values (#153589)
alexey-bataev Jan 1, 2026
c163e7a
[InstCombine] Explicitly mark select weights from e4722c6 as unknown …
boomanaiden154 Jan 1, 2026
62709a1
[mlir][gpu] Fold `subgroup_broadcast(subgroup_broadcast(%val))` chain…
Hardcode84 Jan 1, 2026
d3960db
[X86] combineSelect - pull out repeated getOperand() calls. NFC. (#17…
RKSimon Jan 1, 2026
be7edec
[RISCV][GISel] Support select vsetvli intrinsics (#174076)
jacquesguan Jan 2, 2026
998e8f4
[MLIR][CAPI] Fix duplicate output from mlirOperationPrintWithState (#…
friedrich Jan 2, 2026
654b3e8
[mlir][c] Enable creating and setting greedy rewrite confing. (#162429)
jpienaar Jan 2, 2026
dbc4025
[AMDGPU][NewPM] Format llc-pipeline-npm.ll better (#174161)
boomanaiden154 Jan 2, 2026
6055f87
[X86][NewPM] Port x86-cf-opt to the New Pass Manager (#174168)
boomanaiden154 Jan 2, 2026
ab56c9b
[clang][bytecode] Check isActive() in EvalEmitter::speculate() (#174183)
tbaederr Jan 2, 2026
ed6698e
[clang][bytecode] Check builtin_memcpy() for non-block pointers (#174…
tbaederr Jan 2, 2026
3c84421
[AArch64][GlobalISel] Add disjoint to the G_OR when lowering G_ROTR/L…
davemgreen Jan 2, 2026
0394ad1
[mlir][dataflow] Add new visitNonControlFlowArgumentst API to SparseB…
linuxlonelyeagle Jan 2, 2026
db9549c
[clang][bytecode] Check builtin_memchr() for one-past-end pointers (#…
tbaederr Jan 2, 2026
14c98bc
[CHR] Fix crash when marking merged condition unknown (#173902)
peterwaller-arm Jan 2, 2026
2b903df
[CMake] Fix variable name mistake
aengelke Jan 2, 2026
508e3cb
[clang][bytecode] Check for null Record (#174193)
tbaederr Jan 2, 2026
da5845d
[clang][bytecode] Check builtin_memchr for non-block pointers earlier…
tbaederr Jan 2, 2026
af80688
[NVPTX] Add missing preconditions to tensormap replace tests (#174190)
Wolfram70 Jan 2, 2026
420da86
[clang][bytecode] Disable test on 32 bit systems
tbaederr Jan 2, 2026
c646d1b
[MLIR][OpenMP] Fix type mismatch in linear clause for INTEGER(8) vari…
KrxGu Jan 2, 2026
cf9b3bb
[mlir][IR][NFC] Add `RewriterBase::eraseOpResults` convenience helper…
matthias-springer Jan 2, 2026
6d01058
[AArch64] Combine (not (shift X, C)) into MVN (#174180)
pfusik Jan 2, 2026
fc9e6e1
[flang] Represent use statement in fir. (#168106)
abidh Jan 2, 2026
adea4d5
[CodeGen] Add assertion to MachineBasicBlock::addLiveIn and friends (…
jayfoad Jan 2, 2026
5668631
[ADT] Allow `TypeSwitch::Default` for `FailureOr<T>` (#174119)
kuhar Jan 2, 2026
2b25e92
[PAC][libunwind] Pass ptrauth-qualified values as const references (#…
kovdan01 Jan 2, 2026
3b85a63
[VectorCombine] scalarizeExtExtract - create bitmasks with APInt::get…
RKSimon Jan 2, 2026
33442ee
[AArch64][GlobalISel] Add extra csel test coverage. NFC
davemgreen Jan 2, 2026
7de3fb5
[mlir][Transforms][NFC] `remove-dead-values`: Erase ops at the end (#…
matthias-springer Jan 2, 2026
6271978
[TableGen] Remove unused parameter Parser from WriteOutput. NFC. (#17…
jayfoad Jan 2, 2026
8cf9691
[mlir][SPIRV] Move getDecorationString to common utilities. (#174145)
nkreeger Jan 2, 2026
8d75f97
[SLP]Consider split node as potential reduction root
alexey-bataev Jan 2, 2026
a2cd2dc
[lldb-dap][NFC] change the dap log file extension (#173994)
da-viper Jan 2, 2026
351f933
[LV] Add FindFirstIV test with IV truncated to i1 (NFC).
fhahn Jan 2, 2026
8913900
[NFC][AMDGPU] Add comments for literal arguments of WMMA profiles (#1…
shiltian Jan 2, 2026
ea9cbd8
[gn] port 29f35ec01e8f53f4e (Hexagon SDNodeInfo)
nico Jan 2, 2026
c370591
[bazel] Fix Bazel build for 8cf9691 (#174213)
itf Jan 2, 2026
4015545
[gn] port 05a34dde7008f4139 (X86 Pre Legalizer Combiner)
nico Jan 2, 2026
75d4812
[AArch64] Turn MaxInterleaveFactor into a subtarget feature (#171088)
davemgreen Jan 2, 2026
7976ac9
[clang][bytecode] Check if block is initialized before invoking destr…
nataliakokoromyti Jan 2, 2026
c777c60
[asan][NFC] Fix formatting of asan_interceptors.cpp (#173088)
jakeegan Jan 2, 2026
d918c2b
Merge from 'main' to 'sycl-web' (409 commits)
Jan 2, 2026
bb98de9
[TableGen] Fix TypeSetByHwMode::getValueTypeByHwMode. (#174182)
topperc Jan 2, 2026
af79967
[flang][cuda] Emit error when a device actual argument is used in hos…
clementval Jan 2, 2026
45d2b1d
Merge from 'sycl' to 'sycl-web' (14 commits)
offsake Jan 2, 2026
3c9d46a
[InstCombine] Support DemandElts in SimplifyDemandedFPClass (#174176)
sweiglbosker Jan 2, 2026
1746af5
[clang-doc] Add concepts to namespace template (#173956)
evelez7 Jan 2, 2026
e2ee738
Retire StrInStrNoCase. NFC.
d0k Jan 2, 2026
b4d8331
[VPlan] Handle non-free bitcasts in getCostForRecipeWithOpcode.
fhahn Jan 2, 2026
aa34f24
[lldb][ClangExpressionDeclMap][NFC] Remove redundant std::string cast
Michael137 Jan 2, 2026
2d45a91
[clang][bytecode] Fix void*-to-ptr casts originating from new/new[] (…
keinflue Jan 2, 2026
c8119c2
[gn] port b66557d8f852 and 24fb00dd2f439 (DTLTO)
nico Jan 2, 2026
20ef8b0
[AMDGPU] Add `nocreateundeforpoison` annotations (#166450)
krzysz00 Jan 2, 2026
003b28d
[mlir] Move affine's FoldMemRefAliasOps into its own pass (#172548)
krzysz00 Jan 2, 2026
5a9f34f
[clang-doc] Add typedefs and aliases to templates (#173957)
evelez7 Jan 2, 2026
77149b3
[gn] port 5a9f34f16b90c29
nico Jan 2, 2026
b45c20d
[IRBuilder] Introduce CreateSelectFMFWithUnknownProfile (#174162)
boomanaiden154 Jan 2, 2026
725abb3
[Bazel] Fix buildifier failures
boomanaiden154 Jan 2, 2026
501aa37
[SelectionDAG] Fix return type of JUMP_TABLE_DEBUG_INFO node (#174228)
s-barannikov Jan 2, 2026
1140957
[X86] Add basic test coverage for #174169 (#174226)
RKSimon Jan 2, 2026
c77f0c1
[bazel] Fix Bazel build for 003b28d (#174232)
itf Jan 2, 2026
e4af5b1
[mlir][python] fix symbol resolution on MacOS with multiple packages …
makslevental Jan 2, 2026
83ae144
[clang-doc] Add class member enums to template (#173958)
evelez7 Jan 2, 2026
7eed4d2
[TableGen] Use TreePatternNode::getSimpleType instead of getType. NFC…
topperc Jan 2, 2026
4534edb
[SelectionDAG] Fix operand of BRCOND in visitSPDescriptorParent (#174…
s-barannikov Jan 2, 2026
81b4664
[-Wunsafe-buffer-usage] Add check for custom printf/scanf functions (…
ziqingluo-90 Jan 2, 2026
5f0ec87
[gn build] Port 7c0420dc8484
llvmgnsyncbot Jan 2, 2026
16d6ecc
[gn build] Port 92f16356340d
llvmgnsyncbot Jan 2, 2026
c5fd49f
[clang-doc] Add nested records to class template (#173959)
evelez7 Jan 2, 2026
8593437
[VPlan] Simplify ~VPDef (NFCI).
fhahn Jan 2, 2026
7b73ba5
[clang-doc] Add friends to class template (#173960)
evelez7 Jan 2, 2026
a052b57
[TableGen] Remove TypeInfer::isConcrete/getConcrete. NFC (#174235)
topperc Jan 2, 2026
8ac911b
[SLP][NFC]Add a test with the leading non-instruction in sores, which…
alexey-bataev Jan 2, 2026
050c447
Revert "[InstCombine] Support DemandElts in SimplifyDemandedFPClass" …
Kewen12 Jan 2, 2026
3572e62
[SLPVectorizer] Widen rt stride loads (#162336)
mgudim Jan 2, 2026
5ec3191
[asan] Adjust interception compatibility for AIX (#131870)
jakeegan Jan 2, 2026
7178bc6
[acc] add RegionBranchTerminatorOpInterface to acc.terminator (#174165)
SusanTan Jan 3, 2026
e9b2b21
[-Wunsafe-buffer-usage] Fix a false negative introduced in #173096 (#…
ziqingluo-90 Jan 3, 2026
ec7b637
[libc++][chrono] P2592R3: Hashing for chrono (#165132)
rsaddatimov Jan 3, 2026
376bedd
[libc++] Fix constraints for `optional`'s constructors taking `in_pla…
frederick-vs-ja Jan 3, 2026
c438773
[LLVM][ADT] Migrate users of `make_scope_exit` to CTAD (#174030)
localspook Jan 3, 2026
4ff264d
[LLVM][ADT] Deprecate `make_scope_exit` in favour of CTAD (#174109)
localspook Jan 3, 2026
573c0be
[clang][Tooling] Insert global module fragment during header insertio…
Lancern Jan 3, 2026
48a9868
[lldb] Avoid unnecessary vector copy for StringList::AppendList (#173…
sfu2 Jan 3, 2026
c3b1a1e
[X86][AMX] Move Stride close to its use (#174095)
phoebewang Jan 3, 2026
e1d7735
[X86] combinePTESTCC - always prefer TESTPS/D to PTEST on AVX (#174097)
RKSimon Jan 3, 2026
3d3093e
ValueTracking: Add more baseline tests for computeKnownPPClass of fad…
arsenm Jan 3, 2026
0aa519b
Verifier: Fix duplicated test with asserts and !asserts (#174271)
arsenm Jan 3, 2026
f727163
AMDGPU: Remove some unnecessary callsite attributes from tests (#174270)
arsenm Jan 3, 2026
5cbc6a6
ValueTracking: Improve handling of fadd in computeKnownFPClass. (#174…
arsenm Jan 3, 2026
00fdb29
ValueTracking: Avoid unnecessary denormal mode lookup for fadd (#174272)
arsenm Jan 3, 2026
e4414a4
[LV][doc] Update and extend the docs on floating-point reduction vect…
TiborGY Jan 3, 2026
56905be
InstCombine: Positive normal exp results imply possible negative norm…
arsenm Jan 3, 2026
465d11e
[libc++] LWG3627: Inconsistent specifications for `std::make_optional…
frederick-vs-ja Jan 3, 2026
9b8addf
[CloneFunction] Fix non-deterministic PHI cleanup using PHINode::remo…
Enna1 Jan 3, 2026
8663c30
[X86] Cleanup uses of "(BW-1) - LOG2(C)" --> "CLZ(C)" instead. NFC. (…
RKSimon Jan 3, 2026
19358ca
[libc++] Make sure `flat_set::key_compare` handle `boolean-testable` …
hewillk Jan 3, 2026
8d879ed
[libc++] Make sure `flat_{multi}map::key_compare` handle `boolean-tes…
hewillk Jan 3, 2026
d953c36
[Instcombine] Fold select of ucmp/scmp (#168505)
kper Jan 3, 2026
75432ce
[LowerAllowCheck] Add llvm.allow.sanitize.* intrinsics (#172029)
melver Jan 3, 2026
7bc05a8
[libc++] Resolve LWG4439 and LWG4300 (#174257)
smallp-o-p Jan 3, 2026
a0c3628
AMDGPU: Remove dead check prefixes from test (#174280)
arsenm Jan 3, 2026
e46b4e3
[clang-tidy] Fix false positive in bugprone-dynamic-static-initialize…
zeyi2 Jan 3, 2026
990883a
[VPlan] Handle Alloca in VPReplicateRecipe::computeCost. (NFCI)
fhahn Jan 3, 2026
6d8dd3d
[MLIR][Python] Register Containers as Sequences for `match` compatibi…
MaPePeR Jan 3, 2026
05349a9
[offload] [test] Mark bug 51781 test as requiring GPU (#174284)
mgorny Jan 3, 2026
f270256
[X86] Avoid assertion failure with implicit immediates for AMX tile d…
thurstond Jan 3, 2026
f985e1a
[SLP]Better copyable vectorization for stores with non-instructions (…
alexey-bataev Jan 3, 2026
108a22e
Revert "ValueTracking: Improve handling of fadd in computeKnownFPClas…
boomanaiden154 Jan 3, 2026
3f5ee8a
[VPlan] Handle VPInstruction::Not in getSCEVExprForVPValue (NFC).
fhahn Jan 3, 2026
d22ba4e
[Verifier] Rename test
boomanaiden154 Jan 3, 2026
715716f
[SimplifyCFG] Use nullptr instead of 0 in a comment. NFC (#174262)
topperc Jan 3, 2026
610aeb6
[X86][NewPM] Port x86-avoid-sfb to the New Pass Manager (#174166)
boomanaiden154 Jan 3, 2026
ce69dd3
[flang][cuda] Fix false positive in host intrinsic with device var (#…
clementval Jan 4, 2026
5ef3456
[RISCV] Support i32 SSHLAT for rv32ip. (#173687)
topperc Jan 4, 2026
fac9472
[IR] Reland Optimize PHINode::removeIncomingValue() and PHINode::remo…
Enna1 Jan 4, 2026
c97de43
Revert "[AMDGPU] add clamp immediate operand to WMMA iu8 intrinsic (#…
shiltian Jan 4, 2026
bac39f8
[RISCV] Add +zbb to scalar P extension tests. NFC
topperc Jan 4, 2026
11d9694
[flang][mlir] Add support for implicit linearization in omp.simd (#15…
NimishMishra Jan 4, 2026
7fa36e6
[LLVM] Make crashing tests with not use --crash
boomanaiden154 Jan 4, 2026
60bf381
[libc++] Applied `[[nodiscard]]` to `<fstream>`, `<sstream>`, `<strst…
H-G-Hristov Jan 4, 2026
2528224
[.gitignore] Ignore .clangd config file (#174287)
vbvictor Jan 4, 2026
22390cd
Revert "[clang][bytecode] Check if block is initialized before invoki…
boomanaiden154 Jan 4, 2026
653ce99
[X86][NewPM] Port x86-compress-evex (#174312)
boomanaiden154 Jan 4, 2026
55367f2
[clang-tidy][NFC] Simplify 'utils::lexer::findNextTokenSkippingCommen…
vbvictor Jan 4, 2026
a6d2f24
[Orc][LibResolver] Refactor resolver internals and simplify symbol re…
SahilPatidar Jan 4, 2026
b6d6e91
[X86][NewPM] Port x86-cmov-conversion to NewPM (#174311)
boomanaiden154 Jan 4, 2026
1f14ed9
[Clang] Honor '#pragma STDC FENV_ROUND' in __builtin_store_half/halff…
wenju-he Jan 4, 2026
77be03d
[X86][NewPM] Port x86-domain-reassignment (#174321)
boomanaiden154 Jan 4, 2026
a9fee31
[SDAG] Avoid crash when creating debug fragments for scalable vectors…
MacDue Jan 4, 2026
7ada892
[X86] LowerShift - if a vXi8 shift amount is small enough skip additi…
RKSimon Jan 4, 2026
2eeb3e1
[NFC][CIR] Fix unused variable warning (#174246)
Thibault-Monnier Jan 4, 2026
2eb8ee1
[NFC] Delete unnecessary apostrophe at the end of its (#173974)
willmafh Jan 4, 2026
4d66ccc
[MergeFunc] Do not merge kernel functions (#174254)
Flakebi Jan 4, 2026
188507e
[VPlan] Inline createFindLastIVReduction into its only caller. (NFC)
fhahn Jan 4, 2026
c03b6f3
Partially reapply "ValueTracking: Improve handling of fadd in compute…
arsenm Jan 4, 2026
2ea6c18
[CIR][NFC] Fix incorrect function names in assert messages (#174334)
banach-space Jan 4, 2026
a2f3139
CodeGen: Remove denormal mode from TargetOptions (#174285)
arsenm Jan 4, 2026
19a1c40
[X86] LowerMINMAX - use valuetracking to attempt to find a smaller ty…
RKSimon Jan 4, 2026
76b00fc
[flang][cuda] Skip sizeof intrinsic in check (#174339)
clementval Jan 4, 2026
bd784b6
[clang][bytecode] Fix typeid test under msan (#174317)
tbaederr Jan 4, 2026
58822a6
[InstCombine] Fold `(select C, (x bin_op a), x) bin_op b` into `x bin…
spaits Jan 4, 2026
a73de98
[lldb] Handle not being able to read a file in the SourceManager (#17…
JDevlieghere Jan 4, 2026
39ae1ca
[X86][NewPM] Port x86-fast-pre-tile-config (#174323)
boomanaiden154 Jan 4, 2026
fd0bf4a
[clang-tidy] Speed up deduplicating warnings from alias checks (#174237)
localspook Jan 4, 2026
dc43062
[LV] Add tests with multiple early exits. (NFC)
fhahn Jan 4, 2026
bada581
[RISCV] Update Andes45 vector load/stores scheduling info (#173806)
tclin914 Jan 5, 2026
112df6a
[ocaml] Fixed typo error about set_module_identifier in llvm ocaml bi…
Yujinmon Jan 5, 2026
f5dab90
[mlir][Python] Bump MLIR Python minimum version to 3.10 (#163499)
makslevental Jan 5, 2026
1b43f5c
[RISCV][SelectionDAG] Add a ISD::CTLS node for count leading redundan…
topperc Jan 5, 2026
05b8a36
[Clang][Diagnostics] Mention 'import std' in typeid diagnostic (#173236)
AltriaSuki Jan 5, 2026
993054d
[InstCombine] Fold redundant FP clamp selects; relax min-max-pattern …
wenju-he Jan 5, 2026
80b62cb
Enable c++20 modules support for c++23preview in clang-cl (#173663)
waruqi Jan 5, 2026
ccb47d0
[OpenMP][MLIR] Hoist static `alloca`s emitted by private `init` regio…
ergawy Jan 5, 2026
dae453a
[OpenMP][OMPIRBuilder] Hoist static parallel region allocas to the en…
ergawy Jan 5, 2026
5035121
[C++20] [Modules] Fix incorrect read of TULocalOffset for delayed nam…
ChuanqiXu9 Jan 5, 2026
212527c
[Flang] Add FIR and LLVM lowering support for prefetch directive (#16…
Thirumalai-Shaktivel Jan 5, 2026
aa13ebc
[llvm][RISCV] Support fma codegen for zvfbfa (#172949)
4vtomat Jan 5, 2026
e65317a
[ValueTracking] Support ptrtoaddr in computeKnownBits() (#173358)
nikic Jan 5, 2026
30a1ffb
[ValueTracking] Support ptrtoaddr in inequality implication (#173362)
nikic Jan 5, 2026
8fd85ba
[LLVM] Temporarily allow implicit truncation in some places
nikic Dec 9, 2025
bb1f220
[mlir][tosa] Fix negate lowering to skip no-op casts (#173299)
Lallapallooza Jan 5, 2026
47fc1dd
[ConstantInt] Disable implicit truncation in ConstantInt::get() (#171…
nikic Jan 5, 2026
49f2896
[MLIR] Enable scalable vectorization for linalg.batch_matmul (#172333)
momchil-velikov Jan 5, 2026
e16860b
[clang][bytecode] Remove unnecessary null check (#174368)
tbaederr Jan 5, 2026
d4d48f6
[llvm-mca][AArch64] Refactor Neoverse SVE tests to split out common i…
c-rhodes Jan 5, 2026
24f0c26
[clang][bytecode] Check inc/dec operations for constness (#174276)
tbaederr Jan 5, 2026
c377d11
Update test for C++20 defaulting compilers after #173236 changed the …
dyung Jan 5, 2026
e47f40a
[lldb][DWARF] Use actual DWARF format when computing header size (#17…
HemangGadhavi Jan 5, 2026
a82e6ee
Revert "[ConstantInt] Disable implicit truncation in ConstantInt::get…
nikic Jan 5, 2026
fe3b4f0
[SDAG] Use reference type in loop (NFC) (#174379)
MacDue Jan 5, 2026
b7e4719
[mlir][tosa] Add dim operation (#169368)
lhutton1 Jan 5, 2026
5698d05
[clang-tidy][NFC] use findNextTokenSkippingComments instead of Lexer:…
vbvictor Jan 5, 2026
191b9cd
[X86] Add test showing failure to make use of existing concatenated o…
RKSimon Jan 5, 2026
984c577
[analyzer] Fix BuiltingFunctionChecker crash on large types (#174335)
steakhal Jan 5, 2026
0dd0359
Revert "[AMDGPU] Fix excessive stack usage in SIInsertWaitcnts::run (…
jayfoad Jan 5, 2026
c36690c
[X86] combineSelect - replace manual constant pow2 checks and ctlz co…
RKSimon Jan 5, 2026
12e2ede
[X86] combineConcatVectorOps - check for an existing operands concate…
RKSimon Jan 5, 2026
dec1762
[ThinLTO][COFF] Pass loop and slp vectorize options to LTO backend (#…
nga888 Jan 5, 2026
5cfd02f
[flang] change yielded iv value to be `iv + step` (#174124)
SusanTan Jan 5, 2026
b5614ce
Enable printing newlines and indents in attribute and type printers (…
Jacenty-And-Intel Jan 5, 2026
7aa6dcf
[X86] combineConcatVectorOps - concat fma chains which share concaten…
RKSimon Jan 5, 2026
b3c3e5f
[AMDGPU] Simplify and document waitcnt handling on call and return (#…
jayfoad Jan 5, 2026
0494abb
[AMDGPU] Make WaitcntBrackets::simplifyWaitcnt const again (#173390)
jayfoad Jan 5, 2026
3c32360
[lldb][test] Rewrite TestStringPrinter.py in a non-inline API test st…
Michael137 Jan 5, 2026
7a37545
[OpenMP] Fix member type name in LooprangeT, NFC (#174241)
kparzysz Jan 5, 2026
125948a
[Driver][SPIRV] Fix regular C/C++ compilation to AMD SPIRV. (#173867)
mgcarrasco Jan 5, 2026
5a33f99
[mlir][spirv] (De)serialize Index decoration (#174396)
IgWod-IMG Jan 5, 2026
316a9c5
[flang] Ignore ambiguous use statement in use_stmt generation. (#174387)
abidh Jan 5, 2026
d33cb52
[clang-tidy] Update the documentation of bugprone-use-after-move to c…
higher-performance Jan 5, 2026
78b9fd2
[AMDGPU] Remove UTC line from file that does not use it
boomanaiden154 Jan 5, 2026
e982b4f
[lldb][test] Add tests for printing references to C-strings
Michael137 Jan 5, 2026
3534b77
[X86] Add tests showing failure to concat comparisons due to the dela…
RKSimon Jan 5, 2026
7e2b79b
[AMDGPU] Generate more efficient code to avoid shift64 hazard (#171871)
LU-JOHN Jan 5, 2026
dbc9feb
[ProfCheck] Exclude new MergeFunc Test
boomanaiden154 Jan 5, 2026
e2fa8dc
[lldb][lldb-dap] Do not expose internal breakpoints to DAP clients (#…
gmondada Jan 5, 2026
71507f0
Add merge-calling-conv.ll to profcheck-xfail.txt (#174418)
mtrofin Jan 5, 2026
319a1f0
[libc++][pstl] Applied `[[nodiscard]]` (#174015)
H-G-Hristov Jan 5, 2026
787a476
[clang][bytecode] Mark volatile composite locals as such (#174407)
tbaederr Jan 5, 2026
c588035
InstCombine: Reorder exp's known-nan source handling (#174417)
arsenm Jan 5, 2026
4cba804
[unrelated][upstream-separately] XFAIL multc3_test.c fixunstfdi_test.…
Dec 18, 2025
d1aca4b
Reland check-builtins target for LLVM_ENABLE_RUNTIMES (#171941)
ndrewh Jan 5, 2026
9d8889b
[X86] combineConcatVectorOps - add missing X86ISD::CMPM handling (#17…
RKSimon Jan 5, 2026
fc8f81e
[RISCV][clang] Support f8e4m3 and f8e5m2 suffix type for intrinsics (…
4vtomat Jan 5, 2026
86b0acd
[InstrProf] Mark __llvm_profile_runtime_user cold (#174174)
boomanaiden154 Jan 5, 2026
75d8654
[Flang-RT] Add test dependency (#174427)
Meinersbur Jan 5, 2026
943ef70
[clang][RISCV] Support Zvfofp8min C intrinsic (#172630)
4vtomat Jan 5, 2026
3f2c598
[libclc] Suppress AMDGCN code object version for library code (#174412)
jhuber6 Jan 5, 2026
1180ae2
Merge from 'sycl' to 'sycl-web' (8 commits)
Jan 5, 2026
b88297a
Merge from 'main' to 'sycl-web' (144 commits)
offsake Jan 5, 2026
014b368
Merge from 'main' to 'sycl-web' (4 commits)
offsake Jan 5, 2026
1ffc551
Merge from 'sycl' to 'sycl-web' (7 commits)
Jan 6, 2026
1cb71a8
Merge from 'main' to 'sycl-web' (17 commits)
offsake Jan 6, 2026
26a9308
Merge commit '1cb71a8b7f7d77293bda24a03101016d0f8631e4' into llvmspir…
sys-ce-bb Jan 20, 2026
decb84a
[compiler-rt] fix crt target dependency. (#174475)
ZequanWu Jan 5, 2026
7501be4
[compiler-rt] Fix check-builtins buildbot failures (#174443)
ndrewh Jan 5, 2026
cfc951c
[libclc] Fix incorrect argument format
jhuber6 Jan 5, 2026
4b18655
Set vload/vstore's offset arg type to unsigned (#3478)
wenju-he Jan 2, 2026
ecdd07c
Fix LoopMerge Instruction Placement (#3277)
pvelesko Jan 6, 2026
0d9ef14
Add const to GroupAsyncCopy/GenericPtrMemSemantics/vload* source poin…
wenju-he Jan 6, 2026
51d3a24
Restore entry point wrapper reverse translation (#3479)
YuriPlyakhin Jan 7, 2026
e5e6807
Correctly set IsSigned for ConstantInt creation (#3482)
svenvh Jan 7, 2026
cc9aeae
Move away from hardcoded -j2 (#3483)
svenvh Jan 9, 2026
e887229
Fix MergeBlock error: a merge block for another header (#3280)
pvelesko Jan 12, 2026
e429e21
[CMake] Fix bad conflict resolution LLVM_INCLUDE_EXAMPLES (#33936)
jsji Jan 6, 2026
bfb029d
[Clang] Fix bad conflict resolution for createTLII (#34023)
jsji Jan 9, 2026
2718dd4
Fix errors when compiling for MSVC target (#33816)
elizabethandrews Dec 23, 2025
e3fc36d
[NFC] Unsupport AArch64 test fmv-unreachable-version.c (#33999)
jsji Jan 8, 2026
039733f
[UR] Workaround the shutdown order issue in log on Linux as well
sys-ce-bb Jan 28, 2026
7d78adf
[NFC] XFAIL HIP atomic failures
jsji Oct 24, 2025
0d48d73
[NFC][Driver] Require shell for spirv-tools-err.c
sys-ce-bb Jan 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
321 changes: 321 additions & 0 deletions .github/workflows/commit-access-review.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,321 @@
#!/usr/bin/env python3
# ===-- commit-access-review.py --------------------------------------------===#
#
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#
# ===------------------------------------------------------------------------===#
#
# ===------------------------------------------------------------------------===#

import datetime
import github
import re
import requests
import time
import sys
import re


class User:
THRESHOLD = 5

def __init__(self, name, triage_list):
self.name = name
self.authored = 0
self.merged = 0
self.reviewed = 0
self.triage_list = triage_list

def add_authored(self, val=1):
self.authored += val
if self.meets_threshold():
print(self.name, "meets the threshold with authored commits")
del self.triage_list[self.name]

def set_authored(self, val):
self.authored = 0
self.add_authored(val)

def add_merged(self, val=1):
self.merged += val
if self.meets_threshold():
print(self.name, "meets the threshold with merged commits")
del self.triage_list[self.name]

def add_reviewed(self, val=1):
self.reviewed += val
if self.meets_threshold():
print(self.name, "meets the threshold with reviewed commits")
del self.triage_list[self.name]

def get_total(self):
return self.authored + self.merged + self.reviewed

def meets_threshold(self):
return self.get_total() >= self.THRESHOLD

def __repr__(self):
return "{} : a: {} m: {} r: {}".format(
self.name, self.authored, self.merged, self.reviewed
)


def check_manual_requests(
gh: github.Github, start_date: datetime.datetime
) -> list[str]:
"""
Return a list of users who have been asked since ``start_date`` if they
want to keep their commit access or if they have applied for commit
access since ``start_date``
"""

query = """
query ($query: String!, $after: String) {
search(query: $query, type: ISSUE, first: 100, after: $after) {
nodes {
... on Issue {
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,infra:commit-access-request"
}

has_next_page = True
users = []
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


def get_num_commits(gh: github.Github, user: str, start_date: datetime.datetime) -> int:
"""
Get number of commits that ``user`` has been made since ``start_date`.
"""
variables = {
"owner": "llvm",
"user": user,
"start_date": start_date.strftime("%Y-%m-%dT%H:%M:%S"),
}

user_query = """
query ($user: String!) {
user(login: $user) {
id
}
}
"""

res_header, res_data = gh._Github__requester.graphql_query(
query=user_query, variables=variables
)
data = res_data["data"]
variables["user_id"] = data["user"]["id"]

query = """
query ($owner: String!, $user_id: ID!, $start_date: GitTimestamp!){
organization(login: $owner) {
teams(query: "llvm-committers" first:1) {
nodes {
repositories {
nodes {
ref(qualifiedName: "main") {
target {
... on Commit {
history(since: $start_date, author: {id: $user_id }) {
totalCount
}
}
}
}
}
}
}
}
}
}
"""
count = 0
res_header, res_data = gh._Github__requester.graphql_query(
query=query, variables=variables
)
data = res_data["data"]
for repo in data["organization"]["teams"]["nodes"][0]["repositories"]["nodes"]:
count += int(repo["ref"]["target"]["history"]["totalCount"])
if count >= User.THRESHOLD:
break
return count


def get_review_count(
gh: github.Github, user: str, start_date: datetime.datetime
) -> int:
"""
Return the number of reviews that ``user`` has done since ``start_date``.
"""
query = """
query ($query: String!) {
search(query: $query, type: ISSUE, first: 5) {
issueCount
}
}
"""
formatted_start_date = start_date.strftime("%Y-%m-%dT%H:%M:%S")
variables = {
"owner": "llvm",
"repo": "llvm-project",
"user": user,
"query": f"type:pr commenter:{user} -author:{user} merged:>{formatted_start_date} org:llvm",
}

res_header, res_data = gh._Github__requester.graphql_query(
query=query, variables=variables
)
data = res_data["data"]
return int(data["search"]["issueCount"])


def count_prs(gh: github.Github, triage_list: dict, start_date: datetime.datetime):
"""
Fetch all the merged PRs for the project since ``start_date`` and update
``triage_list`` with the number of PRs merged for each user.
"""

query = """
query ($query: String!, $after: String) {
search(query: $query, type: ISSUE, first: 100, after: $after) {
issueCount,
nodes {
... on PullRequest {
author {
login
}
mergedBy {
login
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
"""
date_begin = start_date
date_end = None
while date_begin < datetime.datetime.now():
date_end = date_begin + datetime.timedelta(days=7)
formatted_date_begin = date_begin.strftime("%Y-%m-%dT%H:%M:%S")
formatted_date_end = date_end.strftime("%Y-%m-%dT%H:%M:%S")
variables = {
"query": f"type:pr is:merged merged:{formatted_date_begin}..{formatted_date_end} org:llvm",
}
has_next_page = True
while has_next_page:
print(variables)
res_header, res_data = gh._Github__requester.graphql_query(
query=query, variables=variables
)
data = res_data["data"]
for pr in data["search"]["nodes"]:
# Users can be None if the user has been deleted.
if not pr["author"]:
continue
author = pr["author"]["login"]
if author in triage_list:
triage_list[author].add_authored()

if not pr["mergedBy"]:
continue
merger = pr["mergedBy"]["login"]
if author == merger:
continue
if merger not in triage_list:
continue
triage_list[merger].add_merged()

has_next_page = data["search"]["pageInfo"]["hasNextPage"]
if has_next_page:
variables["after"] = data["search"]["pageInfo"]["endCursor"]
date_begin = date_end


def main():
token = sys.argv[1]
gh = github.Github(auth=github.Auth.Token(token))
org = gh.get_organization("llvm")
repo = org.get_repo("llvm-project")
one_year_ago = datetime.datetime.now() - datetime.timedelta(days=365)
triage_list = {}
for collaborator in repo.get_collaborators(permission="push"):
triage_list[collaborator.login] = User(collaborator.login, triage_list)

print("Start:", len(triage_list), "triagers")
# Step 0 Check if users have requested commit access in the last year.
for user in check_manual_requests(gh, one_year_ago):
if user in triage_list:
print(user, "requested commit access in the last year.")
del triage_list[user]
print("After Request Check:", len(triage_list), "triagers")

# Step 1 count all PRs authored or merged
count_prs(gh, triage_list, one_year_ago)

print("After PRs:", len(triage_list), "triagers")

if len(triage_list) == 0:
sys.exit(0)

# Step 2 check for reviews
for user in list(triage_list.keys()):
review_count = get_review_count(gh, user, one_year_ago)
triage_list[user].add_reviewed(review_count)

print("After Reviews:", len(triage_list), "triagers")

if len(triage_list) == 0:
sys.exit(0)

# Step 3 check for number of commits
for user in list(triage_list.keys()):
num_commits = get_num_commits(gh, user, one_year_ago)
# Override the total number of commits to not double count commits and
# authored PRs.
triage_list[user].set_authored(num_commits)

print("After Commits:", len(triage_list), "triagers")

print("Complete:", len(triage_list), "triagers")

with open("triagers.log", "w") as triagers_log:
for user in triage_list:
print(triage_list[user].__repr__())
triagers_log.write(user + "\n")


if __name__ == "__main__":
main()
Loading
Loading