Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[AutoBump] Merge with e99755d4 (Sep 16) (3) #417

Merged
merged 482 commits into from
Dec 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
482 commits
Select commit Hold shift + click to select a range
d4f41be
[Utils] add update-verify-tests.py (#97369)
hnrklssn Sep 13, 2024
4c040c0
[Coroutines] Move Shape to its own header (#108242)
TylerNowicki Sep 13, 2024
d0e7714
[AMDGPU] Error on non-global pointer with s_prefetch_data (#107624)
rampitec Sep 13, 2024
d588e49
[mlir][Transforms][NFC] Dialect conversion: Cache `UnresolvedMaterial…
matthias-springer Sep 13, 2024
9f738c8
[SandboxIR] Implement GlobalObject (#108604)
vporpo Sep 13, 2024
39f2d2f
[SandboxVec] Boilerplate for vectorization passes (#108603)
vporpo Sep 13, 2024
c3ac3fe
[OpenMP] Fix redefining `stdint.h` types (#108607)
jhuber6 Sep 13, 2024
98b1d01
[SLP][NFC]Test with incorrect value for phi node with reused scalars,…
alexey-bataev Sep 13, 2024
c13bf6d
[SLP]Return proper value for phi vectorized node
alexey-bataev Sep 13, 2024
0ba8b24
[Xtensa] Lowering FRAMEADDR/RETURNADDR operations. (#107363)
andreisfr Sep 13, 2024
1fc3ca1
[RISCV] Add Zvfhmin to RISCVUsage.rst. NFC (#108574)
topperc Sep 13, 2024
29e5fe7
[gn build] Port 39f2d2f156ba
llvmgnsyncbot Sep 13, 2024
21e3a21
[InstCombine] Replace an integer comparison of a `phi` node with mult…
Poseydon42 Sep 13, 2024
b659abe
[libc] Fix vdso VER_FLG_BASE redefinition in overlay mod. (#108628)
lntue Sep 13, 2024
75a57ed
VPlan/Builder: inline VPBuilder::createICmp (NFC) (#105650)
artagnon Sep 13, 2024
b7e585b
Revert "[Utils] add update-verify-tests.py" (#108630)
jurahul Sep 13, 2024
acf90fd
[WebAssembly] Create separate file for EH assembly tests (#108472)
aheejin Sep 13, 2024
b74e779
[x86] Add lowering for `@llvm.experimental.vector.compress` (#104904)
lawben Sep 13, 2024
aca226c
[Bazel] Fix build break for SandboxVectorizer (#108638)
pranavk Sep 13, 2024
ae3e825
[SandboxIR] Implement GlobalIFunc (#108622)
vporpo Sep 13, 2024
5130f32
[SandboxVec] User-defined pass pipeline (#108625)
vporpo Sep 13, 2024
a26ec54
[clang-scan-deps] Infer the tool locations from PATH (#108539)
mstorsjo Sep 13, 2024
1b4aea6
[gn build] Port a26ec5423716
llvmgnsyncbot Sep 13, 2024
90f077c
[lldb] Emit signpost intervals for progress events (NFC) (#108498)
JDevlieghere Sep 13, 2024
ebf25d9
[-Wunsafe-buffer-usage] Reduce false positives with constant arrays i…
ziqingluo-90 Sep 13, 2024
2222e27
[HLSL] Add HLSL 202y language mode (#108437)
llvm-beanz Sep 13, 2024
c3fda44
[VPlan] Use VPBuilder to create scalar IV steps and derived IV (NFCI).
fhahn Sep 13, 2024
6cbb245
[SandboxIR] Implement missng Instruction::comesBefore() (#108635)
vporpo Sep 13, 2024
a592e4b
[bazel] add vdso dependency to time_linux lib (#108647)
pranavk Sep 13, 2024
ee3f5c2
[bazel] Port a953982cb7dee0678bb5f7c2febe4c3b8b718c7a (#108651)
keith Sep 13, 2024
f885e02
Revert "[clang] Silence GCC warnings about control reaching end of no…
fmayer Sep 13, 2024
e1bd974
Revert "Reapply "[clang] Extend diagnose_if to accept more detailed w…
fmayer Sep 13, 2024
d1ba432
[lld] select a default eflags for hexagon (#108431)
androm3da Sep 13, 2024
d0638ed
[bazel][NFC] Use globs to make `Vectorize` less brittle (#108644)
rupprecht Sep 13, 2024
ddcc601
[CoroSplit][DebugInfo] Adjust heuristic for moving DIScope of funclet…
felipepiovezan Sep 13, 2024
cfd0c4f
[OpenMP][MLIR] Fix code bug from #101707
TIFitis Sep 13, 2024
77bab2a
[llvm][unittests] Strip unneeded use of raw_string_ostream::str() (NFC)
JOE1994 Sep 13, 2024
03618ce
[HLSL] Fix move assignment of `this` (#108445)
llvm-beanz Sep 13, 2024
1e3536e
[SLP]Fix PR108620: Need to check, if the reduced value was transformed
alexey-bataev Sep 13, 2024
52b48a7
[llvm][unittests] Strip unneeded use of raw_string_ostream::str() (NFC)
JOE1994 Sep 13, 2024
12d4769
Revert "[MemProf] Streamline and avoid unnecessary context id duplica…
teresajohnson Sep 13, 2024
c6c3803
[RISCV] Add documentation that Zvbc and Zvk* are supported through in…
topperc Sep 13, 2024
b7914df
[clang-tidy] add default error message for performance-avoid-endl (#1…
HerrCai0907 Sep 13, 2024
ca49739
[mlir][mesh] Introduce `DialectInlinerInterface` for Mesh dialect (#1…
mfrancio Sep 13, 2024
536bdc9
[Coverage] Skip empty profile name section (#108480)
gulfemsavrun Sep 13, 2024
c010b72
[HEXAGON] AddrModeOpt support for HVX and optimize adds (#106368)
quic-asaravan Sep 13, 2024
459a82e
[llvm][unittests] Don't call raw_string_ostream::flush() (NFC)
JOE1994 Sep 13, 2024
0e34dbb
[mlir][sparse] fix bug with all-dense assembler (#108615)
aartbik Sep 14, 2024
d3cdf0f
[LLVM][Option] Refactor option name comparison (#108219)
jurahul Sep 14, 2024
1b913cd
[clang][CodeGen] Strip unneeded calls to raw_string_ostream::str() (NFC)
JOE1994 Sep 14, 2024
d200965
[gn build] Port d3cdf0f2220c
llvmgnsyncbot Sep 14, 2024
cab1ae9
Adding `asuint` implementation to hlsl (#107292)
joaosaffran Sep 14, 2024
52b3c36
[NFC][DirectX] Remove rcp dx intrinsic (#108626)
farzonl Sep 14, 2024
d6d4a48
[WebAssembly] Add type checking for 'throw' (#108641)
aheejin Sep 14, 2024
7836603
[gn build] Port cab1ae9fa2d6
llvmgnsyncbot Sep 14, 2024
9ceb967
Reland "[Utils] add update-verify-tests.py" (#108630)" (#108658)
hnrklssn Sep 14, 2024
00f239e
[MLIR][TOSA] Add --tosa-reduce-transposes pass (#108260)
arteen1000 Sep 14, 2024
1825cf2
[LoongArch][sanitizer] Fix SC_ADDRERR_{RD,WR} missing in the musl env…
heiher Sep 14, 2024
d32fe95
[BOLT][AArch64] Do not relax ADR referencing the same fragment (#108673)
maksfb Sep 14, 2024
c0b7f1b
[libc][math][c23] add darwin entrypoints for fmul (#108680)
Sep 14, 2024
82266d3
[nfc][ctx_prof] Factor the callsite instrumentation exclusion criteri…
mtrofin Sep 14, 2024
947374c
[IRTranslator] Simplify fixed vector ConstantAggregateZero handling. …
topperc Sep 14, 2024
f78a48c
[MC] Use std::optional<MCRegisters> for values returned by MCRegister…
topperc Sep 14, 2024
d8a8cb9
[Driver] Avoid repeated hash lookups (NFC) (#108676)
kazutakahirata Sep 14, 2024
8bce263
[NFC][sanitizer] Use nullptr instead of 0
vitalybuka Sep 14, 2024
22aeec3
[Analysis] Avoid repeated hash lookups (NFC) (#108674)
kazutakahirata Sep 14, 2024
2064557
[WebAssembly] Add more EH assembly test cases (#108654)
aheejin Sep 14, 2024
390b82d
[ADT] Remove DenseMap::{getOrInsertDefault,FindAndConstruct} (#108678)
kazutakahirata Sep 14, 2024
82034ac
[C++20] [Modules] Warn for importing implementation partition unit in…
ChuanqiXu9 Sep 14, 2024
1d2f727
[clang][Sema] Improve `collectViableConversionCandidates` (#97908)
MagentaTreehouse Sep 14, 2024
918972b
[clang] Strip unneeded calls to raw_string_ostream::str() (NFC)
JOE1994 Sep 14, 2024
18f1c98
[AMDGPU] Avoid unneeded waitcounts before spill stores (#108303)
rampitec Sep 14, 2024
223e2ef
[clang] Nits on uses of raw_string_ostream (NFC)
JOE1994 Sep 14, 2024
c618a23
[bazel] Add missing dependency for ca4973972bf1306b49413a76f2d0c25c3d…
d0k Sep 14, 2024
c05ebd6
Fix bazel build past ca49739 (#108694)
dklimkin Sep 14, 2024
55ec015
[RISCV][Docs] Correct vector crypto note link spelling. NFC
topperc Sep 14, 2024
a20a973
[X86] Use MCRegister in more places. NFC (#108682)
topperc Sep 14, 2024
1208699
[mlir][transforms] Skip `RemoveDeadValues` for function declaration (…
CoTinker Sep 14, 2024
11f9008
[ast matcher][NFC] fix typo in release note
HerrCai0907 Sep 14, 2024
bae275f
[TableGen] Avoid repeated map lookups (NFC) (#108675)
kazutakahirata Sep 14, 2024
1e4e1ce
[Target] Avoid repeated hash lookups (NFC) (#108677)
kazutakahirata Sep 14, 2024
fa478bd
Revert "[lldb] Do not use LC_FUNCTION_STARTS data to determine symbol…
JDevlieghere Sep 14, 2024
a578558
[ARM] Replace a hardcoded 14 used as an MCRegister index with ARM::LR.
topperc Sep 14, 2024
f0c5caa
[VPlan] Add VPIRInstruction, use for exit block live-outs. (#100735)
fhahn Sep 14, 2024
e392056
Reapply "Reapply "[clang] Extend diagnose_if to accept more detailed …
philnik777 Sep 14, 2024
cfe3f5f
[VPlan] Remove unneeded ExitBB variable after f0c5caa814.
fhahn Sep 14, 2024
f66509b
[VPlan] Clarify comment for replaceVPBBWithIRVPBB and add assert (NFCI).
fhahn Sep 14, 2024
7d11f52
[clang] Silence GCC warnings about control reaching end of non void f…
mstorsjo Sep 13, 2024
a205a85
[libc][math] Improve fmul performance by using double-double arithmet…
Sep 14, 2024
367c145
[IRTranslator][RISCV] Support scalable vector zeroinitializer. (#108666)
topperc Sep 14, 2024
f427028
[ARM] Use MCRegister in more places. NFC
topperc Sep 14, 2024
a9e05a3
[ARM] Use MCRegister for ARMTargetStreamer::emitRegSave. NFC
topperc Sep 15, 2024
b78d4c1
[NFC][sanitizer] Clang-format sanitizer_common_nolibc.cpp
vitalybuka Sep 15, 2024
7005772
[NFC][sanitizer] Clang format sanitizer_linux_test.cpp
vitalybuka Sep 15, 2024
c21909a
[NFC][sanitizer] Simplify ifdef
vitalybuka Sep 15, 2024
cebc130
[RISCV] Remove unneeded check for NoRegister from RISCVInstPrinter::p…
topperc Sep 15, 2024
00c0b1a
[CGData] LLD for MachO (#90166)
kyulee-com Sep 15, 2024
9de2603
Revert "[CGData] LLD for MachO (#90166)"
Sep 15, 2024
9fc789d
[HIP] Use original file path for CUID (#107734)
yxsamliu Sep 15, 2024
a75565a
[llvm][ExecutionEngine] Strip unneeded calls to raw_string_ostream::s…
JOE1994 Sep 15, 2024
b07730b
[libc++] Check explicit values in the partial_ordering comparators fo…
philnik777 Sep 15, 2024
cc96ce8
[CodeGen] Avoid repeated hash lookup (NFC) (#108735)
kazutakahirata Sep 15, 2024
56f061f
[TableGen] Avoid repeated hash lookups (NFC) (#108736)
kazutakahirata Sep 15, 2024
ddca79a
[DWARFLinker] Avoid repeated hash lookups (NFC) (#108737)
kazutakahirata Sep 15, 2024
ba7a0b7
[Frontend] Avoid repeated hash lookups (NFC) (#108738)
kazutakahirata Sep 15, 2024
4b27b58
[lld] Nits on uses of raw_string_ostream (NFC)
JOE1994 Sep 15, 2024
012dbec
[VPlan] Handle ForceTargetInstructionCost in during precomputeCosts.
fhahn Sep 15, 2024
86f0399
[InstCombine] Fold expression using basic properties of floor and cei…
c8ef Sep 15, 2024
ba8e424
[X86] Add missing immediate qualifier to the (V)INSERTPS instruction …
RKSimon Sep 15, 2024
87663fd
[VectorCombine] Don't shrink lshr if the shamt is not less than bitw…
dtcxzyw Sep 15, 2024
614a064
[X86] Add missing immediate qualifier to the (V)INSERT/EXTRACT/PERM2 …
RKSimon Sep 15, 2024
5910e8d
[DAG] visitUDIV - call SimplifyDemandedBits to handle hidden constant…
RKSimon Sep 15, 2024
8837898
[DAGCombine] Count leading ones: refine post DAG/Type Legalisation if…
v01dXYZ Sep 15, 2024
3ae71d1
[LLVM][TableGen] Change CodeGenSchedule to use const RecordKeeper (#1…
jurahul Sep 15, 2024
c49a1ae
DAG: Reorder isFMAFasterThanFMulAndFAdd checks (NFC)
arsenm Sep 15, 2024
a56ca1a
[clang][codegen] Fix possible crash when setting TBAA metadata on FP …
MacDue Sep 15, 2024
7048857
[X86] Add missing immediate qualifier to the (V)EXTRACTPS instruction…
RKSimon Sep 15, 2024
1e33bd2
[X86] Add missing immediate qualifier to the (V)PINSR/PEXTR instructi…
RKSimon Sep 15, 2024
f4763b3
Reland [CGData] LLD for MachO #90166 (#108733)
kyulee-com Sep 15, 2024
8783bd5
[LLVM][TableGen] Change CodeGenInstAlias to use const Record pointers…
jurahul Sep 15, 2024
43f044b
[LLVM][TableGen] Change CodeGenTarget to use const RecordKeeper (#108…
jurahul Sep 15, 2024
4e09d7b
Revert "[HIP] Use original file path for CUID" (#108771)
dyung Sep 15, 2024
508e734
[CodeGen] Use DenseMapInfo<Register> to implement DenseMapInfo<Target…
topperc Sep 15, 2024
2f48178
[VirtRegMap] Use Register for Virt2ShapeMap key. NFC
topperc Sep 15, 2024
2395379
[VirtRegMap] Remove unnecessary calls to Register::id() accessing Ind…
topperc Sep 15, 2024
87e8b53
[LLVM][TableGen] Change CodeGenDAGPatterns to use const RecordKeeper …
jurahul Sep 15, 2024
8e00afc
[LLVM][TableGen] Change SubtargetEmitter to use const RecordKeeper (#…
jurahul Sep 15, 2024
e523f4e
[VirtRegMap] Store Register in Virt2SplitMap. NFC
topperc Sep 15, 2024
00e4575
[Instrumentation] Remove extraneous std::move (NFC) (#108764)
kazutakahirata Sep 15, 2024
8965795
[libc++][CI] Upgrade LLVM HEAD version in Docker image (#108774)
robincaloudis Sep 15, 2024
76b54df
[StackSlotColoring] Use Register for isLoadFromStackSlot/isStoreToSta…
topperc Sep 15, 2024
6749f2b
[LV] Add pointer induction test variant with inbounds, remove TODO.
fhahn Sep 15, 2024
a5b63b5
[VirtRegMap] Store MCRegister in Virt2PhysMap. (#108775)
topperc Sep 15, 2024
d044732
[bazel] Port a205a854e06d36c1d0def3e3bc3743defdb6abc1
d0k Sep 15, 2024
0098cee
[bazel] Port f4763b3d24546808720ff457761159b4e1605876
d0k Sep 15, 2024
40e8e4d
[ELF] Move partitions into ctx. NFC
MaskRay Sep 15, 2024
713a202
[CGData] Clang Options (#90304)
kyulee-com Sep 15, 2024
1c378d2
[X86] Add test for issue 108722; NFC
goldsteinn Sep 15, 2024
81279bf
[X86] Fix missing check of rotate <-> shift equivilence (Issue 108722)
goldsteinn Sep 15, 2024
1cd0752
[ELF] Rename unique_saver to uniqueSaver. NFC
MaskRay Sep 15, 2024
2531b46
[ELF] Move InStruct into Ctx. NFC
MaskRay Sep 15, 2024
bafe3a4
[NFC][tsan] Fix `reallocarray`, `calloc` parameters order
vitalybuka Sep 15, 2024
0b041f1
[NFC][sanitizer] Extend `DlSymAllocator`
vitalybuka Sep 16, 2024
7deca85
[clang-tidy] fix false positive when member initialization depends on…
HerrCai0907 Sep 16, 2024
ffc80de
[mlir] Nits on uses of llvm::raw_string_ostream (NFC)
JOE1994 Sep 15, 2024
a248ec3
Revert "[ELF] Move InStruct into Ctx. NFC"
vitalybuka Sep 16, 2024
5a6e52d
[mlir] Nits on uses of llvm::raw_string_ostream (NFC)
JOE1994 Sep 16, 2024
46f7cb3
[CodeGen] Use Register::id() instead of implicit cast to unsigned in …
topperc Sep 16, 2024
61ff1cb
Revert "[mlir] Nits on uses of llvm::raw_string_ostream (NFC)"
JOE1994 Sep 16, 2024
0c55ad1
[clang-tidy] fix false positive that floating point variable only use…
HerrCai0907 Sep 16, 2024
095b41c
[mlir] Reland 5a6e52d6ef96d2bcab6dc50bdb369662ff17d2a0 with update (NFC)
JOE1994 Sep 16, 2024
2ae968a
[Instrumentation] Move out to Utils (NFC) (#108532)
antoniofrighetto Sep 16, 2024
4fdccd3
[gn build] Port 2ae968a0d9fb
llvmgnsyncbot Sep 16, 2024
d779685
[lldb] Nits on uses of llvm::raw_string_ostream (NFC) (#108745)
JOE1994 Sep 16, 2024
339282d
[analyzer] Refactor MallocChecker to use `BindExpr` in `evalCall` (#1…
pskrgag Sep 16, 2024
e88b7ff
[ELF] Move InStruct into Ctx. NFC
MaskRay Sep 16, 2024
cf2122c
[Clang][ARM] Make CRC and DSP intrinsics always available. (#107417)
DanielKristofKiss Sep 16, 2024
9b237b4
[ASan] Disable InstallAtForkHandler on Linux/sparc64 (#108542)
rorth Sep 16, 2024
d76966e
[sanitizer_common][test] Disable sanitizer_coverage_trace_pc_guard.cp…
rorth Sep 16, 2024
961bc37
[ASan][test] XFAIL global-overflow.cpp etc. on SPARC (#108200)
rorth Sep 16, 2024
dfa5429
[InitUndef] Enable the InitUndef pass on non-AMDGPU targets (#108353)
nikic Sep 16, 2024
6d3f6c2
[RecursiveASTVisitor] Do not inline TraverseStmt (NFC) (#107601)
nikic Sep 16, 2024
b29c5b6
[NFC][LoopVectorize] Dont pass LLVMContext to VPTypeAnalysis construc…
david-arm Sep 16, 2024
b7e51b4
[IPSCCP] Infer attributes on arguments (#107114)
nikic Sep 16, 2024
6784202
[MCA][ResourceManager] Fix a bug in the instruction issue logic. (#10…
adibiagio Sep 16, 2024
cab4c10
[mlir][AsmParser] Avoid use of moved value (#108789)
JOE1994 Sep 16, 2024
57b50a9
[bazel] port 2ae968a0d9fb61606b020e898d884c82dd0ed8b5
metaflow Sep 16, 2024
e16ec9b
[SelectionDAG] Do not build illegal nodes with users (#108573)
ErikHogeman Sep 16, 2024
27c8338
[libc++] Replace `__compressed_pair` with `[[no_unique_address]]` (#7…
philnik777 Sep 16, 2024
8d89f83
[RISCV] Add some missing VP zvfhmin test coverage. NFC
lukel97 Sep 16, 2024
9e9b117
[lldb] Support new libc++ __compressed_pair layout (#96538)
Michael137 Sep 16, 2024
7e5fe3e
[lldb][test] Remove benchmark API tests (#108629)
Michael137 Sep 16, 2024
feac761
[GlobalISel][AArch64] Add G_FPTOSI_SAT/G_FPTOUI_SAT (#96297)
davemgreen Sep 16, 2024
dbdf843
[RISCV] Add Syntacore SCR7 processor definition (#108406)
asi-sc Sep 16, 2024
0f86cb3
[MLIR][OpenMP][Docs] Reorganize 'omp' dialect documentation (NFC) (#1…
skatrak Sep 16, 2024
8b82fc6
[MLIR][OpenMP][Docs] Document op naming conventions (NFC) (#107233)
skatrak Sep 16, 2024
551134c
[MLIR][OpenMP][Docs] Document clause-based op representation (NFC) (#…
skatrak Sep 16, 2024
06e8c6a
[MLIR][OpenMP][Docs] Document loop representation (NFC) (#107235)
skatrak Sep 16, 2024
79ec1e7
[MLIR][OpenMP][Docs] Document compound constructs representation (NFC…
skatrak Sep 16, 2024
f710612
Revert "[clang][codegen] Fix possible crash when setting TBAA metadat…
mstorsjo Sep 16, 2024
b54be00
[Flang][OpenMP] Process motion clauses in a single call (NFC) (#108046)
skatrak Sep 16, 2024
9548dbe
[lldb][test] Add TestNoUniqueAddress.py
Michael137 Jun 25, 2024
5aaf384
[flang][NFC] use llvm.intr.stacksave/restore instead of opaque calls …
tblah Sep 16, 2024
1881f64
Remove ^^ as a token in OpenCL (#108224)
AaronBallman Sep 16, 2024
87d56c5
[libc++][modules] Guard carved-out headers more consistently (#108637)
ldionne Sep 16, 2024
af5a45b
[X86,SimplifyCFG] Use passthru to reduce select (#108754)
phoebewang Sep 16, 2024
765e106
[lldb][test] Add a new __compressed_pair layout to libcxx simulator t…
Michael137 Sep 16, 2024
63b6c38
[clang] Fix incorrect partial ordering context setting (#108491)
mizvekov Sep 16, 2024
ed4a2a1
[Clang] handle invalid close location in static assert declaration (#…
a-tarasyuk Sep 16, 2024
abe964a
[clang] Don't emit bogus dangling diagnostics when `[[gsl::Owner]]` a…
hokein Sep 16, 2024
823eab2
[AArch64] Add a selection for vector scmp/ucmp tests. NFC
davemgreen Sep 16, 2024
a06d84a
[NFC][Clang][TableGen] Refactor ClangASTNodesEmitter (#108580)
jurahul Sep 16, 2024
0e948bf
[NFC][clang][TableGen] Remove redundant llvm:: namespace qualifier (#…
jurahul Sep 16, 2024
e509e87
[SCF] Avoid repeated hash lookups (NFC) (#108793)
kazutakahirata Sep 16, 2024
9159179
[Format] Avoid repeated hash lookups (NFC) (#108794)
kazutakahirata Sep 16, 2024
6f52c1e
[OpenACC] Avoid repeated hash lookups (NFC) (#108795)
kazutakahirata Sep 16, 2024
f4a3309
[IPO] Avoid repeated hash lookups (NFC) (#108796)
kazutakahirata Sep 16, 2024
adb7004
[LLVM][CLange] Rename NodeType::Record to NodeType::Rec (#108826)
jurahul Sep 16, 2024
e0e93c3
[Frontend][OpenMP] Follow compound construct clause restrictions (#10…
skatrak Sep 16, 2024
b3470c3
[clang][NFC] declare internal linkage function static (#108759)
HerrCai0907 Sep 16, 2024
79c4ece
[tsan] Allow unloading of ignored libraries (#105660)
goussepi Sep 16, 2024
165f0e8
[libc++][modules] Don't error when including <wchar.h> or <wctype.h> …
ldionne Sep 16, 2024
e6618aa
[flang] fix ignore_tkr(tk) with character dummy (#108168)
jeanPerier Sep 16, 2024
e5d2556
Fix OOM in FormatDiagnostic (#108187)
igelbox Sep 16, 2024
76a85b0
[RISCV][docs] GP Relaxation and Small Data Limit (#108592)
lenary Sep 16, 2024
5cead0c
Revert "Fix OOM in FormatDiagnostic" (#108838)
AaronBallman Sep 16, 2024
53d6039
[CMake] Use old DynamicLibrary symbol behavior on AIX for now (#108692)
jakeegan Sep 16, 2024
0f723eb
[Clang] Add locale variants to libc offload wrappers
jhuber6 Sep 16, 2024
b9198a1
[flang][runtime] Fixed include directories for Float128Math files. (#…
vzakhari Sep 16, 2024
0bc8168
[clang][bytecode] Fix reinterpret_casts from pointer to non-pointers …
tbaederr Sep 16, 2024
94e7c0b
[libc++] Remove get_temporary_buffer and return_temporary_buffer (#10…
frederick-vs-ja Sep 16, 2024
50985d2
[libc][nfc] Fix typo in header generation message. (#108813)
kaladron Sep 16, 2024
01df775
[libc++] Take the ABI break for `std::list`'s pointer UB unconditiona…
philnik777 Sep 16, 2024
b592917
[LV] Added verification of EVL recipes (#107630)
nikolaypanchenko Sep 16, 2024
4c6f313
[analyzer] [MallocChecker] suspect all release functions as candidate…
pskrgag Sep 16, 2024
f564a48
[SLP]Fix PR108700: correctly identify id of the operand node
alexey-bataev Sep 16, 2024
bc54e56
[flang][cuda] Add new entry points function for data transfer (#108244)
clementval Sep 16, 2024
69f3244
[NFC][sanitizer] Switch to `gnu_get_libc_version` (#108724)
vitalybuka Sep 16, 2024
18ef467
[SLP]Fix PR108709: postpone buildvector clustered nodes, if required
alexey-bataev Sep 16, 2024
c0719d8
[Policy] Replace "code owners" with "maintainers" (#107384)
AaronBallman Sep 16, 2024
08efa23
[mlir] Allow multi-result ops in reshape fusion (#108576)
Max191 Sep 16, 2024
5c348f6
[GlobalIsel] Canonicalize G_ICMP (#108755)
tschuett Sep 16, 2024
f5ba3e1
[CodeView] Flatten cmd args in frontend for LF_BUILDINFO (#106369)
nebulark Sep 16, 2024
960c975
[AArch64] Expand scmp/ucmp vector operations with sub (#108830)
davemgreen Sep 16, 2024
f0787ed
[RISCV][docs] Explain Relaxation Default
lenary Sep 16, 2024
d3014e1
[NFC][sanitizer] Use RTLD_DEFAULT for _dl_get_tls_static_info (#108723)
vitalybuka Sep 16, 2024
a40b36f
[gn build] Port 5c348f692a8d
llvmgnsyncbot Sep 16, 2024
aaa0f4d
[RISCV][Docs] Remove Zvbb, Zvbc and Zvk* from experimental C intrinsi…
topperc Sep 16, 2024
83bb731
[clang][NFC] Add missing space in -Wunsafe-buffer-usage documentation…
ldionne Sep 16, 2024
9ec1f65
Revert "[NFC][sanitizer] Simplify ifdef"
rorth Sep 16, 2024
04d71ea
[Format] Dont treat LBrace after extends/implements as initializer li…
kadircet Sep 16, 2024
8ee685e
[NFC][DirectX] fix intrinsics that need IntrNoMem and test typo (#108…
farzonl Sep 16, 2024
0ea0e3a
[sanitizer] Add CHECK that static TLS info is ready (#108684)
vitalybuka Sep 16, 2024
000a3f0
[libc][c11] implement ctime (#107285)
zimirza Sep 16, 2024
d8ee96c
[WebAssembly] Add indentations to annotations.s (#108790)
aheejin Sep 16, 2024
4b4dbaa
[WebAssembly] Rename eh-assembly.s to -legacy.s (#108747)
aheejin Sep 16, 2024
e5271fe
[scudo] Update secondary cache time-based release logic (#107507)
JoshuaMBa Sep 16, 2024
1bfc3d0
Implementing `asfloat` using `bit_cast` (#108686)
joaosaffran Sep 16, 2024
09e3a36
[libc++][modules] Fix missing and incorrect includes (#108850)
ldionne Sep 16, 2024
73d83f2
[MLIR] Add f6E2M3FN type (#107999)
sergey-kozub Sep 16, 2024
68e4518
Revert "[NFC][sanitizer] Switch to `gnu_get_libc_version` (#108724)"
thurstond Sep 16, 2024
397e4dc
[libc++][docs] Add link to `VendorDocumentation.rst` from `TestingLib…
H-G-Hristov Sep 16, 2024
2d13302
[libc++][test] Confirm that P0508R0 has been implemented (#108172)
frederick-vs-ja Sep 16, 2024
8f023ec
[RISCV] Add coverage for select C, C1, C2 where (C1-C2)*[0,1] is cheap
preames Sep 16, 2024
b7c9ebe
[sanitizer] Fix partially initialized static TLS range (#108685)
vitalybuka Sep 16, 2024
4eb9780
[RISCV] Fix IR for store_large_offset_no_opt_i16 in make-compressible…
topperc Sep 16, 2024
62cdc2a
[NVPTX] Convert calls to indirect when call signature mismatches func…
kalxr Sep 16, 2024
cf70a1e
[ELF] .llvm.sympart: support CREL
MaskRay Sep 16, 2024
e99755d
[libc++][test] Adjust expected hexfloat format (#95011)
jakeegan Sep 16, 2024
45c9757
[AutoBump] Merge with e99755d4 (Sep 16)
jorickert Dec 12, 2024
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
  •  
  •  
  •  
15 changes: 13 additions & 2 deletions .github/workflows/release-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -442,11 +442,22 @@ jobs:
name: ${{ needs.prepare.outputs.release-binary-filename }}-attestation
path: ${{ needs.prepare.outputs.release-binary-filename }}.jsonl

- name: Checkout Release Scripts
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
sparse-checkout: |
llvm/utils/release/github-upload-release.py
llvm/utils/git/requirements.txt
sparse-checkout-cone-mode: false

- name: Install Python Requirements
run: |
pip install --require-hashes -r ./llvm/utils/git/requirements.txt
- name: Upload Release
shell: bash
run: |
sudo apt install python3-github
./llvm-project/llvm/utils/release/github-upload-release.py \
./llvm/utils/release/github-upload-release.py \
--token ${{ github.token }} \
--release ${{ needs.prepare.outputs.release-version }} \
upload \
Expand Down
81 changes: 65 additions & 16 deletions bolt/include/bolt/Profile/ProfileYAMLMapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,24 +95,29 @@ template <> struct MappingTraits<bolt::SuccessorInfo> {

namespace bolt {
struct PseudoProbeInfo {
llvm::yaml::Hex64 GUID;
uint64_t Index;
uint8_t Type;
uint32_t InlineTreeIndex = 0;
uint64_t BlockMask = 0; // bitset with probe indices from 1 to 64
std::vector<uint64_t> BlockProbes; // block probes with indices above 64
std::vector<uint64_t> CallProbes;
std::vector<uint64_t> IndCallProbes;
std::vector<uint32_t> InlineTreeNodes;

bool operator==(const PseudoProbeInfo &Other) const {
return GUID == Other.GUID && Index == Other.Index;
}
bool operator!=(const PseudoProbeInfo &Other) const {
return !(*this == Other);
return InlineTreeIndex == Other.InlineTreeIndex &&
BlockProbes == Other.BlockProbes && CallProbes == Other.CallProbes &&
IndCallProbes == Other.IndCallProbes;
}
};
} // end namespace bolt

template <> struct MappingTraits<bolt::PseudoProbeInfo> {
static void mapping(IO &YamlIO, bolt::PseudoProbeInfo &PI) {
YamlIO.mapRequired("guid", PI.GUID);
YamlIO.mapRequired("id", PI.Index);
YamlIO.mapRequired("type", PI.Type);
YamlIO.mapOptional("blx", PI.BlockMask, 0);
YamlIO.mapOptional("blk", PI.BlockProbes, std::vector<uint64_t>());
YamlIO.mapOptional("call", PI.CallProbes, std::vector<uint64_t>());
YamlIO.mapOptional("icall", PI.IndCallProbes, std::vector<uint64_t>());
YamlIO.mapOptional("id", PI.InlineTreeIndex, 0);
YamlIO.mapOptional("ids", PI.InlineTreeNodes, std::vector<uint32_t>());
}

static const bool flow = true;
Expand Down Expand Up @@ -158,15 +163,35 @@ template <> struct MappingTraits<bolt::BinaryBasicBlockProfile> {
std::vector<bolt::CallSiteInfo>());
YamlIO.mapOptional("succ", BBP.Successors,
std::vector<bolt::SuccessorInfo>());
YamlIO.mapOptional("pseudo_probes", BBP.PseudoProbes,
YamlIO.mapOptional("probes", BBP.PseudoProbes,
std::vector<bolt::PseudoProbeInfo>());
}
};

namespace bolt {
struct InlineTreeNode {
uint32_t ParentIndexDelta;
uint32_t CallSiteProbe;
// Index in PseudoProbeDesc.GUID, UINT32_MAX for same as previous (omitted)
uint32_t GUIDIndex;
bool operator==(const InlineTreeNode &) const { return false; }
};
} // end namespace bolt

template <> struct MappingTraits<bolt::InlineTreeNode> {
static void mapping(IO &YamlIO, bolt::InlineTreeNode &ITI) {
YamlIO.mapOptional("g", ITI.GUIDIndex, UINT32_MAX);
YamlIO.mapOptional("p", ITI.ParentIndexDelta, 0);
YamlIO.mapOptional("cs", ITI.CallSiteProbe, 0);
}

static const bool flow = true;
};
} // end namespace yaml
} // end namespace llvm

LLVM_YAML_IS_SEQUENCE_VECTOR(llvm::yaml::bolt::BinaryBasicBlockProfile)
LLVM_YAML_IS_FLOW_SEQUENCE_VECTOR(llvm::yaml::bolt::InlineTreeNode)

namespace llvm {
namespace yaml {
Expand All @@ -179,8 +204,7 @@ struct BinaryFunctionProfile {
llvm::yaml::Hex64 Hash{0};
uint64_t ExecCount{0};
std::vector<BinaryBasicBlockProfile> Blocks;
llvm::yaml::Hex64 GUID{0};
llvm::yaml::Hex64 PseudoProbeDescHash{0};
std::vector<InlineTreeNode> InlineTree;
bool Used{false};
};
} // end namespace bolt
Expand All @@ -194,9 +218,8 @@ template <> struct MappingTraits<bolt::BinaryFunctionProfile> {
YamlIO.mapRequired("nblocks", BFP.NumBasicBlocks);
YamlIO.mapOptional("blocks", BFP.Blocks,
std::vector<bolt::BinaryBasicBlockProfile>());
YamlIO.mapOptional("guid", BFP.GUID, (uint64_t)0);
YamlIO.mapOptional("pseudo_probe_desc_hash", BFP.PseudoProbeDescHash,
(uint64_t)0);
YamlIO.mapOptional("inline_tree", BFP.InlineTree,
std::vector<bolt::InlineTreeNode>());
}
};

Expand Down Expand Up @@ -246,10 +269,33 @@ template <> struct MappingTraits<bolt::BinaryProfileHeader> {
}
};

namespace bolt {
struct ProfilePseudoProbeDesc {
std::vector<Hex64> GUID;
std::vector<Hex64> Hash;
std::vector<uint32_t> GUIDHashIdx; // Index of hash for that GUID in Hash

bool operator==(const ProfilePseudoProbeDesc &Other) const {
// Only treat empty Desc as equal
return GUID.empty() && Other.GUID.empty() && Hash.empty() &&
Other.Hash.empty() && GUIDHashIdx.empty() &&
Other.GUIDHashIdx.empty();
}
};
} // end namespace bolt

template <> struct MappingTraits<bolt::ProfilePseudoProbeDesc> {
static void mapping(IO &YamlIO, bolt::ProfilePseudoProbeDesc &PD) {
YamlIO.mapRequired("gs", PD.GUID);
YamlIO.mapRequired("gh", PD.GUIDHashIdx);
YamlIO.mapRequired("hs", PD.Hash);
}
};
} // end namespace yaml
} // end namespace llvm

LLVM_YAML_IS_SEQUENCE_VECTOR(llvm::yaml::bolt::BinaryFunctionProfile)
LLVM_YAML_IS_SEQUENCE_VECTOR(llvm::yaml::bolt::ProfilePseudoProbeDesc)

namespace llvm {
namespace yaml {
Expand All @@ -258,13 +304,16 @@ namespace bolt {
struct BinaryProfile {
BinaryProfileHeader Header;
std::vector<BinaryFunctionProfile> Functions;
ProfilePseudoProbeDesc PseudoProbeDesc;
};
} // namespace bolt

template <> struct MappingTraits<bolt::BinaryProfile> {
static void mapping(IO &YamlIO, bolt::BinaryProfile &BP) {
YamlIO.mapRequired("header", BP.Header);
YamlIO.mapRequired("functions", BP.Functions);
YamlIO.mapOptional("pseudo_probe_desc", BP.PseudoProbeDesc,
bolt::ProfilePseudoProbeDesc());
}
};

Expand Down
52 changes: 51 additions & 1 deletion bolt/include/bolt/Profile/YAMLProfileWriter.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,27 @@ class YAMLProfileWriter {
/// Save execution profile for that instance.
std::error_code writeProfile(const RewriteInstance &RI);

using InlineTreeMapTy =
DenseMap<const MCDecodedPseudoProbeInlineTree *, uint32_t>;
struct InlineTreeDesc {
template <typename T> using GUIDMapTy = std::unordered_map<uint64_t, T>;
using GUIDNodeMap = GUIDMapTy<const MCDecodedPseudoProbeInlineTree *>;
using GUIDNumMap = GUIDMapTy<uint32_t>;
GUIDNodeMap TopLevelGUIDToInlineTree;
GUIDNumMap GUIDIdxMap;
GUIDNumMap HashIdxMap;
};

static std::tuple<std::vector<yaml::bolt::InlineTreeNode>, InlineTreeMapTy>
convertBFInlineTree(const MCPseudoProbeDecoder &Decoder,
const InlineTreeDesc &InlineTree, uint64_t GUID);

static std::tuple<yaml::bolt::ProfilePseudoProbeDesc, InlineTreeDesc>
convertPseudoProbeDesc(const MCPseudoProbeDecoder &PseudoProbeDecoder);

static yaml::bolt::BinaryFunctionProfile
convert(const BinaryFunction &BF, bool UseDFS,
const InlineTreeDesc &InlineTree,
const BoltAddressTranslation *BAT = nullptr);

/// Set CallSiteInfo destination fields from \p Symbol and return a target
Expand All @@ -42,8 +61,39 @@ class YAMLProfileWriter {
setCSIDestination(const BinaryContext &BC, yaml::bolt::CallSiteInfo &CSI,
const MCSymbol *Symbol, const BoltAddressTranslation *BAT,
uint32_t Offset = 0);
};

private:
struct InlineTreeNode {
const MCDecodedPseudoProbeInlineTree *InlineTree;
uint64_t GUID;
uint64_t Hash;
uint32_t ParentId;
uint32_t InlineSite;
};
static std::vector<InlineTreeNode>
collectInlineTree(const MCPseudoProbeDecoder &Decoder,
const MCDecodedPseudoProbeInlineTree &Root);

// 0 - block probe, 1 - indirect call, 2 - direct call
using ProbeList = std::array<SmallVector<uint64_t, 0>, 3>;
using NodeIdToProbes = DenseMap<uint32_t, ProbeList>;
static std::vector<yaml::bolt::PseudoProbeInfo>
convertNodeProbes(NodeIdToProbes &NodeProbes);

public:
template <typename T>
static std::vector<yaml::bolt::PseudoProbeInfo>
writeBlockProbes(T Probes, const InlineTreeMapTy &InlineTreeNodeId) {
NodeIdToProbes NodeProbes;
for (const MCDecodedPseudoProbe &Probe : Probes) {
auto It = InlineTreeNodeId.find(Probe.getInlineTreeNode());
if (It == InlineTreeNodeId.end())
continue;
NodeProbes[It->second][Probe.getType()].emplace_back(Probe.getIndex());
}
return convertNodeProbes(NodeProbes);
}
};
} // namespace bolt
} // namespace llvm

Expand Down
9 changes: 7 additions & 2 deletions bolt/lib/Passes/ADRRelaxationPass.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,15 @@ void ADRRelaxationPass::runOnFunction(BinaryFunction &BF) {
// Don't relax adr if it points to the same function and it is not split
// and BF initial size is < 1MB.
const unsigned OneMB = 0x100000;
if (!BF.isSplit() && BF.getSize() < OneMB) {
if (BF.getSize() < OneMB) {
BinaryFunction *TargetBF = BC.getFunctionForSymbol(Symbol);
if (TargetBF && TargetBF == &BF)
if (TargetBF == &BF && !BF.isSplit())
continue;
// No relaxation needed if ADR references a basic block in the same
// fragment.
if (BinaryBasicBlock *TargetBB = BF.getBasicBlockForLabel(Symbol))
if (BB.getFragmentNum() == TargetBB->getFragmentNum())
continue;
}

MCPhysReg Reg;
Expand Down
33 changes: 24 additions & 9 deletions bolt/lib/Profile/DataAggregator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2321,6 +2321,12 @@ std::error_code DataAggregator::writeBATYAML(BinaryContext &BC,
BP.Header.Flags = opts::BasicAggregation ? BinaryFunction::PF_SAMPLE
: BinaryFunction::PF_LBR;

// Add probe inline tree nodes.
YAMLProfileWriter::InlineTreeDesc InlineTree;
if (PseudoProbeDecoder)
std::tie(BP.PseudoProbeDesc, InlineTree) =
YAMLProfileWriter::convertPseudoProbeDesc(*PseudoProbeDecoder);

if (!opts::BasicAggregation) {
// Convert profile for functions not covered by BAT
for (auto &BFI : BC.getBinaryFunctions()) {
Expand All @@ -2329,8 +2335,8 @@ std::error_code DataAggregator::writeBATYAML(BinaryContext &BC,
continue;
if (BAT->isBATFunction(Function.getAddress()))
continue;
BP.Functions.emplace_back(
YAMLProfileWriter::convert(Function, /*UseDFS=*/false, BAT));
BP.Functions.emplace_back(YAMLProfileWriter::convert(
Function, /*UseDFS=*/false, InlineTree, BAT));
}

for (const auto &KV : NamesToBranches) {
Expand Down Expand Up @@ -2403,16 +2409,22 @@ std::error_code DataAggregator::writeBATYAML(BinaryContext &BC,
YamlBF.Blocks[BlockIndex].ExecCount += BI.Branches;
}
if (PseudoProbeDecoder) {
if ((YamlBF.GUID = BF->getGUID())) {
const MCPseudoProbeFuncDesc *FuncDesc =
PseudoProbeDecoder->getFuncDescForGUID(YamlBF.GUID);
YamlBF.PseudoProbeDescHash = FuncDesc->FuncHash;
DenseMap<const MCDecodedPseudoProbeInlineTree *, uint32_t>
InlineTreeNodeId;
if (BF->getGUID()) {
std::tie(YamlBF.InlineTree, InlineTreeNodeId) =
YAMLProfileWriter::convertBFInlineTree(*PseudoProbeDecoder,
InlineTree, BF->getGUID());
}
// Fetch probes belonging to all fragments
const AddressProbesMap &ProbeMap =
PseudoProbeDecoder->getAddress2ProbesMap();
BinaryFunction::FragmentsSetTy Fragments(BF->Fragments);
Fragments.insert(BF);
DenseMap<
uint32_t,
std::vector<std::reference_wrapper<const MCDecodedPseudoProbe>>>
BlockProbes;
for (const BinaryFunction *F : Fragments) {
const uint64_t FuncAddr = F->getAddress();
for (const MCDecodedPseudoProbe &Probe :
Expand All @@ -2421,11 +2433,14 @@ std::error_code DataAggregator::writeBATYAML(BinaryContext &BC,
const uint32_t InputOffset = BAT->translate(
FuncAddr, OutputAddress - FuncAddr, /*IsBranchSrc=*/true);
const unsigned BlockIndex = getBlock(InputOffset).second;
YamlBF.Blocks[BlockIndex].PseudoProbes.emplace_back(
yaml::bolt::PseudoProbeInfo{Probe.getGuid(), Probe.getIndex(),
Probe.getType()});
BlockProbes[BlockIndex].emplace_back(Probe);
}
}

for (auto &[Block, Probes] : BlockProbes) {
YamlBF.Blocks[Block].PseudoProbes =
YAMLProfileWriter::writeBlockProbes(Probes, InlineTreeNodeId);
}
}
// Skip printing if there's no profile data
llvm::erase_if(
Expand Down
Loading
Loading