Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
427 commits
Select commit Hold shift + click to select a range
87a2413
[AST] Fix a warning
kazutakahirata Oct 2, 2024
405f8a1
adds missing bazel dependencies (#110904)
cjdb Oct 2, 2024
add6b2f
[NFC][SPIRV] Fix for selectExtInst to be able to process intrinsics (…
farzonl Oct 2, 2024
7d0ca60
[NFC][DirectX] Remove DXILIntrinsicExpansion as a required pass of DX…
farzonl Oct 2, 2024
c1b911c
[SLP]Do correct signedness analysis for clustered nodes
alexey-bataev Oct 2, 2024
40b8a0f
[RISCV][GISEL] Generate VLMax using -1 constant (#110778)
michaelmaitland Oct 2, 2024
baf008a
[SimplifyCFG] Add tests for sinking calls with differing number of at…
goldsteinn Oct 2, 2024
e343af7
[SimplifyCFG][Attributes] Enabling sinking calls with differing numbe…
goldsteinn Oct 2, 2024
0f512d1
[NFC][DirectX][SPIRV] Intrinsics should be defined the same (#110895)
farzonl Oct 2, 2024
906ffc4
[SandboxIR][NFC] Move Utils test to proper file (#110763)
Sterling-Augustine Oct 2, 2024
bccd37f
[NFC][MLIR][TableGen] Eliminate `llvm::` for commonly used types (#11…
jurahul Oct 2, 2024
65e69f7
[NFC][TableGen] Change `Record::getSuperClasses` to use const Record*…
jurahul Oct 2, 2024
36dff0d
[scudo] Reduce unsuccessful attempts of page releasing (#110583)
ChiaHungDuan Oct 2, 2024
f982443
[flang][OpenMP] Parse lastprivate modifier, add TODO to lowering (#11…
kparzysz Oct 2, 2024
916e6ad
[CodeGen] Fix InstructionCount remarks for MI bundles (#107621)
francisvm Oct 2, 2024
45ad1ac
Revert "Fix LLVM_ENABLE_ABI_BREAKING_CHECKS macro check: use #if inst…
cjdb Oct 2, 2024
d24fdce
Bazel: Add vector dialect dependency. (#110927)
bjacob Oct 2, 2024
e379b4b
[lldb] Fix compile failure on SymbolFileDWARFTests.cpp with gcc
ZequanWu Oct 2, 2024
f4b758d
[Modules] Add missing headers to fix the modular build. (#110924)
vsapsai Oct 2, 2024
41eb186
adds missing header, removes Bazel unnecessary dependency (#110932)
cjdb Oct 2, 2024
076392b
[SPARC] Fix regression from UpgradeDataLayoutString change (#110608)
koachan Oct 2, 2024
e3686f1
[MLIR][sparse] Fix SparseTensor `test_output.py` test (#110882)
mtsokol Oct 2, 2024
6c7a3f8
Fix LLVM_ENABLE_ABI_BREAKING_CHECKS macro check: use #if instead of #…
joker-eph Oct 2, 2024
f35c213
[SandboxIR] Add RegionPass/RegionPassManager (#110933)
slackito Oct 2, 2024
ca57e8f
[RISCV] Support -mstack-protector-guard=tls (#108942)
keith-packard Oct 2, 2024
a268bda
[WebAssembly] Handle block and polymorphic stack in AsmTypeCheck (#11…
aheejin Oct 2, 2024
db33d82
[llvm] Mark win x64 SEH pseudo instruction as meta instructions (#110…
dpaoliello Oct 2, 2024
7fe43ad
[Clang] nonblocking/nonallocating attributes: 2nd pass caller/callee …
dougsonos Oct 3, 2024
5064c4c
[Clang][Sema] Bump the instantiated index when skipping past non-init…
zyn0217 Oct 3, 2024
5762bd6
[mlir] [tblgen-to-irdl] Add region support (#110512)
alexarice Oct 3, 2024
6a34684
[gn build] Port 7fe43ada28c3
llvmgnsyncbot Oct 3, 2024
a5876be
[lldb-dap] Correct auto-completion based on ReplMode and escape char …
vogelsgesang Oct 3, 2024
6ae14c0
[clang-format] Annotate the l_paren of function pointer types (#109229)
owenca Oct 3, 2024
98281da
[clang-format] Correctly annotate */& in if condition with braced ini…
owenca Oct 3, 2024
688bc95
[clang-format] Add TemplateNames option to help parse C++ angles (#10…
owenca Oct 3, 2024
b91a25e
[flang] add nsw to operations in subscripts (#110060)
yus3710-fj Oct 3, 2024
14e1fef
[clang-format] Handle template closer followed by empty paretheses (#…
owenca Oct 3, 2024
c1343a2
[clang] [Driver] Ensure we error on lto with link.exe and target `*-w…
MaxEW707 Oct 3, 2024
e7a43ca
[lldb-dap] Fix a warning
kazutakahirata Oct 3, 2024
d15e53c
[RISCV] Check vmerge's true is in same block in vmerge -> vmv.v.v pee…
lukel97 Oct 3, 2024
882457a
[Clang] Fix 'counted_by' for nested struct pointers (#110497)
Cydox Oct 3, 2024
56736c7
[Xtensa] Implement volatile load/store. (#110292)
andreisfr Oct 3, 2024
8a57d82
[mlir] Add Scalar Broadcast TOSA Depthwise Conv (#110806)
FranklandJack Oct 3, 2024
aec87a2
[llvm][mlir][flang][OpenMP] Emit __atomic_load and __atomic_compare_e…
NimishMishra Oct 3, 2024
a2994de
[RISCV] Fix RISCVBitPositions typo (#110953)
BeMg Oct 3, 2024
650c41a
Revert "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffe…
chapuni Oct 3, 2024
6c25604
[mlir][xegpu] Convert Vector load and store to XeGPU (#110826)
adam-smnk Oct 3, 2024
b0b1a11
[AArch64] Add libcall for fp128 pow/log/sin/cos/etc.
davemgreen Oct 3, 2024
944f4ad
[RISCV][ISel] Select `binvi` for pattern `icmp eq/ne X, pow2` (#110957)
dtcxzyw Oct 3, 2024
1701895
[clang][analyzer] Less redundant warnings from FixedAddressChecker (#…
balazske Oct 3, 2024
3736ef0
[bazel] Fix build past aec87a2143c01039578ceaed752ca2cb1dc83ff7 (#110…
dklimkin Oct 3, 2024
8ecbad7
[AArch64][GlobalISel] Add fpowi fp128 libcall legalization.
davemgreen Oct 3, 2024
eb4a91d
[AArch64][GlobalISel] Add frem fp128 libcall legalization.
davemgreen Oct 3, 2024
e984d11
[clang-tidy] loop convert can handle lambda init capture (#109159)
HerrCai0907 Oct 3, 2024
612760e
[flang] Fix aarch64 CI failures from #92364 (#110969)
NimishMishra Oct 3, 2024
7ad566d
[mlir] Fix `remove-dead-values` pass throws error when module has a n…
Wheest Oct 3, 2024
1cc3ffa
clangCodeGen: Reformat and refactor. NFC.
chapuni Oct 2, 2024
6c331e5
[MC/DC] Rework tvbitmap.update to get rid of the inlined function (#1…
chapuni Oct 3, 2024
870bdc6
Reapply "[AMDGPU]Optimize SGPR spills (#93668)"
vg0204 Oct 3, 2024
94cf80d
[MLIR][Linalg] Pattern to fold AddOp to accumulation via contraction …
rolfmorel Oct 3, 2024
a017ed0
[analyzer] Model overflow builtins (#102602)
pskrgag Oct 3, 2024
200dd6f
[clang][x86] Update SSE1/2/3 intrinsic tests for both C/C++
RKSimon Oct 2, 2024
1ba19d6
[clang][x86] Update SSE4A intrinsic tests for both C/C++
RKSimon Oct 3, 2024
7506872
[DebugInfo][LSR] Fix assertion failure salvaging IV with offset > 64 …
OCHyams Oct 3, 2024
d283705
[AArch64][SVE] Fix definition of bfloat fcvt intrinsics. (#110281)
paulwalker-arm Oct 3, 2024
d5f6e88
[lldb][test] TestDataFormatterLibcxxStringSimulator.py: add new paddi…
Michael137 Oct 3, 2024
5901463
[SLP] NFC. BaseIndex is not used for getSameOpcode. (#110948)
HanKuanChen Oct 3, 2024
8d13e7b
[AMDGPU] Qualify auto. NFC. (#110878)
jayfoad Oct 3, 2024
a62a80c
[clang][x86] Update SSE42 intrinsic tests for both C/C++
RKSimon Oct 3, 2024
7c50c1e
[clang][x86] Pull out PR51324 / PR60006 test cases into their own cod…
RKSimon Oct 3, 2024
44df106
[clang][x86] Update SSE41 intrinsic tests for both C/C++
RKSimon Oct 3, 2024
19c6958
[libc++] Re-apply LWG3870: Remove `voidify` (#110944)
frederick-vs-ja Oct 3, 2024
82f5acf
[bazel] Fix build past 2026501cf107fcb3cbd51026ba25fda3af823941 (#110…
dklimkin Oct 3, 2024
121ed5c
[libc++] Remove test suite annotations for experimental stop_token (#…
ldionne Oct 3, 2024
bfb3a44
[libc++] Index from 0 in GDB pretty printers (#110881)
ldionne Oct 3, 2024
4f82f27
[OpenACC] 'collapse' clause 'force' tag (#110906)
erichkeane Oct 3, 2024
ea62db0
[cmake] Add hexagon-linux cmake cache files (#98712)
androm3da Oct 3, 2024
8bcf799
Fix have pthread_getname for some system (#110854)
wsmoses Oct 3, 2024
241f936
[TableGen] Fix source location for anonymous records (#110935)
jurahul Oct 3, 2024
e813750
[NFC] Rename variable `recordKeeper` to `records` (#110989)
jurahul Oct 3, 2024
4547d60
[llvm][rtsan] Add transform pass for sanitize_realtime_unsafe (#109543)
davidtrevelyan Oct 3, 2024
eafa150
[flang][OpenMP] Enable lastprivate on simd (#93786)
NimishMishra Oct 3, 2024
8e049fa
[libc++] Rename __range_adaptor_closure_t (#110886)
ldionne Oct 3, 2024
34d0c99
[libc++] Stop trying to avoid exporting some typeinfo names (#110925)
ldionne Oct 3, 2024
ee4dd14
Revert "[lldb][test] TestDataFormatterLibcxxStringSimulator.py: add n…
Michael137 Oct 3, 2024
d0d12fc
[InstCombine] Fold (X==Z) ? (Y==Z) : (!(Y==Z) && X==Y) --> X==Y (#108…
citymarina Oct 3, 2024
9fd7523
[LLVM] Port SVE tests in llvm/test/CodeGen/AArch64 to use splat()
paulwalker-arm Oct 2, 2024
dce5bf8
[ValueTracking] AllowEphemerals for alignment assumptions. (#108632)
fhahn Oct 3, 2024
79b32bc
[MemProf] Strip callsite metadata when inlining an unprofiled callsit…
teresajohnson Oct 3, 2024
a78359c
[flang] add procedure flags to fir.dispatch (#110970)
jeanPerier Oct 3, 2024
c4204c0
[flang] replace fir.complex usages with mlir complex (#110850)
jeanPerier Oct 3, 2024
b9bb77f
[AMDGPU] Update branch-condition-and.ll to auto-generated checks (#11…
jmmartinez Oct 3, 2024
01a1398
[AArch64][Test] Update test variable names (NFC) (#110667)
MacDue Oct 3, 2024
b78bfe7
[TableGen] Delete non-const overloads of `getAllDerivedDefinitions` (…
jurahul Oct 3, 2024
667815c
[NFC][TableGen] Change `RecordKeeper::getDef()` to return const point…
jurahul Oct 3, 2024
133c122
[SLP]Fix a crash on accessing element with index -1 for reused mask w…
alexey-bataev Oct 3, 2024
bf3deb1
[AST] Avoid repeated hash lookups (NFC) (#110947)
kazutakahirata Oct 3, 2024
28733ed
[Analysis] Avoid repeated hash lookups (NFC) (#110949)
kazutakahirata Oct 3, 2024
20d402a
[Serialization] Avoid repeated hash lookups (NFC) (#110950)
kazutakahirata Oct 3, 2024
66f846d
[Sema] Avoid repeated hash lookups (NFC) (#110951)
kazutakahirata Oct 3, 2024
66227bf
[Coroutines] ABI Objects to improve code separation between different…
Oct 3, 2024
d412cea
[OpenACC] Implement 'tile' attribute AST (#110999)
erichkeane Oct 3, 2024
313ad85
[Coroutines] Fix warnings
kazutakahirata Oct 3, 2024
848b20d
[libc++] Correctly handle custom deleters in hardened unique_ptr<T[]>…
ldionne Oct 3, 2024
def9550
[Hashing] Remove Clang<=11 -fno-pic workaround (#110952)
MaskRay Oct 3, 2024
caa265e
[DebugInfo][InstCombine] Do not overwrite prior DILocation for new In…
SLTozer Oct 3, 2024
487686b
[SDAG][RISCV] Don't promote VP_REDUCE_{FADD,FMUL} (#111000)
lukel97 Oct 3, 2024
06c8210
update P7 32-bit partial vector load cost (#108261)
RolandF77 Oct 3, 2024
81fcdc6
[clangd] Add CodeAction to swap operands to binary operators (#78999)
torshepherd Oct 3, 2024
43d51d6
[SandboxIR] Implement IntrinsicInst (#110900)
Oct 3, 2024
ef66936
[libc] Fix send and recv functions (#110936)
michaelrj-google Oct 3, 2024
2396c46
[libc] Add malloc.h header defining mallopt (#110908)
fabio-d Oct 3, 2024
144dc4c
[RISCV][GISel] Remove some unneeded isel patterns.
topperc Oct 3, 2024
b0c9f02
[gn build] Port 43d51d63af7e
llvmgnsyncbot Oct 3, 2024
a4516da
[AArch64] - Fold and and cmp into tst (#110347)
jf-botto Oct 3, 2024
a72248c
Drop dangling comments from a recent test
pogo59 Oct 3, 2024
c195981
[CGData][ThinLTO][NFC] Prep for two-codegen rounds (#90934)
kyulee-com Oct 3, 2024
00c1989
[lldb] Improve mid-function epilogue scanning for x86 (#110965)
jasonmolenda Oct 3, 2024
2e89312
[lldb] Removed gdbserver ports map from lldb-server (#104238)
slydiman Oct 3, 2024
8789a7e
[gn build] Port 2e89312419c5
llvmgnsyncbot Oct 3, 2024
4f0ad8d
[clang-tidy] support static analyzer checker configuration in `--veri…
5chmidti Oct 3, 2024
1b4b0c4
Allow fixed vector operand for LLVM_AtomicRMWOp (#110553)
joviliast Oct 3, 2024
c098435
Add cross builtins and cross HLSL function to DirectX and SPIR-V back…
bob80905 Oct 3, 2024
759a7b5
[mlir] Add the ability to define dialect-specific location attrs. (#1…
bzcheeseman Oct 3, 2024
9c99e07
[lldb-dap][docs] Fix README (#110982)
vogelsgesang Oct 3, 2024
45582ed
[SandboxVec][DAG][NFC] Rename isMemDepCandidate() to isMemDepNodeCand…
Oct 3, 2024
a1ff427
[SandboxIR][NFC] Move intrinsic code to Utils::isMemIntrinsic() (#111…
Oct 3, 2024
3692995
[CodeGen] Fix warnings
kazutakahirata Oct 3, 2024
c08d7b3
AMDGPU: Fix verifier error on tail call target in vgprs (#110984)
arsenm Oct 3, 2024
6c137b7
[lldb-dap][docs] Improve documentation for contributors (#110987)
vogelsgesang Oct 3, 2024
61f8a7f
[bazel] Port 4f0ad8d80a04faabc715d355744ba887c74e37f1 (#111034)
keith Oct 3, 2024
cd6858c
[InstCombine] Add tests for folding `(icmp eq/ne (and X, -P2), INT_MI…
goldsteinn Oct 2, 2024
a646436
[InstCombine] Folding `(icmp eq/ne (and X, -P2), INT_MIN)`
goldsteinn Oct 2, 2024
5114758
[SPIRV] Make access qualifier optional for spirv.Image type (#110852)
s-perron Oct 3, 2024
9abb97f
[clang] Handle template argument conversions for non-pack param to pa…
mizvekov Oct 3, 2024
000e790
[lldb] Fixed IPv6 host formatting in #104238 (#111033)
slydiman Oct 3, 2024
6f20c30
[LIT] Add support for `%basename_s` to get base name of source file (…
jurahul Oct 3, 2024
6a1bdd9
[LLD][COFF] Do as many passes of resolveRemainingUndefines as necessa…
glandium Oct 3, 2024
428ae0f
AMDGPU: Do not tail call if an inreg argument requires waterfalling (…
arsenm Oct 3, 2024
fc4b1a3
[flang][debug] Handle array types with variable size/bounds. (#110686)
abidh Oct 3, 2024
47ff13b
[lldb-dap] Disable TestDAP_optimized under ASAN (#111063)
augusto2112 Oct 3, 2024
8ee7d91
[clang][MicrosoftCXXABI] Avoid Type::getPointerTo() (NFC) (#110915)
JOE1994 Oct 3, 2024
b977ec6
[scudo] Fix the loading of a signed value to an unsigned storage (#11…
ChiaHungDuan Oct 3, 2024
c20b90a
[lldb][debugserver] Check if Rosetta debugserver exists (#110943)
jasonmolenda Oct 3, 2024
cdfdc85
[libc] Small recvfrom fixes (yaml, unpoison) (#111020)
michaelrj-google Oct 3, 2024
7b9c6a7
[SandboxVec][DAG][NFC] Move functions from Utils to DependencyGraph (…
Oct 3, 2024
ae635d6
[NVPTX] add support for .debug_loc section (#110905)
willghatch Oct 3, 2024
635db5e
[SandboxIR] Implement InsertPosition (#110730)
Oct 3, 2024
1753d16
[WebAssembly] Print instructions with type checking errors (#111067)
aheejin Oct 4, 2024
83e3779
[WebAssembly] Add intentations to type-checker-error.s (#111071)
aheejin Oct 4, 2024
e1434a8
[SandboxIR] Switch more Instruction::create() functions to InsertPosi…
Oct 4, 2024
876f661
[LIT] Rename substitution `%basename_s` to `%{s:basename}` (#111062)
jurahul Oct 4, 2024
eaff3a7
[clang-format] Fix a bug that misannotates binary operators */&/&& (#…
owenca Oct 4, 2024
7ab488e
[RISCV][FMV] Support target_version (#99040)
BeMg Oct 4, 2024
3590068
[ELF] Pass Ctx & to OutputSections
MaskRay Oct 4, 2024
e9b7a09
[MLIR] Unconditionally take min of max lhs/rhs value in inferRemU (#1…
goldsteinn Oct 4, 2024
1f391a7
[ELF] Pass Ctx & to SyntheticSection::finalizeContents
MaskRay Oct 4, 2024
7a5b9ef
[ELF] Pass Ctx & to SyntheticSection::writeTo
MaskRay Oct 4, 2024
1e5e153
Revert "[RISCV][FMV] Support target_version" (#111096)
BeMg Oct 4, 2024
ec06471
Stop disabling link_llvmlibc feature in libc_test Bazel rule
vonosmas Oct 4, 2024
e2f0ec3
[ELF] Pass Ctx & to SyntheticSection::getSize
MaskRay Oct 4, 2024
df8795c
[CSKY] Fix warning in CSKYMCCodeEmitter::getImmJMPIX.
tclin914 Oct 4, 2024
c4c34f0
[ELF] Pass Ctx & to InputFiles
MaskRay Oct 4, 2024
1682c99
[Clang][Driver] Support relative paths for CLANG_CONFIG_FILE_SYSTEM_D…
carlocab Oct 4, 2024
3b0e120
[RISCV] Add tests for @llvm.vector.reduce.fmul. NFC
lukel97 Oct 3, 2024
56d6b56
[mlir][vector] Relax the requirements on broadcast dims (#99341)
banach-space Oct 4, 2024
a10f5ab
[RISCV] Remove unneeded template parameter from ALU_ri. NFC
topperc Oct 4, 2024
ccca3c6
[flang] enable assumed-rank lowering by default (#110893)
jeanPerier Oct 4, 2024
3f9caba
[MLIR] Add f8E8M0FNU type (#111028)
sergey-kozub Oct 4, 2024
5030dea
[mlir][Transforms] Dialect conversion: No rollback during analysis co…
matthias-springer Oct 4, 2024
bba3849
[clang][docs] Add documentation for APValue constructors (#109994)
tbaederr Oct 4, 2024
1753de2
[flang][FIR] remove fir.complex type and its fir.real element type (#…
jeanPerier Oct 4, 2024
9cf8c09
[RISCV][DAGCombine] Combine `sext_inreg (shl X, Y), i32` into `sllw X…
dtcxzyw Oct 4, 2024
67d247a
[InstCombine] Decompose more icmps into masks (#110836)
nikic Oct 4, 2024
856774d
[ConstantFPRange][UnitTest] Ignore NaN payloads when enumerating valu…
dtcxzyw Oct 4, 2024
9e831d5
[AArch64] Pass -mabi option through to multilib (#110874)
ostannard Oct 4, 2024
992e754
Fix MSVC "not all control paths return a value" warning. NFC.
RKSimon Oct 4, 2024
d9d6233
[mlir][linalg] Add a new helper hook: `hasVectorizationImpl` (#110708)
banach-space Oct 4, 2024
d0756ca
[ARM][AArch64] Introduce the Armv9.6-A architecture version (#110825)
jthackray Oct 4, 2024
23c02a4
[doc] Add llvm --error-display to dwarfdump documentation (#110922)
bd1976bris Oct 4, 2024
fcdb178
[doc] Add --verify-json to dwarfdump documentation (#110909)
bd1976bris Oct 4, 2024
26fca72
[VPlan][NFC] Use patterns in test check (#111086)
arcbbb Oct 4, 2024
7be2ce7
[RISCV] fix SP recovery in a function epilogue (#110809)
daniilavdeev Oct 4, 2024
ef8d506
[AArch64]Fix FEAT_SME_LUTv2 to have FEAT_SME2 implemented. (#110474)
CarolineConcatto Oct 4, 2024
c734d77
[flang][semantics][OpenMP] no privatisation of stmt functions (#106550)
tblah Oct 4, 2024
f6f4c17
[flang][debug] Use PROGRAM name for main function name (#111022)
tblah Oct 4, 2024
60f3e67
[libc++] Activate -Warray-zero when building (#110812)
serge-sans-paille Oct 4, 2024
b5598c3
[X86] Regenerate test checks with vpternlog comments
RKSimon Oct 4, 2024
972353f
[LAA] Add tests where results can be improved using loop guards.
fhahn Oct 4, 2024
b837c9e
Revert "[llvm] Mark win x64 SEH pseudo instruction as meta instructio…
mstorsjo Oct 4, 2024
948467b
[AMDGPU] Use a range-based for loop. NFC.
jayfoad Oct 4, 2024
53b3c9e
[bazel] Fix libc/hdr past c63112a9118277a20ae440f3f69189c0937e8f4d (#…
dklimkin Oct 4, 2024
dec4cfd
[LAA] Use loop guards when checking invariant accesses.
fhahn Oct 4, 2024
f5815b9
[SLP] NFC. Set NumOperands directly if VL[0] is IntrinsicInst. (#111103)
HanKuanChen Oct 4, 2024
a1b6dae
[mlir][LLVMIR] Add LLVMDialect check in `DIScopeForLLVMFuncOp` (#110427)
CoTinker Oct 4, 2024
6294679
[lldb] Add isConstant mode for FA locations (#110726)
felipepiovezan Oct 4, 2024
d826b0c
[LLVM] Add HasFakeUses to MachineFunction (#110097)
SLTozer Oct 4, 2024
15ee17c
[SLP] Move more X86 tests to common directory (#111134)
ElvinaYakubova Oct 4, 2024
800b073
[clang][bytecode] Change isArrayElement() for narrowed composite arra…
tbaederr Oct 4, 2024
1811e87
[CodeGen] Fix enumeration value 'HasFakeUses' not handled in switch (…
DamonFool Oct 4, 2024
04540fa
[TableGen] Print record location when record asserts fail (#111029)
jurahul Oct 4, 2024
02debce
update_test_checks: improve IR value name stability (#110940)
nhaehnle Oct 4, 2024
b01be72
[NFC][CodeGen] Remove unused HasFakeUses MachineFunctionProperty
SLTozer Oct 4, 2024
e5a0c30
AMDGPU: Work around machine verifier failure with convergence tokens
arsenm Oct 4, 2024
3c98d8c
[OpenACC] Implement 'tile' loop count/tightly nested loop requirement…
erichkeane Oct 4, 2024
097379a
[doc] Fix rendering for objcopy's --remove-symbol-prefix option text …
bd1976bris Oct 4, 2024
a3cc4b6
[RISCV][GISEL][NFC] Make MRI a member in RISCVInstructionSelector (#1…
michaelmaitland Oct 4, 2024
8d661fd
[analyzer] use `invalidateRegions()` in `VisitGCCAsmStmt` (#109838)
pskrgag Oct 4, 2024
d8f2251
[Clang] Automatically enable `-fconvergent-functions` on GPU targets …
jhuber6 Oct 4, 2024
8e33ff7
[mlir][GPU][NFC] Move `dump-ptx.mlir` test case (#111142)
matthias-springer Oct 4, 2024
208f42f
[mlir][NVVM] Add constant memory space identifier (#111141)
matthias-springer Oct 4, 2024
2f24587
[flang][OpenMP] Handle unstructured CF in compound loop constructs (#…
ergawy Oct 4, 2024
d68083f
[FuncSpec] Update tests to use --include-generated-funcs (NFC)
hazzlim Oct 3, 2024
47c8b95
[CFIFixup] Factor CFI remember/restore insertion into a helper (NFC) …
dhoekwater Oct 4, 2024
4da4fac
[ArgPromotion] Consider InvokeInst in Caller alias analysis (#110335)
hazzlim Oct 4, 2024
d205191
[MSVC] work-around for compile time issue 102513 (#110986)
bd1976bris Oct 4, 2024
6b3220a
[InstCombine] Avoid crash on aggregate types in SimplifyDemandedUseFP…
MacDue Oct 4, 2024
bf488ed
[LLVM][Maintainers] Move code owner list to Maintainers.md (#110240)
nikic Oct 4, 2024
9f3f76a
update_test_checks: collect original check lines for old versions of …
nhaehnle Oct 4, 2024
8305e9f
Revert "[CFIFixup] Factor CFI remember/restore insertion into a helpe…
dhoekwater Oct 4, 2024
2997a67
[Sema] Avoid repeated hash lookups (NFC) (#111090)
kazutakahirata Oct 4, 2024
6a8fcb0
[TableGen] Avoid repeated hash lookups (NFC) (#111089)
kazutakahirata Oct 4, 2024
c7895f0
[DependencyScanning] Avoid repeated hash lookups (NFC) (#111088)
kazutakahirata Oct 4, 2024
dada3c3
[libclang] Avoid repeated hash lookups (NFC) (#111087)
kazutakahirata Oct 4, 2024
ed59d57
[ThinLTO][NFC] Refactor FileCache (#110463)
kyulee-com Oct 4, 2024
19992ee
Partially revert "[mlir][NVVM] Add constant memory space identifier" …
dklimkin Oct 4, 2024
6937dbb
[mlir][memref] Fix `alloca` lowering with 0 dimensions (#111119)
matthias-springer Oct 4, 2024
b9330e5
[EarlyCSE] Add tests for de-duplication of callsites with differing a…
goldsteinn Oct 2, 2024
b98c405
[EarlyCSE] De-Duplicate callsites with differing attrs
goldsteinn Oct 2, 2024
d991e05
[SLP]Fix compiler crash on vectorizing gatehrd loads with different t…
alexey-bataev Oct 4, 2024
87c799a
Regenerate output for llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll
paulwalker-arm Oct 4, 2024
dd04cf0
MLIR BUILD.bazel: fold `BasicPtxBuilderInterface` into `NVVMDialect`…
bjacob Oct 4, 2024
99c05b2
[mlir] Remove `-finalizing-bufferize` from tests (#111177)
matthias-springer Oct 4, 2024
d883ef1
[TableGen] Factor out timer code into a new `TGTimer` class (#111054)
jurahul Oct 4, 2024
b91f0de
[TableGen] Change backend callback to require const RecordKeeper (#11…
jurahul Oct 4, 2024
ed0f407
[LLVM][TableGen] Check validity of IIT encoding for vector types (#11…
jurahul Oct 4, 2024
296a00b
[clang][rtsan] Add sanitize_realtime_unsafe attr to [[clang::blocking…
davidtrevelyan Oct 4, 2024
78089d5
ValueTracking: refactor recurrence-matching (NFC) (#109659)
artagnon Oct 4, 2024
f873fc3
[RISCV][GISEL] instruction-select vmclr (#110782)
michaelmaitland Oct 4, 2024
9459d72
[x86] combineMUL - when looking for a vector multiply by splat consta…
RKSimon Oct 4, 2024
643df05
[WebAssembly] Enable type checker in annotations.s (#111079)
aheejin Oct 4, 2024
98a15c7
Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buff…
krzysz00 Oct 4, 2024
3a47bf6
[SandboxIR] Switch more Instruction::create() to InsertPosition (#111…
Oct 4, 2024
4c26a1e
[SystemZ][z/OS] Use the XL pragma pack semantics on z/OS (#111053)
perry-ca Oct 4, 2024
c0f8889
[SPIRV] Add radians intrinsic (#110800)
adam-yang Oct 4, 2024
45817aa
LICM: hoist BO assoc for and, or, xor (#111146)
artagnon Oct 4, 2024
4281f29
[SPIR-V] Duplicates Tracker accounts for possible changes in Constant…
VyacheslavLevytskyy Oct 4, 2024
c0dfef8
[SLP][NFC]Add a test with potential non-power-of2 (but whole reg) vec…
alexey-bataev Oct 4, 2024
f74879c
[SLP]Make PHICompare comparator follow weak strict ordering requirement
alexey-bataev Oct 4, 2024
3d15aa5
[AutoBump] Merge with f74879cf (Oct 04)
mgehre-amd Jan 10, 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
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ autoconf/autom4te.cache
/CMakeSettings.json
# CLion project configuration
/.idea
/cmake-build*

#==============================================================================#
# Directories to ignore (do not add trailing '/'s, they skip symlinks).
Expand Down
12 changes: 12 additions & 0 deletions clang-tools-extra/clang-tidy/ClangTidy.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -672,6 +672,18 @@ getAllChecksAndOptions(bool AllowEnablingAnalyzerAlphaCheckers) {
Buffer.append(AnalyzerCheck);
Result.Names.insert(Buffer);
}
for (std::string OptionName : {
#define GET_CHECKER_OPTIONS
#define CHECKER_OPTION(TYPE, CHECKER, OPTION_NAME, DESCRIPTION, DEFAULT, \
RELEASE, HIDDEN) \
Twine(AnalyzerCheckNamePrefix).concat(CHECKER ":" OPTION_NAME).str(),

#include "clang/StaticAnalyzer/Checkers/Checkers.inc"
#undef CHECKER_OPTION
#undef GET_CHECKER_OPTIONS
}) {
Result.Options.insert(OptionName);
}
#endif // CLANG_TIDY_ENABLE_STATIC_ANALYZER

Context.setOptionsCollector(&Result.Options);
Expand Down
25 changes: 15 additions & 10 deletions clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -777,7 +777,7 @@ bool ForLoopIndexUseVisitor::TraverseLambdaCapture(LambdaExpr *LE,
const LambdaCapture *C,
Expr *Init) {
if (C->capturesVariable()) {
const ValueDecl *VDecl = C->getCapturedVar();
ValueDecl *VDecl = C->getCapturedVar();
if (areSameVariable(IndexVar, VDecl)) {
// FIXME: if the index is captured, it will count as an usage and the
// alias (if any) won't work, because it is only used in case of having
Expand All @@ -787,6 +787,8 @@ bool ForLoopIndexUseVisitor::TraverseLambdaCapture(LambdaExpr *LE,
: Usage::UK_CaptureByRef,
C->getLocation()));
}
if (VDecl->isInitCapture())
TraverseStmtImpl(cast<VarDecl>(VDecl)->getInit());
}
return VisitorBase::TraverseLambdaCapture(LE, C, Init);
}
Expand Down Expand Up @@ -816,6 +818,17 @@ bool ForLoopIndexUseVisitor::VisitDeclStmt(DeclStmt *S) {
return true;
}

bool ForLoopIndexUseVisitor::TraverseStmtImpl(Stmt *S) {
// All this pointer swapping is a mechanism for tracking immediate parentage
// of Stmts.
const Stmt *OldNextParent = NextStmtParent;
CurrStmtParent = NextStmtParent;
NextStmtParent = S;
bool Result = VisitorBase::TraverseStmt(S);
NextStmtParent = OldNextParent;
return Result;
}

bool ForLoopIndexUseVisitor::TraverseStmt(Stmt *S) {
// If this is an initialization expression for a lambda capture, prune the
// traversal so that we don't end up diagnosing the contained DeclRefExpr as
Expand All @@ -828,15 +841,7 @@ bool ForLoopIndexUseVisitor::TraverseStmt(Stmt *S) {
return true;
}
}

// All this pointer swapping is a mechanism for tracking immediate parentage
// of Stmts.
const Stmt *OldNextParent = NextStmtParent;
CurrStmtParent = NextStmtParent;
NextStmtParent = S;
bool Result = VisitorBase::TraverseStmt(S);
NextStmtParent = OldNextParent;
return Result;
return TraverseStmtImpl(S);
}

std::string VariableNamer::createIndexName() {
Expand Down
2 changes: 2 additions & 0 deletions clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
Original file line number Diff line number Diff line change
Expand Up @@ -354,6 +354,8 @@ class ForLoopIndexUseVisitor
bool VisitDeclStmt(DeclStmt *S);
bool TraverseStmt(Stmt *S);

bool TraverseStmtImpl(Stmt *S);

/// Add an expression to the list of expressions on which the container
/// expression depends.
void addComponent(const Expr *E);
Expand Down
1 change: 1 addition & 0 deletions clang-tools-extra/clangd/refactor/tweaks/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ add_clang_library(clangDaemonTweaks OBJECT
RemoveUsingNamespace.cpp
ScopifyEnum.cpp
SpecialMembers.cpp
SwapBinaryOperands.cpp
SwapIfBranches.cpp

LINK_LIBS
Expand Down
217 changes: 217 additions & 0 deletions clang-tools-extra/clangd/refactor/tweaks/SwapBinaryOperands.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,217 @@
//===--- SwapBinaryOperands.cpp ----------------------------------*- C++-*-===//
//
// 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
//
//===----------------------------------------------------------------------===//
#include "ParsedAST.h"
#include "Protocol.h"
#include "Selection.h"
#include "SourceCode.h"
#include "refactor/Tweak.h"
#include "support/Logger.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Expr.h"
#include "clang/AST/OperationKinds.h"
#include "clang/AST/Stmt.h"
#include "clang/Basic/LLVM.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Tooling/Core/Replacement.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/FormatVariadic.h"
#include <string>
#include <utility>

namespace clang {
namespace clangd {
namespace {
/// Check whether it makes logical sense to swap operands to an operator.
/// Assignment or member access operators are rarely swappable
/// while keeping the meaning intact, whereas comparison operators, mathematical
/// operators, etc. are often desired to be swappable for readability, avoiding
/// bugs by assigning to nullptr when comparison was desired, etc.
bool isOpSwappable(const BinaryOperatorKind Opcode) {
switch (Opcode) {
case BinaryOperatorKind::BO_Mul:
case BinaryOperatorKind::BO_Add:
case BinaryOperatorKind::BO_LT:
case BinaryOperatorKind::BO_GT:
case BinaryOperatorKind::BO_LE:
case BinaryOperatorKind::BO_GE:
case BinaryOperatorKind::BO_EQ:
case BinaryOperatorKind::BO_NE:
case BinaryOperatorKind::BO_And:
case BinaryOperatorKind::BO_Xor:
case BinaryOperatorKind::BO_Or:
case BinaryOperatorKind::BO_LAnd:
case BinaryOperatorKind::BO_LOr:
case BinaryOperatorKind::BO_Comma:
return true;
// Noncommutative operators:
case BinaryOperatorKind::BO_Div:
case BinaryOperatorKind::BO_Sub:
case BinaryOperatorKind::BO_Shl:
case BinaryOperatorKind::BO_Shr:
case BinaryOperatorKind::BO_Rem:
// <=> is noncommutative
case BinaryOperatorKind::BO_Cmp:
// Member access:
case BinaryOperatorKind::BO_PtrMemD:
case BinaryOperatorKind::BO_PtrMemI:
// Assignment:
case BinaryOperatorKind::BO_Assign:
case BinaryOperatorKind::BO_MulAssign:
case BinaryOperatorKind::BO_DivAssign:
case BinaryOperatorKind::BO_RemAssign:
case BinaryOperatorKind::BO_AddAssign:
case BinaryOperatorKind::BO_SubAssign:
case BinaryOperatorKind::BO_ShlAssign:
case BinaryOperatorKind::BO_ShrAssign:
case BinaryOperatorKind::BO_AndAssign:
case BinaryOperatorKind::BO_XorAssign:
case BinaryOperatorKind::BO_OrAssign:
return false;
}
return false;
}

/// Some operators are asymmetric and need to be flipped when swapping their
/// operands
/// @param[out] Opcode the opcode to potentially swap
/// If the opcode does not need to be swapped or is not swappable, does nothing
BinaryOperatorKind swapOperator(const BinaryOperatorKind Opcode) {
switch (Opcode) {
case BinaryOperatorKind::BO_LT:
return BinaryOperatorKind::BO_GT;

case BinaryOperatorKind::BO_GT:
return BinaryOperatorKind::BO_LT;

case BinaryOperatorKind::BO_LE:
return BinaryOperatorKind::BO_GE;

case BinaryOperatorKind::BO_GE:
return BinaryOperatorKind::BO_LE;

case BinaryOperatorKind::BO_Mul:
case BinaryOperatorKind::BO_Add:
case BinaryOperatorKind::BO_Cmp:
case BinaryOperatorKind::BO_EQ:
case BinaryOperatorKind::BO_NE:
case BinaryOperatorKind::BO_And:
case BinaryOperatorKind::BO_Xor:
case BinaryOperatorKind::BO_Or:
case BinaryOperatorKind::BO_LAnd:
case BinaryOperatorKind::BO_LOr:
case BinaryOperatorKind::BO_Comma:
case BinaryOperatorKind::BO_Div:
case BinaryOperatorKind::BO_Sub:
case BinaryOperatorKind::BO_Shl:
case BinaryOperatorKind::BO_Shr:
case BinaryOperatorKind::BO_Rem:
case BinaryOperatorKind::BO_PtrMemD:
case BinaryOperatorKind::BO_PtrMemI:
case BinaryOperatorKind::BO_Assign:
case BinaryOperatorKind::BO_MulAssign:
case BinaryOperatorKind::BO_DivAssign:
case BinaryOperatorKind::BO_RemAssign:
case BinaryOperatorKind::BO_AddAssign:
case BinaryOperatorKind::BO_SubAssign:
case BinaryOperatorKind::BO_ShlAssign:
case BinaryOperatorKind::BO_ShrAssign:
case BinaryOperatorKind::BO_AndAssign:
case BinaryOperatorKind::BO_XorAssign:
case BinaryOperatorKind::BO_OrAssign:
return Opcode;
}
llvm_unreachable("Unknown BinaryOperatorKind enum");
}

/// Swaps the operands to a binary operator
/// Before:
/// x != nullptr
/// ^ ^^^^^^^
/// After:
/// nullptr != x
class SwapBinaryOperands : public Tweak {
public:
const char *id() const final;

bool prepare(const Selection &Inputs) override;
Expected<Effect> apply(const Selection &Inputs) override;
std::string title() const override {
return llvm::formatv("Swap operands to {0}",
Op ? Op->getOpcodeStr() : "binary operator");
}
llvm::StringLiteral kind() const override {
return CodeAction::REFACTOR_KIND;
}
bool hidden() const override { return false; }

private:
const BinaryOperator *Op;
};

REGISTER_TWEAK(SwapBinaryOperands)

bool SwapBinaryOperands::prepare(const Selection &Inputs) {
for (const SelectionTree::Node *N = Inputs.ASTSelection.commonAncestor();
N && !Op; N = N->Parent) {
// Stop once we hit a block, e.g. a lambda in one of the operands.
// This makes sure that the selection point is in the 'scope' of the binary
// operator, not from somewhere inside a lambda for example
// (5 < [](){ ^return 1; })
if (llvm::isa_and_nonnull<CompoundStmt>(N->ASTNode.get<Stmt>()))
return false;
Op = dyn_cast_or_null<BinaryOperator>(N->ASTNode.get<Stmt>());
// If we hit upon a nonswappable binary operator, ignore and keep going
if (Op && !isOpSwappable(Op->getOpcode())) {
Op = nullptr;
}
}
return Op != nullptr;
}

Expected<Tweak::Effect> SwapBinaryOperands::apply(const Selection &Inputs) {
const auto &Ctx = Inputs.AST->getASTContext();
const auto &SrcMgr = Inputs.AST->getSourceManager();

const auto LHSRng = toHalfOpenFileRange(SrcMgr, Ctx.getLangOpts(),
Op->getLHS()->getSourceRange());
if (!LHSRng)
return error(
"Could not obtain range of the 'lhs' of the operator. Macros?");
const auto RHSRng = toHalfOpenFileRange(SrcMgr, Ctx.getLangOpts(),
Op->getRHS()->getSourceRange());
if (!RHSRng)
return error(
"Could not obtain range of the 'rhs' of the operator. Macros?");
const auto OpRng =
toHalfOpenFileRange(SrcMgr, Ctx.getLangOpts(), Op->getOperatorLoc());
if (!OpRng)
return error("Could not obtain range of the operator itself. Macros?");

const auto LHSCode = toSourceCode(SrcMgr, *LHSRng);
const auto RHSCode = toSourceCode(SrcMgr, *RHSRng);
const auto OperatorCode = toSourceCode(SrcMgr, *OpRng);

tooling::Replacements Result;
if (auto Err = Result.add(tooling::Replacement(
Ctx.getSourceManager(), LHSRng->getBegin(), LHSCode.size(), RHSCode)))
return std::move(Err);
if (auto Err = Result.add(tooling::Replacement(
Ctx.getSourceManager(), RHSRng->getBegin(), RHSCode.size(), LHSCode)))
return std::move(Err);
const auto SwappedOperator = swapOperator(Op->getOpcode());
if (auto Err = Result.add(tooling::Replacement(
Ctx.getSourceManager(), OpRng->getBegin(), OperatorCode.size(),
Op->getOpcodeStr(SwappedOperator))))
return std::move(Err);
return Effect::mainFileEdit(SrcMgr, std::move(Result));
}

} // namespace
} // namespace clangd
} // namespace clang
1 change: 1 addition & 0 deletions clang-tools-extra/clangd/unittests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,7 @@ add_unittest(ClangdUnitTests ClangdTests
tweaks/ScopifyEnumTests.cpp
tweaks/ShowSelectionTreeTests.cpp
tweaks/SpecialMembersTests.cpp
tweaks/SwapBinaryOperandsTests.cpp
tweaks/SwapIfBranchesTests.cpp
tweaks/TweakTesting.cpp
tweaks/TweakTests.cpp
Expand Down
Loading
Loading