Skip to content
Closed
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
1460 commits
Select commit Hold shift + click to select a range
eb2af3a
[ComplexDeinterleaving] Use BumpPtrAllocator for CompositeNodes (NFC)…
MacDue Aug 20, 2025
0fa6fdf
AMDGPU: Correct inst size for av_mov_b32_imm_pseudo (#154459)
arsenm Aug 20, 2025
2dc0a5f
[libc++][NFC] Use early returns in a few basic_string functions (#137…
philnik777 Aug 20, 2025
018c5ba
[CIR] Implement MemberExpr with VarDecl for ComplexType (#154307)
AmrDeveloper Aug 20, 2025
e16ced3
[clang][bytecode] Diagnose one-past-end reads from global arrays (#15…
tbaederr Aug 20, 2025
52a2e68
[clang][RISCV] Fix crash on VLS calling convention (#145489)
4vtomat Aug 20, 2025
4dd9e99
[libc] Fix `constexpr` `add_with_carry`/`sub_with_borrow` (#154282)
gchatelet Aug 20, 2025
c34cba0
[AArch64][SME] Lower aarch64.sme.cnts* to vscale when in streaming mo…
kmclaughlin-arm Aug 20, 2025
95fbc18
[MLIR][Wasm] Extending Wasm binary to WasmSSA dialect importer (#154452)
lforg37 Aug 20, 2025
035f40e
[RISCV] incorrect-extract-subvector-combine.ll - remove quotes around…
RKSimon Aug 20, 2025
80bc38b
[RISCV] Silent a warning (NFC)
DamonFool Aug 20, 2025
1741358
[OMPIRBuilder] Use CreateNUWMul instead of passing flags to CreateMul…
tclin914 Aug 20, 2025
6c93525
[RemoveDIs][NFC] Clean up BasicBlockUtils now intrinsics are gone (#1…
OCHyams Aug 20, 2025
46e77eb
[RISCV][NFC] Ensure files end with newline. (#154457)
link-xyq Aug 20, 2025
5f9630b
[Clang] Reapply "Only remove lambda scope after computing evaluation …
zyn0217 Aug 20, 2025
9df7ca1
[GlobalISel] Legalize Saturated Truncate instructions and intrinsics …
jyli0116 Aug 20, 2025
5dbf73f
[Lanai] Use ArgFlags to distinguish fixed parameters (#154278)
nikic Aug 20, 2025
5ae749b
[FunctionAttr] Invalidate callers with mismatching signature (#154289)
nikic Aug 20, 2025
460e9a8
[LLVM][AArch64] Build attributes: Support switching to a defined subs…
sivan-shani Aug 20, 2025
d6a688f
[LLVM][CodeGen][SME] hasB16b16() is not sufficient to prove BFADD ava…
paulwalker-arm Aug 20, 2025
e2a077f
Thread Safety Analysis: Graduate ACQUIRED_BEFORE() and ACQUIRED_AFTER…
melver Aug 20, 2025
af5f16b
[lldb][windows] remove duplicate implementation of UTF8ToUTF16 (#154424)
charles-zablit Aug 20, 2025
fea7e69
[PowerPC] Remove custom original type tracking (NFCI) (#154090)
nikic Aug 20, 2025
0a3ee7d
[PowerPC] fix bug affecting float to int32 conversion on LE PowerPC (…
DanilaZhebryakov Aug 20, 2025
088555c
[CIR] Add support for base classes in type conversion safety check (#…
mmha Aug 20, 2025
93189ec
Revert "[lldb][windows] use Windows APIs to print to the console (#14…
charles-zablit Aug 20, 2025
3b96648
[CIR] Implement__builtin_va_arg (#153834)
mmha Aug 20, 2025
0989ff5
[CIR] Add constant attribute to GlobalOp (#154359)
mmha Aug 20, 2025
dc23869
[LV] Handle vector trip count being zero in preparePlanForEpiVectorLoop.
fhahn Aug 20, 2025
d770567
[X86] SimplifyDemandedVectorEltsForTargetNode - don't split X86ISD::C…
RKSimon Aug 20, 2025
8b12838
[clang] Introduce elementwise ctlz/cttz builtins (#131995)
frasercrmck Aug 20, 2025
b01f059
[CIR] Add support for string literal lvalues in ConstantLValueEmitter…
mmha Aug 20, 2025
19ac1ff
[TableGen][DecoderEmitter] Factor populateFixedLenEncoding (NFC) (#15…
s-barannikov Aug 20, 2025
876fdc9
[bazel] Port #154452: WasmSSA dialect importer (#154516)
rupprecht Aug 20, 2025
c876d53
DAG: Avoid creating illegal extract_subvector in legalizer (#154100)
arsenm Aug 20, 2025
c856e8d
[ARM] Update cmps.ll, control-flow.ll and divrem.ll to use -cost-kind…
davemgreen Aug 20, 2025
4c29521
[SPIR-V] fix return type for OpAtomicCompareExchange (#154297)
simeonschaub Aug 20, 2025
c8986d1
[Offload] Guard olMemAlloc/Free with a mutex (#153786)
RossBrunton Aug 20, 2025
29067ac
[OpenMP][OMPD] Fix GDB plugin to work correctly when installed (#153956)
mgorny Aug 20, 2025
5a929a4
[Clang] Support using boolean vectors in ternary operators (#154145)
jhuber6 Aug 20, 2025
5f0515d
[RISCV] Support Remaining P Extension Instructions for RV32/64 (#150379)
realqhc Aug 20, 2025
c075fb8
[MLIR] Fix duplicated attribute nodes in MLIR bytecode deserializatio…
hankluo6 Aug 20, 2025
478b4b0
[AArch64][SME] Rework VG CFI information for streaming-mode changes (…
MacDue Aug 20, 2025
c56bb12
[lldb] make lit use the same PYTHONHOME for building and running the …
charles-zablit Aug 20, 2025
2738828
[Reland] [CGData] Lazy loading support for stable function map (#154491)
nocchijiang Aug 20, 2025
23a5a7b
[AMDGPU] Support merging 16-bit and 8-bit TBUFFER load/store instruct…
harrisonGPU Aug 20, 2025
6a99ad2
[Debug] Add missing LLVM_ABI annotations
nikic Aug 20, 2025
7eb5031
[GlobalDCE] Add missing LLVM_ABI annotation
nikic Aug 20, 2025
822496d
[SampleContextTracker] Add missing LLVM_ABI annotations
nikic Aug 20, 2025
99119a5
[OpenMPIRBuilder] Add missing LLVM_ABI annotations
nikic Aug 20, 2025
8b2028c
Update log_level for LLVM_DEBUG and associated macros (#154525)
joker-eph Aug 20, 2025
2330fd2
[LoopPeel] Add new option to peeling loops to convert PHI into IV (#1…
kasuga-fj Aug 20, 2025
318b0dd
[CIR] Add atomic load and store operations (#153814)
Lancern Aug 20, 2025
f649605
[clang] Enable constexpr handling for __builtin_elementwise_fma (#152…
ckoparkar Aug 20, 2025
694a488
AMDGPU: Add pseudoinstruction for 64-bit agpr or vgpr constants (#154…
arsenm Aug 20, 2025
e172110
[LV] Don't calculate scalar costs for scalable VFs in setVectorizedCa…
david-arm Aug 20, 2025
6cedf6e
[MLIR] Add missing handling for LLVM_LIT_TOOLS_DIR in mlir lit config…
joker-eph Aug 20, 2025
ea634fe
[clang-repl] Fix InstantiateTemplate & Value test while building agai…
anutosh491 Aug 20, 2025
2f23767
[Clang] [Sema] Enable nodiscard warnings for function pointers (#154250)
halbi2 Aug 20, 2025
c50ed05
[AMDGPU][True16][CodeGen] use vgpr16 for zext patterns (reopen #15389…
broxigarchen Aug 20, 2025
40e1510
[AMDGPU][NFC] Enable gfx942 for more tests (#154363)
JanekvO Aug 20, 2025
30fcf69
[OpenACC] Fixup rules for reduction clause variable refererence type
erichkeane Aug 19, 2025
d282452
[libc++] Avoid string reallocation in `std::filesystem::path::lexical…
tinnamchoi Aug 20, 2025
f1458ec
[bazel] Port #153504: add llvm-offload-wrapper (#154553)
rupprecht Aug 20, 2025
35be64a
[VPlan] Factor out logic to common compute costs to helper (NFCI). (#…
fhahn Aug 20, 2025
2e2349e
[libc++] Add internal checks for some basic_streambuf invariants (#14…
ldionne Aug 20, 2025
0499d3a
[mlir][Interfaces] Add `hasUnknownEffects` helper function (#154523)
matthias-springer Aug 20, 2025
2cfba96
[FileSystem] Allow exclusive file lock (#114098)
cachemeifyoucan Aug 20, 2025
80f3b37
[AMDGPU][GlobalISel] Combine for breaking s64 and/or into two s32 ins…
mbrkusanin Aug 20, 2025
ffe21f1
[clang][dataflow] Transfer more cast expressions. (#153066)
bazuzi Aug 20, 2025
15cb061
[Frontend][OpenMP] Allow multiple occurrences of DYN_GROUPPRIVATE (#1…
kparzysz Aug 20, 2025
a6da68e
[Clang][ASTMatchers] Make `hasConditionVariableStatement` support `fo…
zwuis Aug 20, 2025
f487c0e
[AST] Fix warnings
kazutakahirata Aug 20, 2025
6a285cc
[mlir][IR] Fix `Block::without_terminator` for blocks without termina…
matthias-springer Aug 20, 2025
562e021
[RISCV] Minor refactor of RISCVMoveMerge::mergePairedInsns. (#154467)
topperc Aug 20, 2025
2b7b8bd
[X86] Accept the canonical form of a sign bit test in MatchVectorAllE…
topperc Aug 20, 2025
85043c1
[Clang] Add a builtin that deduplicate types into a pack (#106730)
ilya-biryukov Aug 20, 2025
fdfcebb
[clang][SYCL] Add sycl_external attribute and restrict emitting devic…
schittir Aug 20, 2025
63195d3
[NFC][CMake] quote ${CMAKE_SYSTEM_NAME} consistently (#154537)
daltenty Aug 20, 2025
65de318
[Sema] Fix a warning
kazutakahirata Aug 20, 2025
d69ccde
[MLIR] Add cpow support in ComplexToROCDLLibraryCalls (#153183)
TIFitis Aug 20, 2025
2be52f3
[clang][dataflow] Fix uninitialized memory bug. (#154575)
ymand Aug 20, 2025
9f16791
[flang][OpenMP] Update GetOmpObjectList, move to parser utils (#154389)
kparzysz Aug 20, 2025
d76bb2b
[mlir] Fix missing `mlir-capi-global-constructors-test` on standalone…
mgorny Aug 20, 2025
15babba
[DirectX] Add boilerplate integration of `objcopy` for `DXContainerOb…
inbelic Aug 20, 2025
410a134
[clang][bytecode] Silence unused variable warning
aganea Aug 20, 2025
2f6b747
[Clang] Add queryable feature 'ext_vector_type_boolean' for SIMD mask…
jhuber6 Aug 20, 2025
9888f0c
[Clang] Add builtins for masked vector loads / stores (#154464)
jhuber6 Aug 20, 2025
8d7b50e
[Offload][Conformance] Add `RandomGenerator` for large input spaces (…
leandrolcampos Aug 20, 2025
691ccf2
[NVPTX] Implement computeKnownBitsForTargetNode for LoadV (#154165)
kalxr Aug 20, 2025
8ed9c61
[NFC] Remove unneeded forward declaration of diagnoseUncapturableValu…
tahonermann Aug 20, 2025
60dbde6
[AMDGPU] report named barrier cnt part2 (#154588)
cmc-rep Aug 20, 2025
e1dbe09
[clang] build UnresolvedUsingType for constructor initializers (#154592)
mizvekov Aug 20, 2025
b0d0e04
[LV] Add test where we choose VF * IC is larger than trip count.
fhahn Aug 20, 2025
bd94aab
[AArch64][GlobalISel] Remove Selection code for s/uitofp. NFC (#154488)
davemgreen Aug 20, 2025
4875553
[AArch64][GlobalISel] Port unmerge KnownBits tests to print<gisel-val…
davemgreen Aug 20, 2025
4e6c88b
[TTI] Remove Args argument from getOperandsScalarizationOverhead (NFC…
fhahn Aug 20, 2025
45e2c50
[M68k] Fix reverse BTST condition causing opposite failure/success lo…
dansalvato Aug 20, 2025
a4e8ec9
[flang][cuda][NFC] Add getDataAttr helper (#154586)
clementval Aug 20, 2025
e6b4a21
[IR] Add utilities for manipulating length of MemIntrinsic [nfc] (#15…
preames Aug 20, 2025
2a66ce5
[Clang][NFC] Clarify some SourceManager related code (#153527)
shafik Aug 20, 2025
cbfa265
[MLIR][LLVMIR][DLTI] Add `LLVM::TargetAttrInterface` and `#llvm.targe…
rolfmorel Aug 20, 2025
0a7eabc
Reapply "[APFloat] Fix getExactInverse for DoubleAPFloat"
majnemer Aug 15, 2025
c6fa115
[clang][analyzer] Relax assertion for non-default address spaces in t…
nuudlman Aug 20, 2025
5683bae
[MLIR] Adopt LDBG() debug macro in bufferization (NFC) (#154614)
joker-eph Aug 20, 2025
5c4f506
[BOLT] Validate extra entry point by querying data marker symbols (#1…
yozhu Aug 20, 2025
780750b
[MLIR] Adopt LDBG() debug macro in ConvertToLLVMPass (NFC) (#154616)
joker-eph Aug 20, 2025
ffbc8da
[MLIR] Migrate LICM utils to the LDBG() macro style logging (NFC) (#1…
joker-eph Aug 20, 2025
6445a75
[MLIR] Update MLIRContext to use the LDBG() style debug macro (NFC) (…
joker-eph Aug 20, 2025
59b3324
[CIR][NFC] Fix warning in MemOrder lowering (#154609)
andykaylor Aug 20, 2025
7d33743
[LV] Add tests for narrowing interleave groups with scalable vectors.
fhahn Aug 20, 2025
484d040
[lldb] Fix source line annotations for libsanitizers traces (#154247)
yln Aug 20, 2025
0db57ab
[VPlan] Improve code using onlyScalarValuesUsed (NFC) (#154564)
artagnon Aug 20, 2025
deab049
[CAS] Add ActionCache to LLVMCAS Library (#114097)
cachemeifyoucan Aug 20, 2025
4be19e2
[MLIR] Adopt LDBG() debug macros in Affine LoopAnalysis.cpp (NFC) (#1…
joker-eph Aug 20, 2025
d20a74e
[MLIR] Adopt LDBG() macro in BasicPtxBuilderInterface.cpp (NFC) (#154…
joker-eph Aug 20, 2025
575fad2
[AMDGPU] Upstream the Support for array of named barriers (#154604)
cmc-rep Aug 20, 2025
55551da
[lldb] Add missing case statements for SubstBuiltinTemplatePack (#154…
kazutakahirata Aug 20, 2025
904b4f5
[clang][timers][modules] Fix a timer being started when it's running …
alanzhao1 Aug 20, 2025
dbbd3f0
[MLIR] Adopt LDBG() macro in Affine/Analysis/Utils.cpp (NFC) (#154626)
joker-eph Aug 20, 2025
46343ca
[TableGen][DecoderEmitter] Add DecoderMethod to InstructionEncoding (…
s-barannikov Aug 20, 2025
ac8f0bb
[RISCV] Reduce ManualCodeGen for segment load/store intrinsics. NFC
topperc Aug 20, 2025
c80d148
[libc] Enable wide-read memory operations by default on Linux (#154602)
jhuber6 Aug 20, 2025
2cb7c46
[RISCV] Add missing 'OrP' to comment in RISCVInstrInfoZb.td. NFC
topperc Aug 20, 2025
27fc967
Revert "[libc] Enable wide-read memory operations by default on Linux…
jhuber6 Aug 20, 2025
8b64cd8
[lldb-dap] Add module symbol table viewer to VS Code extension #14062…
eronnen Aug 20, 2025
908eebc
[MLIR] Adopt LDBG() macro in PDL ByteCodeExecutor (NFC) (#154641)
joker-eph Aug 20, 2025
62b29d9
[MLIR] Adopt LDBG() debug macro in BytecodeWriter.cpp (NFC) (#154642)
joker-eph Aug 20, 2025
3856bb6
[flang] [acc] Adding allocation to the recipe of scalar allocatables …
Renaud-K Aug 20, 2025
ff5f396
AMDGPU: Handle rewriting non-tied MFMA to AGPR form (#153015)
arsenm Aug 20, 2025
db0ecea
[AMDGPU] Fix uncaught changes made by AMDGPUPreloadKernelArgumentsPas…
mshockwave Aug 20, 2025
8a5b6b3
[flang] Use SmallPtrSet directly instead of SmallSet (NFC) (#154471)
kazutakahirata Aug 20, 2025
7be06db
[lldb] Use SmallPtrSet directly instead of SmallSet (NFC) (#154472)
kazutakahirata Aug 20, 2025
9aae8ef
[Scalar] Use SmallPtrSet directly instead of SmallSet (NFC) (#154473)
kazutakahirata Aug 20, 2025
cf0e861
[VPlan] Handle canonical VPWidenIntOrFpInduction in branch-condition …
arcbbb Aug 20, 2025
d611a9c
[LV][VPlan] Reduce register usage of VPEVLBasedIVPHIRecipe. (#154482)
ElvisWang123 Aug 20, 2025
3a0fa12
DAG: Handle half spanning extract_subvector in type legalization (#15…
arsenm Aug 21, 2025
156f3fc
AMDGPU: Handle rewriting VGPR MFMAs with immediate src2 (#153016)
arsenm Aug 21, 2025
744cd8a
AMDGPU: Add some baseline test for mfma rewrite with subregister copi…
arsenm Aug 21, 2025
8cb6bfe
[RISCV] Reduce ManualCodeGen for RVV intrinsics with rounding mode. NFC
topperc Aug 21, 2025
3c8652e
[compiler-rt][Fuchsia] Change GetMaxUserVirtualAddress to invoke sysc…
PiJoules Aug 21, 2025
fd28257
[DAGCombiner] Fold umax/umin operations with vscale operands (#154461)
tclin914 Aug 21, 2025
eefad74
AMDGPU: Handle rewriting VGPR MFMA to AGPR with subregister copies (#…
arsenm Aug 21, 2025
bcf41e0
AMDGPU: Add baseline test for vgpr mfma with copied-from AGPR (#153020)
arsenm Aug 21, 2025
e414585
AMDGPU: Add baseline test for mfma rewrite with phi (#153021)
arsenm Aug 21, 2025
c811f52
[ProfCheck] Add list of xfail tests (#154655)
boomanaiden154 Aug 21, 2025
91569fa
[CIR][NFC] Use Op::create to create CIR operations in CIRGenBuilder (…
Lancern Aug 21, 2025
90d601d
[bazel][LLVMIR] Port #145899: Add target attrs (#154660)
rupprecht Aug 21, 2025
918c0ac
[bazel] Port #154616: LDBG in ConvertToLLVMPass (#154661)
rupprecht Aug 21, 2025
d6679d5
[Target] Remove SoftFail field on targets that don't use it (NFC) (#1…
s-barannikov Aug 21, 2025
2d3d8df
[RISCV] Use RVPTernary_rrr for a few more instructions.
topperc Aug 21, 2025
3a71510
[RISCV] Fold argstr into class for XSMTVDot instructions. NFC.
tclin914 Aug 21, 2025
3baddbb
Do not trigger -Wmissing-noreturn on lambdas prior to C++23 (#154545)
carlosgalvezp Aug 21, 2025
62aaa96
[SDAG[[X86] Added method to scalarize `STRICT_FSETCC` (#154486)
abhishek-kaushik22 Aug 21, 2025
b96d5c2
[TableGen][DecoderEmitter] Outline InstructionEncoding constructor (N…
s-barannikov Aug 21, 2025
1ff7c8b
[compiler-rt] Fix musl build
kongy Aug 21, 2025
e0acf65
[clang][bytecode] Call CheckFinalLoad in all language modes (#154496)
tbaederr Aug 21, 2025
0977a6d
[clang][CodeComplete] Consider qualifiers of explicit object paramete…
MythreyaK Aug 21, 2025
b69fd34
[Offload] Add oneInterationPerThread param to loop device RTL (#151959)
DominikAdamski Aug 21, 2025
f60ff00
[libcxx][test] Silence nodiscard warnings (#154622)
StephanTLavavej Aug 21, 2025
ff5767a
[clangd] Add feature modules registry (#153756)
ArcsinX Aug 21, 2025
810ea69
[LiveRegUnits] Exclude runtime defined liveins when computing liveout…
MacDue Aug 21, 2025
e4b110a
[Headers][X86] Allow FMA3/FMA4 vector intrinsics to be used in conste…
RKSimon Aug 21, 2025
f2aedc2
[clang][DebugInfo][test] Move debug-info tests from CodeGenCXX to Deb…
Michael137 Aug 21, 2025
5c411b3
[libclc] Use elementwise ctlz/cttz builtins for CLC clz/ctz (#154535)
frasercrmck Aug 21, 2025
a969239
[RISCV] Move volatile check to isCandidate in VL optimizer. NFC (#154…
lukel97 Aug 21, 2025
273ca1f
[Offload] Fix `OL_DEVICE_INFO_MAX_MEM_ALLOC_SIZE` on AMD (#154521)
RossBrunton Aug 21, 2025
2e74cc6
[Offload][NFC] Use a sensible order for APIGen (#154518)
RossBrunton Aug 21, 2025
17a98f8
[RISCV] Optimize the spill/reload of segment registers (#153184)
wangpc-pp Aug 21, 2025
d9d71bd
[AArch64] Move BSL generation to lowering. (#151855)
davemgreen Aug 21, 2025
f9c20ba
[X86] Rename `fp80-strict-vec-cmp.ll` to `scalarize-strict-fsetcc.ll`…
abhishek-kaushik22 Aug 21, 2025
8a10fbb
[orc-rt] Expand span.h file comment. NFC.
lhames Aug 20, 2025
2380d0a
[orc-rt] Add preliminary math.h header and basic operations.
lhames Aug 21, 2025
ca0a8d9
[orc-rt] Add bitmask-enum helper utilities.
lhames Aug 21, 2025
9039b59
[orc-rt] Add rtti header and unit tests.
lhames Aug 21, 2025
bfab808
[libunwind] Add support for the AArch64 "Vector Granule" (VG) registe…
MacDue Aug 21, 2025
26d4e56
[Clang] Fix dedup-types-builtin.cpp test when -std=c++20
ilya-biryukov Aug 21, 2025
bcf09c1
[ARM][Disassembler] Advance IT State when instruction is unknown (#15…
smithp35 Aug 21, 2025
5db67e1
[GlobalISel] Add a fadd 0.0 combine with nsz (#153748)
davemgreen Aug 21, 2025
4da6972
[X86] test_mm512_mask_fmadd_ps - add missing select checks
RKSimon Aug 21, 2025
7439d22
[MLIR][NVVM] Add nanosleep (#154697)
grypp Aug 21, 2025
955c475
[VPlan] Add m_Sub to VPlanPatternMatch. NFC (#154705)
lukel97 Aug 21, 2025
0c480dd
[clang][CodeGen] cast addr space of ReturnValue if needed (#154380)
macurtis-amd Aug 21, 2025
60ee056
[flang] Fix `replaceAllUsesWith` API violations (1/N) (#154698)
matthias-springer Aug 21, 2025
5928619
[lit] Add support to print paths relative to CWD in the test summary …
bjope Aug 21, 2025
db0529d
[MLIR] Use LDBG() macro in Dialect.cpp (NFC) (#154720)
joker-eph Aug 21, 2025
30f9428
[MLIR] Adopt LDBG() macro in LLVM/NVVM/Target.cpp (#154721)
joker-eph Aug 21, 2025
b916df3
[MLIR] Adopt LDBG() in Transform/IR/Utils.cpp (NFC) (#154722)
joker-eph Aug 21, 2025
acda808
[MLIR] Adopt LDBG() macro in BuiltinAttributes.cpp (NFC) (#154723)
joker-eph Aug 21, 2025
98867bf
[AArch64] [CostModel] Fix cost modelling for saturating arithmetic in…
marykass-arm Aug 21, 2025
b20c291
[MLIR] Adopt LDBG() debug macro in PatternApplicator.cpp (NFC) (#154724)
joker-eph Aug 21, 2025
d67dba5
[VPlan] Check Def2LaneDefs first in cloneForLane. (NFC)
fhahn Aug 21, 2025
21bd3a7
[clang][bytecode] Check for unknown size array pointers in InitField*…
tbaederr Aug 21, 2025
f306e0a
Revert "[clangd] Add feature modules registry" (#154711)
ArcsinX Aug 21, 2025
c9bb3bd
[clang][bytecode] Fix a crash with typeid pointers (#154692)
tbaederr Aug 21, 2025
2ea5ec7
[clang][bytecode] Fix a crash in Destroy op (#154695)
tbaederr Aug 21, 2025
5ef28e0
[VPlan] Add m_c_Add to VPlanPatternMatch. NFC (#154730)
lukel97 Aug 21, 2025
40b129a
[llvm-lit] Fix test checks for print-relative-path.py
bjope Aug 21, 2025
35f01ce
[OpenMP] Add ompTest library to OpenMP (#147381)
mhalk Aug 21, 2025
ad63a70
[ADT] Add fshl/fshr operations to APInt (#153790)
ckoparkar Aug 21, 2025
13ae82d
AMDGPU: Fix broken check lines in test (#154690)
arsenm Aug 21, 2025
9ccdadd
Revert "[OpenMP] Add ompTest library to OpenMP" (#154742)
jplehr Aug 21, 2025
5af7263
[mlir] add getViewDest method to viewLikeOpInterface (#154524)
cxy-1993 Aug 21, 2025
2b1dcf5
[libc] Remove hardcoded sizeof in __barrier_type.h (#153718)
mikhailramalho Aug 21, 2025
6ac01d1
Reapply "[libc] Enable wide-read memory operations by default on Linu…
jhuber6 Aug 21, 2025
f3508aa
[llvm][Support] Fix missing-field-initializer warnings for crashrepor…
Michael137 Aug 21, 2025
a33e505
[C99] Update documentation for scope of variables in loops; NFC (#154…
AaronBallman Aug 21, 2025
f09ac1b
[clang][bytecode] Fix an out-of-bounds access with ia32_pmul* (#154750)
tbaederr Aug 21, 2025
7d167f4
[C++] Expose nullptr_t from stddef.h in C++ mode (#154599)
AaronBallman Aug 21, 2025
bd63d93
[flang][OpenMP] Sort OpenMP-related names in dump-parse-tree.h, NFC (…
kparzysz Aug 21, 2025
3596005
Fix wide read defaults
jhuber6 Aug 21, 2025
e90ce51
Disable asan on last wide string function
jhuber6 Aug 21, 2025
71dd4e1
[libc] fix strsep()/strtok()/strtok_r() "subsequent searches" behavio…
enh-google Aug 21, 2025
b614975
AMDGPU: Fix expensive_checks machine verifier errors in new tests
arsenm Aug 21, 2025
42cf9c6
[RISCV] Mark Sub/AddChainWithSubs as legal reduction types (#154753)
lukel97 Aug 21, 2025
e21b0dd
[llvm-lit] Second attempt to fix print-relative-path.py
bjope Aug 21, 2025
5d4aa87
[AMDGPU] Remove redundant isAMDGCN check. NFC.
jayfoad Aug 21, 2025
3d41197
[MLIR] Introduce RemarkEngine + pluggable remark streaming (YAML/Bits…
grypp Aug 21, 2025
17eb05d
Revert "[C++] Expose nullptr_t from stddef.h in C++ mode" (#154767)
AaronBallman Aug 21, 2025
3f97736
[clang][bytecode] Implement ia32_select* builtins (#154758)
tbaederr Aug 21, 2025
dbadab9
[GlobalISel] Support saturated truncate (#150219)
jyli0116 Aug 21, 2025
cfef05e
[InstCombine] Add tests for (inttoptr (add (ptrtoint %Base), %Offset)).
fhahn Aug 21, 2025
a53e73e
[SPIRV][HLSL] Add DXC compatibility option for extension (#151554)
s-perron Aug 21, 2025
32a5adb
[MLIR][Linalg] Rename convolution pass (#154400)
rengolin Aug 21, 2025
68d6866
[mlir][XeGPU] add WgToSg distribution pattern for load_matrix and sto…
chencha3 Aug 21, 2025
0594bad
[AMDGPU] Remove "using namespace" from a header. NFC. (#154776)
jayfoad Aug 21, 2025
1b0b59a
[InstComb] Fold inttoptr (add (ptrtoint %B), %O) -> GEP for ICMP user…
fhahn Aug 21, 2025
5c36fb3
[MLIR][NVVM] Improve inline_ptx, add readwrite support (#154358)
grypp Aug 21, 2025
a96b78c
[SCEVPatternMatch] Add signed cst match; use in LV (NFC) (#154568)
artagnon Aug 21, 2025
035dd1d
[ADT] Fix a warning
kazutakahirata Aug 21, 2025
86c9a7b
[lldb] Remove unused XcodeSDK::SupportsSwift (NFC) (#154572)
kastiglione Aug 21, 2025
dacabc1
[lldb] Tweak check for CommandLineTools in ParseXcodeSDK (#154574)
kastiglione Aug 21, 2025
3923adf
[clang][bytecode] Guard strcmp against differing element types (#154777)
tbaederr Aug 21, 2025
fc62990
[CIR] Upstream GotoSolver pass (#154596)
Andres-Salamanca Aug 21, 2025
1d1d4cc
Apply suggestions from code review
abhishek-kaushik22 Aug 21, 2025
e20fa4f
[mlir][AMDGPU] Add PermlaneSwapOp (#154345)
tgymnich Aug 21, 2025
eed5f06
[Offload][Conformance] Add randomized tests for single-precision biva…
leandrolcampos Aug 21, 2025
9576a10
[bazel] Port #152474: RemarkEngine (#154792)
rupprecht Aug 21, 2025
b5fc4fd
[LAA] Add test requiring runtime checks with -max-dependences flag.
fhahn Aug 21, 2025
436f391
[Clang][Codegen][NFC] Apply rule of three to some classes (#154671)
shafik Aug 21, 2025
ec40d91
Add non-failing test
abhishek-kaushik22 Aug 21, 2025
761125f
[CIR][Dialect] Add SourceLangAttr (#152511)
seven-mile Aug 21, 2025
c5466c6
[CIR] Add CIR vtable attribute (#154415)
andykaylor Aug 21, 2025
bce9b6d
[Flang][Flang-Driver]Fix to add atomic control options in non-fc1 mod…
anchuraj Aug 21, 2025
255eb17
[Clang]Throw frontend error for target feature mismatch when using fl…
abhishek-kaushik22 Jul 22, 2025
9638206
Add new diagnostic error for flatten
abhishek-kaushik22 Aug 10, 2025
98e1459
Apply suggestions from code review
abhishek-kaushik22 Aug 21, 2025
53fae7a
Add non-failing test
abhishek-kaushik22 Aug 21, 2025
6171b73
Update ReleaseNotes.rst
abhishek-kaushik22 Aug 21, 2025
49735f1
Merge branch '149866' of https://github.com/abhishek-kaushik22/llvm-p…
abhishek-kaushik22 Aug 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions clang/include/clang/Basic/DiagnosticFrontendKinds.td
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,10 @@ def err_function_needs_feature : Error<
"always_inline function %1 requires target feature '%2', but would "
"be inlined into function %0 that is compiled without support for '%2'">;

def err_flatten_function_needs_feature
: Error<"flatten function %0 calls %1 which requires target feature '%2', "
"but the caller is compiled without support for '%2'">;

let CategoryName = "Codegen ABI Check" in {
def err_function_always_inline_attribute_mismatch : Error<
"always_inline function %1 and its caller %0 have mismatching %2 attributes">;
Expand Down
9 changes: 6 additions & 3 deletions clang/lib/CodeGen/CGCall.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5243,9 +5243,12 @@ RValue CodeGenFunction::EmitCall(const CGFunctionInfo &CallInfo,
// since otherwise we could be making a conditional call after a check for
// the proper cpu features (and it won't cause code generation issues due to
// function based code generation).
if (TargetDecl->hasAttr<AlwaysInlineAttr>() &&
(TargetDecl->hasAttr<TargetAttr>() ||
(CurFuncDecl && CurFuncDecl->hasAttr<TargetAttr>())))
if ((TargetDecl->hasAttr<AlwaysInlineAttr>() &&
(TargetDecl->hasAttr<TargetAttr>() ||
(CurFuncDecl && CurFuncDecl->hasAttr<TargetAttr>()))) ||
(CurFuncDecl && CurFuncDecl->hasAttr<FlattenAttr>() &&
(CurFuncDecl->hasAttr<TargetAttr>() ||
TargetDecl->hasAttr<TargetAttr>())))
checkTargetFeatures(Loc, FD);
}

Expand Down
45 changes: 31 additions & 14 deletions clang/lib/CodeGen/CodeGenFunction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2827,6 +2827,9 @@ void CodeGenFunction::checkTargetFeatures(SourceLocation Loc,
if (!FD)
return;

bool IsAlwaysInline = TargetDecl->hasAttr<AlwaysInlineAttr>();
bool IsFlatten = FD && FD->hasAttr<FlattenAttr>();

// Grab the required features for the call. For a builtin this is listed in
// the td file with the default cpu, for an always_inline function this is any
// listed cpu and any listed features.
Expand Down Expand Up @@ -2869,25 +2872,39 @@ void CodeGenFunction::checkTargetFeatures(SourceLocation Loc,
if (F.getValue())
ReqFeatures.push_back(F.getKey());
}
if (!llvm::all_of(ReqFeatures, [&](StringRef Feature) {
if (!CallerFeatureMap.lookup(Feature)) {
MissingFeature = Feature.str();
return false;
}
return true;
}) && !IsHipStdPar)
CGM.getDiags().Report(Loc, diag::err_function_needs_feature)
<< FD->getDeclName() << TargetDecl->getDeclName() << MissingFeature;
if (!llvm::all_of(ReqFeatures,
[&](StringRef Feature) {
if (!CallerFeatureMap.lookup(Feature)) {
MissingFeature = Feature.str();
return false;
}
return true;
}) &&
!IsHipStdPar) {
if (IsAlwaysInline)
CGM.getDiags().Report(Loc, diag::err_function_needs_feature)
<< FD->getDeclName() << TargetDecl->getDeclName() << MissingFeature;
else if (IsFlatten)
CGM.getDiags().Report(Loc, diag::err_flatten_function_needs_feature)
<< FD->getDeclName() << TargetDecl->getDeclName() << MissingFeature;
}

} else if (!FD->isMultiVersion() && FD->hasAttr<TargetAttr>()) {
llvm::StringMap<bool> CalleeFeatureMap;
CGM.getContext().getFunctionFeatureMap(CalleeFeatureMap, TargetDecl);

for (const auto &F : CalleeFeatureMap) {
if (F.getValue() && (!CallerFeatureMap.lookup(F.getKey()) ||
!CallerFeatureMap.find(F.getKey())->getValue()) &&
!IsHipStdPar)
CGM.getDiags().Report(Loc, diag::err_function_needs_feature)
<< FD->getDeclName() << TargetDecl->getDeclName() << F.getKey();
if (F.getValue() &&
(!CallerFeatureMap.lookup(F.getKey()) ||
!CallerFeatureMap.find(F.getKey())->getValue()) &&
!IsHipStdPar) {
if (IsAlwaysInline)
CGM.getDiags().Report(Loc, diag::err_function_needs_feature)
<< FD->getDeclName() << TargetDecl->getDeclName() << F.getKey();
else if (IsFlatten)
CGM.getDiags().Report(Loc, diag::err_flatten_function_needs_feature)
<< FD->getDeclName() << TargetDecl->getDeclName() << F.getKey();
}
}
}
}
Expand Down
12 changes: 12 additions & 0 deletions clang/test/CodeGen/target-features-error-3.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// RUN: %clang_cc1 %s -triple=x86_64-linux-gnu -S -verify -o -

typedef double __v2df __attribute__((__vector_size__(16)));

__v2df __attribute__((target("sse4.1"))) foo() {
__v2df v = {0.0, 0.0};
return __builtin_ia32_roundpd(v, 2);
}

__v2df __attribute__((flatten)) bar() {
return foo(); // expected-error {{flatten function 'bar' calls 'foo' which requires target feature 'sse4.1', but the caller is compiled without support for 'sse4.1'}}
}
12 changes: 12 additions & 0 deletions clang/test/CodeGen/target-features-error-4.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// RUN: %clang_cc1 %s -triple=x86_64-linux-gnu -S -verify -o -

typedef double __v2df __attribute__((__vector_size__(16)));

__v2df __attribute__((target("sse4.1"))) foo() {
__v2df v = {0.0, 0.0};
return __builtin_ia32_roundpd(v, 2);
}

__v2df __attribute__((target("no-sse4.1"), flatten)) bar() {
return foo(); // expected-error {{flatten function 'bar' calls 'foo' which requires target feature 'sse4.1', but the caller is compiled without support for 'sse4.1'}}
}
12 changes: 12 additions & 0 deletions clang/test/CodeGen/target-features-error-5.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// RUN: %clang_cc1 %s -triple=x86_64-linux-gnu -target-feature +sse4.1 -S -verify -o -

typedef double __v2df __attribute__((__vector_size__(16)));

__v2df foo() {
__v2df v = {0.0, 0.0};
return __builtin_ia32_roundpd(v, 2);
}

__v2df __attribute__((target("no-sse4.1"), flatten)) bar() {
return foo(); // expected-error {{flatten function 'bar' calls 'foo' which requires target feature 'sse4.1', but the caller is compiled without support for 'sse4.1'}}
}