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

LLVM and SPIRV-LLVM-Translator pulldown (WW13 2024) #13190

Merged
merged 835 commits into from
Apr 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
835 commits
Select commit Hold shift + click to select a range
08a321e
[mlir][complex] Canonicalize complex.div by one (#85513)
Lewuathe Mar 26, 2024
64a7114
AMDGPU: Simplify SMInstruction definitions, NFC (#86613)
changpeng Mar 26, 2024
c6a65e4
[clangd] Support go-to-definition on type hints. The protocol part (#…
zyn0217 Mar 26, 2024
817f453
[RISCV][TTI] Refactor getCastInstrCost to exit early (#86619)
arcbbb Mar 26, 2024
5dc0c75
[RISCV][TTI] Fix missing return in the end of function
arcbbb Mar 26, 2024
5c663aa
[libc++] <experimental/simd> Reduce types for template parameter U in…
joy2myself Mar 26, 2024
6ff6191
[Driver] Reject -fptrauth-intrinsics on non-AArch64 targets
MaskRay Mar 26, 2024
6a6f9bf
[clang] Fix assertion failure when printing atomic apvalues (#85259)
tbaederr Mar 26, 2024
14c3018
[ExpandLargeFpConvert] Fix incorrect values in fp-to-int conversion. …
bevin-hansson Mar 26, 2024
4d315ff
[GlobalISel] Add CTLZ known bits. (#86436)
davemgreen Mar 26, 2024
eb70b48
[mlir][bazel] Export more headers by a single target only. (#86637)
chsigg Mar 26, 2024
3f8431e
[SCCIterator] Union MST node by rank correctly (#86389)
XChy Mar 26, 2024
4fa736b
[Clang] NFC Silence compiler warning spam (#86532)
NagyDonat Mar 26, 2024
7d9ac34
Merge from 'sycl' to 'sycl-web' (34 commits)
Mar 26, 2024
fbc2473
[AArch64][GlobalISel] Legalization for small anyext/sext/zext (#86438)
davemgreen Mar 26, 2024
256343a
Revert "Update amdgpu_gfx functions to use s0-s3 for inreg SGPR argum…
tsymalla Mar 26, 2024
77cbc9b
[MLIR][LLVM] Add `llvm.experimental.constrained.fptrunc` operation (#…
victor-eds Mar 26, 2024
c7198e0
[DAG] Fold insert_subvector(N0, extract_subvector(N0, N2), N2) --> N0…
RKSimon Mar 26, 2024
d06ba37
[SPIR-V] Support extension toggling and enabling all (#85503)
michalpaszkowski Mar 26, 2024
f5e1cd5
[SPIR-V] Extend SPIRVUsage.rst document (#84744)
michalpaszkowski Mar 26, 2024
5d7e7ab
[X86] ICX - vector XMM splat use Port 1 or 5 when boradcasting the sh…
RKSimon Mar 25, 2024
5fc619b
[DAG] Update ISD::AVG folds to use hasOperation to allow Custom match…
RKSimon Mar 26, 2024
5b544b5
[Mips] ctpop.mir - regenerate checks to improve codegen diff in #86505
RKSimon Mar 26, 2024
f01377d
[tsan] Mark `pthread_*_lock` functions as blocking (#84162)
canova Mar 26, 2024
fe97a61
[tsan] Add callbacks for futex syscalls and mark them as blocking on …
canova Mar 26, 2024
da9ac43
[FMV] Allow mixing target_version with target_clones. (#86493)
labrinea Mar 26, 2024
f914e8e
[AArch64][SME] Add coalescer barrier for args/results in locally stre…
sdesmalen-arm Mar 26, 2024
bfb12ef
[LLD][COFF] Allow additional attributes in forwarding exports. (#86535)
cjacek Mar 26, 2024
8cf75dc
Merge from 'main' to 'sycl-web' (127 commits)
haonanya1 Mar 26, 2024
4dc3225
[Libomptarget] Replace global `PluginTy::get` interface with referenc…
jhuber6 Mar 26, 2024
603db74
[LLD][COFF] Preserve all attributes from forwarding exports from pars…
cjacek Mar 26, 2024
19ca79e
[libc][math][c23] Implement canonicalize functions (#85940)
Sh0g0-1758 Mar 26, 2024
59e0525
[[clang::always_destroy]] attribute silences warn-exit-time-destructo…
ycdtosa Mar 26, 2024
feebcd6
[clang] Fix -Wunused-variable in SemaDecl.cpp (NFC)
DamonFool Mar 26, 2024
caa2258
[LLVM] Remove nuw neg (#86295)
dtcxzyw Mar 26, 2024
3a2c70b
Fix printing of templated records. (#86339)
zahiraam Mar 26, 2024
93d33a1
[PatternMatch] Refactor `m_SpecificInt` to avoid constructing APInt. …
dtcxzyw Mar 26, 2024
308ed02
[Intrinsics] Make `patchpoint.i64` generic on its return type (#85911)
Il-Capitano Mar 26, 2024
dfde6e8
[libc++][test] Remove tests that testing std::variant<T&> (#84222)
huixie90 Mar 26, 2024
54ca1e2
[SLP]Fix PR80027: include initial trunc nodes to the demoted values.
alexey-bataev Mar 26, 2024
47f4a07
[GlobalISel] Add Knownbits for G_LOAD/ZEXTLOAD/SEXTLOAD with range me…
davemgreen Mar 26, 2024
a51d13f
[Flang] Add new CHECK_MSG() function (#86576)
ceseo Mar 26, 2024
ca594fe
Update documentation and release notes for llvm-profgen COFF support …
tcreech-intel Mar 26, 2024
89ef313
[mlir][bazel] Create a separate target for BytecodeOpInterface. (#86655)
chsigg Mar 26, 2024
2e38c50
[clang-repl] Fix remove invalidates iterators in CleanUpPTU() (#85378)
weliveindetail Mar 26, 2024
b311756
Revert "[CodeGen][arm64e] Add methods and data members to Address, wh…
ahatanak Mar 26, 2024
507e59a
[TBAA] Tests for invalid tbaa.struct metadata (#86167)
juliannagele Mar 26, 2024
26d896f
Fixes in 'tosa.reshape' lowering and folder (#85798)
rafaelubalmw Mar 26, 2024
06bb8c9
[VPlan] Explicitly handle scalar pointer inductions. (#83068)
fhahn Mar 26, 2024
e933c05
[X86] Add fadd/fsub/fmul tests showing failure to concat operands tog…
RKSimon Mar 26, 2024
d18bee2
[X86] combineConcatVectorOps - concatenate FADD/FSUB/FMUL ops if we d…
RKSimon Mar 26, 2024
ddfc3fa
Merge from 'sycl' to 'sycl-web' (2 commits)
Mar 26, 2024
ecfffbf
[libc][OSUtil] refactor quick_exit to be an object library everywhere…
nickdesaulniers Mar 26, 2024
87519a2
[RISCV] Combine (mul (zext, zext)) -> (zext (mul (zext, zext))) (#86465)
lukel97 Mar 26, 2024
4998587
[Flang] Support for passing procedure pointer, reference to a functio…
DanielCChen Mar 26, 2024
6e261d9
[flang] Accept more unrecognized !DIR$ compiler directives (#85829)
klausler Mar 26, 2024
6d579cd
[InstallAPI] Add missing license header to file, NFC
cyndyishida Mar 26, 2024
f50f0ca
[flang] Fix crash in name resolution (#85835)
klausler Mar 26, 2024
2f63718
[lldb] Don't clear a Module's UnwindTable when adding a SymbolFile (#…
jasonmolenda Mar 26, 2024
44d037c
Change type of DiagnosticHandlerTy (#86504)
Abhinkop Mar 26, 2024
375ddd6
[ARM][MC] Add GNU Alias for ldrexd, ldaexd, stlexd, and strexd instru…
AlfieRichardsArm Mar 26, 2024
348f9e7
[lldb] Fix warning: comparison of unsigned expression in >= 0 is alwa…
JDevlieghere Mar 26, 2024
3140d13
[X86] extractelement-load.ll - use X86 instead of X32 check prefix. NFC
RKSimon Mar 26, 2024
c8b85ad
[X86] extractelement-load.ll - add test case for #85419
RKSimon Mar 26, 2024
3ada883
[flang][runtime] Runtime support for REDUCE() (#86214)
klausler Mar 26, 2024
5a0382c
[flang] Catch non-constant targets for procedure pointer initializati…
klausler Mar 26, 2024
b069131
Fix failure in buildbot (#86661)
zahiraam Mar 26, 2024
5cf1e2e
[DXIL] Implement log intrinsic Lowering (#86569)
farzonl Mar 26, 2024
7860f97
[flang][runtime] Use cuda::std::variant in the CUDA build. (#86615)
vzakhari Mar 26, 2024
e75989e
[NFC][Clang] Fix potential dereferencing of nullptr (#85944)
smanna12 Mar 26, 2024
8f01eca
[flang] Special-case handling of INTRINSIC in type-decl-stmt (#86518)
klausler Mar 26, 2024
39c03a2
[RISCV] Remove unnecessary overrides of a defaulted template argument…
topperc Mar 26, 2024
bf4fc00
[mlir][vector] Refactor linearize.mlir (#86648)
banach-space Mar 26, 2024
f92f775
[flang][NFC] Address reported "possible missing return" (#86523)
klausler Mar 26, 2024
81fc43a
[unittests] Fix `TableGenTests` with `LLVM_LINK_LLVM_DYLIB` (#86664)
hahnjo Mar 26, 2024
4c4ea24
[NFC][CLANG] Fix static analyzer bugs about unnecessary object copies…
smanna12 Mar 26, 2024
f050a09
[mlir][spirv] Remove `enableFastMathMode` flag from SPIR-V conversion…
Hardcode84 Mar 26, 2024
f4fc959
[flang] Catch impossible but necessary TBP override (#86558)
klausler Mar 26, 2024
3137347
[clang-tidy] Fix fix-it overlaps in readability-static-definition-in-…
PiotrZSL Mar 26, 2024
26dd128
[SLP]Do not propagate nuw/nsw flags for alt nodes, affected by
alexey-bataev Mar 26, 2024
1eaef44
[TosaToTensor] Fix a warning (#86703)
kazutakahirata Mar 26, 2024
8cb4eb9
[RISCV] Remove unneeded VAESKF_MV_I tablegen class. NFC
topperc Mar 26, 2024
d0e97fe
[ArithToSPIRV] Fix a warning (#86702)
kazutakahirata Mar 26, 2024
da6cc4a
[CodeGen] Add nneg and disjoint flags (#86650)
tschuett Mar 26, 2024
29318ab
[lldb] Remove test for add-symbol-file adds unwind source
jasonmolenda Mar 26, 2024
0c3e24f
[analyzer] Allow egraph rewriter not to open the generated HTML direc…
Snape3058 Mar 26, 2024
070517f
Merge from 'main' to 'sycl-web' (35 commits)
jyu2-git Mar 26, 2024
1ad29a5
[SLP][NFC]Add a test with truncated loads, but incorrect trunc after
alexey-bataev Mar 26, 2024
9b2a891
Merge from 'sycl' to 'sycl-web' (2 commits)
Mar 26, 2024
342f7d0
[SLP]Fix PR86620: check final minbitwidth for truncs/exts before
alexey-bataev Mar 26, 2024
1c9d5c2
[DAG] foldAddSubBoolOfMaskedVal - reuse existing SDLoc instead of reg…
RKSimon Mar 26, 2024
8edb12f
[IR] Add `m_c_BitwiseLogic` in pattern match; NFC
goldsteinn Mar 26, 2024
cf6e62d
[mlir][doc] NFC fix incorrect filename in td match interface
ftynse Mar 26, 2024
2fbc40d
[RISCV] Split compound if statement to fix a crash.
topperc Mar 26, 2024
148a557
[flang][OpenMP] Make OpenMP clause representation language-agnostic (…
kparzysz Mar 26, 2024
601d7ea
[polly] Add polly-debug flag to print debug info from all parts of po…
kartcq Mar 26, 2024
0e5c504
[DebugInfo] [SelectionDAG] Fix handling of duplicate dbg values (#86598)
Snowy1803 Mar 26, 2024
28ddbd4
[NFC] Refactor ConstantArrayType size storage (#85716)
llvm-beanz Mar 26, 2024
5e6e40f
[clang-tidy] Improve performance of google-runtime-int (#86596)
PiotrZSL Mar 26, 2024
156c290
[lldb] Implement coalescing of disjoint progress events (#84854)
JDevlieghere Mar 25, 2024
8ea94b6
[clang-tidy] Improved modernize-use-using by fixing a false-negative …
felix642 Mar 26, 2024
8a84596
[flang] Dodge bogus GCC 13.2.0 error message in new code (#86708)
klausler Mar 26, 2024
982ebeb
[X86] Pre-commit test case for bug in combineShiftRightArithmetic
bjope Mar 25, 2024
4c72cfa
[libc] Remove definition of LIBC_NAMESPACE in test (#86704)
michaelrj-google Mar 26, 2024
14e17ea
[flang][acc] Add support for lowering combined constructs (#86696)
razvanlupusoru Mar 26, 2024
3e6e54e
[X86] Fix miscompile in combineShiftRightArithmetic (#86597)
bjope Mar 26, 2024
2d97ba2
[libc]: Remove unused includes from strfrom*.cpp (#86657)
vinayakdsci Mar 26, 2024
a3f21a3
[libc] Remove LIBC_HAS_ATTRIBUTE macro (#86656)
vinayakdsci Mar 26, 2024
ac1af75
[clang] Implement constexpr support for __builtin_{clzg,ctzg} (#86577)
overmighty Mar 26, 2024
1584014
[RISCV] Check that the stack adjust immediate for cm.push/pop* has th…
topperc Mar 26, 2024
b0b8b16
[NFC] [HWASan] Add link to proof for address calculation (#86367)
fmayer Mar 26, 2024
58fa675
Merge from 'main' to 'sycl-web' (19 commits)
t-demchuk Mar 26, 2024
880eb33
[NFC] [HWASan] make getAndroidSlotPtr function generic (#86200)
fmayer Mar 26, 2024
d5224b7
[tsan] Refine fstat{,64} interceptors (#86625)
MaskRay Mar 26, 2024
80487e1
[clang-tidy][NFC] Reorder entrys in release notes
PiotrZSL Mar 26, 2024
a22bd00
[libc] [bazel] [NFC] Format deps.
alinas Mar 26, 2024
c6d419c
[TOSA] Allow all integer types in most ops (#86509)
mgehre-amd Mar 26, 2024
630283c
[libc] Fix misplaced `[[noreturn]]` attribute.
jhuber6 Mar 26, 2024
1949f7d
[scudo] Clean up string handling (#86364)
cferris1000 Mar 26, 2024
80bba17
[libc][FPUtil] fixup missing explicit cast (#86736)
nickdesaulniers Mar 26, 2024
8669225
[compiler-rt] Allow building builtins.a without a libc (#86737)
JonChesterfield Mar 26, 2024
d312788
[InlineOrder] fix the calculation of Cost for CostBenefitPriority (#8…
helloguo Mar 26, 2024
09155ac
[LegalizeDAG] Remove unneeded temporary SDValues from PerformInsertVe…
topperc Mar 26, 2024
b1a633b
[NFC][NVPTX] remove truncating c-style cast (#85889)
AlexMaclean Mar 26, 2024
7db4046
[OpenMP] add loop collapse tests (#86243)
vadikp-intel Mar 26, 2024
63db4d6
Fix build problem.
jyu2-git Mar 27, 2024
c43932e
fix build error in MSVC build (#86622)
SevenIsSeven Mar 27, 2024
3324f4d
[mlir][sparse] avoid incompatible linalg fuse-into-consumer (#86752)
aartbik Mar 27, 2024
54a9f0e
[RISCV][GISEL] Legalize, regbankselect, and instruction-select G_VSCA…
michaelmaitland Mar 27, 2024
373d875
[cfi][CodeGen] Call SetLLVMFunctionAttributes{,ForDefinition} on __cf…
kpdev Mar 27, 2024
d345599
[GISEL][NFC] Use getElementCount instead of getNumElements in more pl…
michaelmaitland Mar 27, 2024
d023995
AMDGPU: Simplify EmitAMDGPUBuiltinExpr for load transposes, NFC (#86707)
changpeng Mar 27, 2024
4720e38
[NFC][Sanitizer] Refine the restriction on SizeClassAllocator64::kReg…
Enna1 Mar 27, 2024
10b07f2
[mlir][Interfaces] `ValueBoundsConstraintSet`: Add `dump` helper func…
matthias-springer Mar 27, 2024
fa1b807
[mlir] fix crash in transform.print verification (#86679)
ftynse Mar 27, 2024
bd418b9
Merge from 'main' to 'sycl-web'
Mar 27, 2024
7545c63
[RISCV][TTI] Scale the cost of the sext/zext with LMUL (#86617)
arcbbb Mar 27, 2024
082e7c4
[MemProf] Remove empty edges once after cloning (#85320)
teresajohnson Mar 27, 2024
4d03a9e
[RISCV] Preserve MMO when expanding PseudoRV32ZdinxSD/PseudoRV32Zdinx…
topperc Mar 27, 2024
9961c03
Return `errc::no_such_file_or_directory` in `fs::access` if `GetFileA…
z2oh Mar 27, 2024
fa9ee4a
[NFC][OpenMP] Silent unused variable in `kmp_collapse.cpp`
shiltian Mar 27, 2024
a7ac0dd
[NFC][OpenMP] Use `SimpleVLA` to replace variable length arrays in C++
shiltian Mar 27, 2024
ecf6bb2
[RISCV] Add register overlap checks to the assembler for some Zvk* in…
topperc Mar 27, 2024
8a9c170
[RISCV] Align stack size down to a multiple of 16 before using cm.pus…
topperc Mar 27, 2024
da3e58e
Revert "[RISCV][TTI] Scale the cost of the sext/zext with LMUL (#86617)"
arcbbb Mar 27, 2024
f1dff83
[mlir][bazel] Expose GPUCommonPass.h only by a single target. (#86730)
chsigg Mar 27, 2024
9c0c98e
[llvm-debuginfo-analyzer][DOC] Convert 'README.txt' to markdown. (#86…
CarlosAlbertoEnciso Mar 27, 2024
22bfc58
[RISCV] Teach RISCVMakeCompressible handle byte/half load/store for Z…
yetingk Mar 27, 2024
16993c7
[NFC][HWASAN] Regenerate test
vitalybuka Mar 27, 2024
05a7b22
[RISCV] Add areInlineCompatible for riscv target (#86639)
jacquesguan Mar 27, 2024
577e0ef
[clang][AST] Silence unused-value warnings in unittest DeclPrinterTest
alinas Mar 27, 2024
7ed372f
Merge from 'sycl' to 'sycl-web' (5 commits)
haonanya1 Mar 27, 2024
aa2d5d5
Recommit "[RISCV][TTI] Scale the cost of the sext/zext with LMUL (#86…
arcbbb Mar 27, 2024
6d13263
[RISCV] Add tests for combineBinOpOfZExts. NFC (#86689)
lukel97 Mar 27, 2024
defc485
[AArch64] Remove Automatic Enablement of FEAT_F32MM (#85203)
Stylie777 Mar 27, 2024
2938f1c
[InstCombine] Refactor powi(X,Y) / X to call foldPowiReassoc, NFC
vfdff Mar 24, 2024
bd9bb31
[InstCombine] add restrict reassoc for the powi(X,Y) / X
vfdff Mar 24, 2024
df75183
[TBAA] Add verifier for tbaa.struct metadata (#86709)
juliannagele Mar 27, 2024
f15b7de
[RISCV] Add test case to show missing vmerge fold on tied pseudos. NFC
lukel97 Mar 27, 2024
cc23ee8
[LLD][COFF] Add support for EXPORTAS import name type. (#86541)
cjacek Mar 27, 2024
c9d1266
[llvm-dlltool][llvm-lib][COFF] Don't override NONAME exports with dem…
cjacek Mar 27, 2024
ab7dba2
[CodeGen][LLVM] Make the `va_list` related intrinsics generic. (#85460)
AlexVlx Mar 27, 2024
ef316da
AMDGPU: Fix dead check prefixes in test
arsenm Mar 26, 2024
1103a2a
Reland [AMDGPU] MCExpr-ify MC layer kernel descriptor (#86494)
JanekvO Mar 27, 2024
408c365
[gn build] Port 1103a2a337e9
llvmgnsyncbot Mar 27, 2024
51388fb
[DAG] visitSub - reuse existing SDLoc instead of regenerating it. NFC.
RKSimon Mar 26, 2024
9247f31
[DAG] foldAddSubOfSignBit - reuse existing SDLoc instead of regenerat…
RKSimon Mar 26, 2024
875aed1
[X86] Add combineExtractFromVectorLoad helper - pulled out of combine…
RKSimon Mar 27, 2024
e82765b
[X86] masked_store.ll - add nounwind to remove cfi noise
RKSimon Mar 27, 2024
b8cc838
[analyzer][docs] Document the `optin.performance.Padding` checker (#8…
komalverma04 Mar 27, 2024
4f9aab2
[NFC][TableGen][GlobalISel] Move MIR pattern parsing out of combiner …
Pierre-vh Mar 27, 2024
26464f2
[FreeBSD] Mark __stack_chk_guard dso_local except for PPC64 (#86665)
justincady Mar 27, 2024
932949d
[APINotes] Upstream the remaining API Notes fixes and tests
egorzhdan Mar 27, 2024
b343b02
[gn build] Port 4f9aab2b500d
llvmgnsyncbot Mar 27, 2024
2fa46ca
[workflows] Update the version of the scorecard-action (#86753)
tstellar Mar 27, 2024
6e6d266
[libc++] Fix one case in saturate_cast.pass.cpp for 64-bit on z/OS (#…
zibi2 Mar 27, 2024
2cb7ea1
[lldb][nfc] Delete unused variable (#86740)
felipepiovezan Mar 27, 2024
f5296df
[FPEnv][AMDGPU] Correct AMDGPUSimplifyLibCalls handling of strictfp a…
kpneal Mar 27, 2024
b43ec8e
[SLP]Fix PR86798: handle phi nodes being trunced, but not its operands.
alexey-bataev Mar 27, 2024
caca5e4
Fix lit. (#13174)
haonanya1 Mar 27, 2024
11b20d7
[clang] Fix an out-of-bound crash when checking template partial spec…
hokein Mar 27, 2024
9f84594
[lldb][Dwarf] Add missing timer when parsing .debug_abbrev. (#86568)
ZequanWu Mar 27, 2024
6d3ec56
[X86] combineExtractWithShuffle - use combineExtractFromVectorLoad to…
RKSimon Mar 27, 2024
9189660
[RISCV] RISCV vector calling convention (1/2) (#77560)
4vtomat Mar 27, 2024
58de1e2
Fix stack layout for frames larger than 2gb (#84114)
wesleywiser Mar 27, 2024
13b653a
[clang][RISCV] Enable RVV with function attribute __attribute__((targ…
4vtomat Mar 27, 2024
51f7b26
[libc][support][UInt] implement 128b math helpers (#86531)
nickdesaulniers Mar 27, 2024
aa2c14d
[OpenMP] Close up permissions on /tmp files (#85469)
TerryLWilmarth Mar 27, 2024
009f88f
[SystemZ][z/OS] TXT records in the GOFF reader (#74526)
ysyeda Mar 27, 2024
c388690
[libc++][NFC] Simplify copy and move lowering to memmove a bit (#83574)
philnik777 Mar 27, 2024
313bf28
[ARM][MVE] Remove kill flags when reusing VPR register. (#86300)
davemgreen Mar 27, 2024
78f0871
Revert rG58de1e2c5eee548a9b365e3b1554d87317072ad9 "Fix stack layout f…
RKSimon Mar 27, 2024
7711853
[libc] Remove obsolete LIBC_HAS_BUILTIN macro (#86554)
marcauberer Mar 27, 2024
6a0ec8e
[lldb] Revive shell test after updating UnwindTable (#86770)
jasonmolenda Mar 27, 2024
468c6be
Fix "result of 32-bit shift implicitly converted to 64 bits" MSVC war…
RKSimon Mar 27, 2024
f92fa7e
[X86] Add -verify-machineinstrs to huge stack tests
RKSimon Mar 27, 2024
9669aba
[Thumb1] LivePhysRegs to LiveRegUnits (#84474)
AreaZR Mar 27, 2024
6ad1cf3
[InstallAPI] Add *umbrella-header options (#86587)
cyndyishida Mar 27, 2024
0099c58
[bazel] Remove -lm on macOS (#86706)
keith Mar 27, 2024
fca4831
Fix signed/unsigned comparison warning. NFC.
RKSimon Mar 27, 2024
4d17743
[flang][OpenMP] Rename makeList overloads to make{Objects,Clauses}, N…
kparzysz Mar 27, 2024
1c96580
[LegalizeDAG] Merge PerformInsertVectorEltInMemory into ExpandInsertT…
topperc Mar 27, 2024
c335acc
[ELF] --pack-dyn-relocs=android+relr: place IRELATIVE in .rela.plt (#…
MaskRay Mar 27, 2024
dcd0f2b
[X86] combineExtractFromVectorLoad support extraction from vector of …
RKSimon Mar 27, 2024
5d3ef06
[X86] combine-pavg.ll - add demandedelts test coverage for #86284
RKSimon Mar 27, 2024
35d55f2
[NFC][mlir] Reorder `declarePromisedInterface()` operands (#86628)
justinfargnoli Mar 27, 2024
96b3969
[NFC][HWASAN] Precommit globals-access test
vitalybuka Mar 27, 2024
e96f652
[NFC][IR] Add SetNoSanitize helpers (#86772)
vitalybuka Mar 27, 2024
5a7341a
[NFC][libc++][TZDB] Improves some internals. (#84800)
mordante Mar 27, 2024
52431fd
[WebAssembly] Remove threwValue comparison after __wasm_setjmp_test (…
aheejin Mar 27, 2024
2598aa6
[CSSPGO] Reject high checksum mismatched profile (#84097)
wlei-llvm Mar 27, 2024
f1ac559
Revert "[scudo] Use getMonotonicTimeFast for tryLock." (#86590)
ChiaHungDuan Mar 27, 2024
36e74cf
[AArch64] Clear kill flags when removing FMOVDr. (#86308)
davemgreen Mar 27, 2024
2329fb2
[HLSL] enforce unsigned types for reversebits (#86720)
farzonl Mar 27, 2024
2d64185
[nfc][PGO]Factor out profile scaling into a standalone helper functio…
minglotus-6 Mar 27, 2024
e36ec2f
[C99] Claim conformance to digraphs/iso646
AaronBallman Mar 27, 2024
dd06b8e
[clang-format] Fix anonymous reference parameter with default value (…
rayroudc Mar 27, 2024
421085f
[Offload] Change unregister library to use `atexit` instead of destru…
jhuber6 Mar 27, 2024
ed68aac
[Libomptarget] Move API implementations into GenericPluginTy (#86683)
jhuber6 Mar 27, 2024
6ef8299
Recommit "[VPlan] Replace disjoint or with add instead of dropping di…
fhahn Mar 27, 2024
c2bdbed
[libc++][NFC] Remove whitespace that doesn't belong
ldionne Mar 27, 2024
aeb8628
Revert "[SystemZ][z/OS] TXT records in the GOFF reader (#74526)"
Everybody0523 Mar 27, 2024
baf66ec
[Target][RISCV] Add HwMode support to subregister index size/offset. …
topperc Mar 27, 2024
10bd555
[RISCV] Model vd as a src for some Zvk* instructions in MC layer. (#8…
topperc Mar 27, 2024
d9a685a
[CodeGen][arm64e] Add methods and data members to Address, which are …
ahatanak Mar 27, 2024
cd17082
[libc][math][c23] Add remaining linux/* entrypoints for {,u}fromfp{,x…
overmighty Mar 27, 2024
4a5056b
[Libomptarget][NFC] Remove trivially true checks on function pointers…
jhuber6 Mar 27, 2024
685d785
Fix the -Wmissing-designated-field-initializers on the clang-ppc64le-…
amy-kwan Mar 27, 2024
abc270a
Finish revert "[SystemZ][z/OS] TXT records in the GOFF reader (#74526)"
boomanaiden154 Mar 27, 2024
0d7ea50
[AArch64] Pre-commit test for #86717. NFC
topperc Mar 27, 2024
acab142
[LegalizeDAG] Freeze index when converting insert_elt/insert_subvecto…
topperc Mar 27, 2024
4d4626d
[TEST][HWASAN] Fix test after #86771
vitalybuka Mar 27, 2024
3522de9
[TEST][HWASAN] Fix test after #86771
vitalybuka Mar 27, 2024
fa90a0a
[llvm-exegesis] Improve error handling for shm_open calls
boomanaiden154 Mar 27, 2024
8a07167
Revert "[libc][math][c23] Add remaining linux/* entrypoints for {,u}f…
nickdesaulniers Mar 27, 2024
453a63c
[NFC][HWASAN] Promote InstrumentGlobals to member (#86773)
vitalybuka Mar 27, 2024
70e8cf0
[HWASAN] Don't instrument loads from global if globals are not tagged…
vitalybuka Mar 27, 2024
f18600c
[Driver] Avoid repeated ToolChain.getTriple() calls. NFC
MaskRay Mar 27, 2024
c7d947f
[lldb] [ObjC runtime] Don't cast to signed when left shifting (#86605)
jasonmolenda Mar 27, 2024
acdba09
[ELF] Change duplicate symbol errors to use errorOrWarn
MaskRay Mar 27, 2024
e2d091e
Merge from 'sycl' to 'sycl-web'
Mar 27, 2024
fa855a1
Merge from 'main' to 'sycl-web' (91 commits)
jyu2-git Mar 28, 2024
69ed3e8
Merge commit 'acdba090f2724335cf6cf6ecbfb68f67f0cd2def' into llvmspir…
sys-ce-bb Mar 28, 2024
0c466cd
switch task sequence enum to new available enum (#2461)
bowenxue-intel Mar 27, 2024
76b5590
Move enableAllExtensions out of header (#2459)
svenvh Mar 28, 2024
e2ce547
Revert "[CodeGen][arm64e] Add methods and data members to Address, wh…
ahatanak Mar 28, 2024
a760456
Fix tbaa.struct overlapping issue found by verifier
sys-ce-bb Mar 28, 2024
08ce280
Update lit due to Target ID difference
sys-ce-bb Mar 28, 2024
12cfa16
Fix inrange GEP
sys-ce-bb Mar 27, 2024
023653f
Revert "[RemoveDIs] Load into new debug info format by default in llv…
sys-ce-bb Mar 29, 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
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
6 changes: 6 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,12 @@ sycl/test-e2e/Plugin/dll-detach-order.cpp @intel/llvm-reviewers-runtime
sycl/plugins/**/cuda/ @intel/llvm-reviewers-cuda
sycl/plugins/**/hip/ @intel/llvm-reviewers-cuda

# Transform Dialect in MLIR.
/mlir/include/mlir/Dialect/Transform/* @ftynse @nicolasvasilache
/mlir/lib/Dialect/Transform/* @ftynse @nicolasvasilache
/mlir/**/*TransformOps* @ftynse @nicolasvasilache


# CUDA specific runtime implementations
sycl/include/sycl/ext/oneapi/experimental/cuda/ @intel/llvm-reviewers-cuda

Expand Down
128 changes: 128 additions & 0 deletions .github/workflows/issue-write.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
name: Comment on an issue

on:
workflow_run:
workflows: ["Check code formatting"]
types:
- completed

permissions:
contents: read

jobs:
pr-comment:
runs-on: ubuntu-latest
permissions:
pull-requests: write
if: >
github.event.workflow_run.event == 'pull_request'
steps:
- name: 'Download artifact'
uses: actions/download-artifact@6b208ae046db98c579e8a3aa621ab581ff575935 # v4.1.1
with:
github-token: ${{ secrets.ISSUE_WRITE_DOWNLOAD_ARTIFACT }}
run-id: ${{ github.event.workflow_run.id }}
name: workflow-args

- name: 'Comment on PR'
uses: actions/github-script@v3
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
var fs = require('fs');
const comments = JSON.parse(fs.readFileSync('./comments'));
if (!comments) {
return;
}

let runInfo = await github.actions.getWorkflowRun({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: context.payload.workflow_run.id
});

console.log(runInfo);


// Query to find the number of the pull request that triggered this job.
// The associated pull requests are based off of the branch name, so if
// you create a pull request for a branch, close it, and then create
// another pull request with the same branch, then this query will return
// two associated pull requests. This is why we have to fetch all the
// associated pull requests and then iterate through them to find the
// one that is open.
const gql_query = `
query($repo_owner : String!, $repo_name : String!, $branch: String!) {
repository(owner: $repo_owner, name: $repo_name) {
ref (qualifiedName: $branch) {
associatedPullRequests(first: 100) {
nodes {
baseRepository {
owner {
login
}
}
number
state
}
}
}
}
}
`
const gql_variables = {
repo_owner: runInfo.data.head_repository.owner.login,
repo_name: runInfo.data.head_repository.name,
branch: runInfo.data.head_branch
}
const gql_result = await github.graphql(gql_query, gql_variables);
console.log(gql_result);
console.log(gql_result.repository.ref.associatedPullRequests.nodes);

var pr_number = 0;
gql_result.repository.ref.associatedPullRequests.nodes.forEach((pr) => {
if (pr.baseRepository.owner.login = context.repo.owner && pr.state == 'OPEN') {
pr_number = pr.number;
}
});
if (pr_number == 0) {
console.log("Error retrieving pull request number");
return;
}

await comments.forEach(function (comment) {
if (comment.id) {
// Security check: Ensure that this comment was created by
// the github-actions bot, so a malicious input won't overwrite
// a user's comment.
github.issues.getComment({
owner: context.repo.owner,
repo: context.repo.repo,
comment_id: comment.id
}).then((old_comment) => {
console.log(old_comment);
if (old_comment.data.user.login != "github-actions[bot]") {
console.log("Invalid comment id: " + comment.id);
return;
}
github.issues.updateComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr_number,
comment_id: comment.id,
body: comment.body
});
});
} else {
github.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: pr_number,
body: comment.body
});
}
});

- name: Dump comments file
if: always()
run: cat comments
22 changes: 15 additions & 7 deletions .github/workflows/pr-code-format.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
name: "Check code formatting"
on:
pull_request_target:
pull_request:
branches:
- main
- sycl
- sycl-devops-pr/**
- sycl-rel-**

permissions:
pull-requests: write

jobs:
code_formatter:
runs-on: ubuntu-latest
Expand All @@ -34,12 +31,13 @@ jobs:
separator: ","
skip_initial_fetch: true

# We need to make sure that we aren't executing/using any code from the
# PR for security reasons as we're using pull_request_target. Checkout
# the target branch with the necessary files.
# We need to pull the script from the main branch, so that we ensure
# we get the latest version of this script.
- name: Fetch code formatting utils
uses: actions/checkout@v4
with:
reository: ${{ github.repository }}
ref: ${{ github.base_ref }}
sparse-checkout: |
llvm/utils/git/requirements_formatting.txt
llvm/utils/git/code-format-helper.py
Expand Down Expand Up @@ -78,10 +76,20 @@ jobs:
# to take advantage of the new --diff_from_common_commit option
# explicitly in code-format-helper.py and not have to diff starting at
# the merge base.
# Create an empty comments file so the pr-write job doesn't fail.
run: |
echo "[]" > comments &&
python ./code-format-tools/llvm/utils/git/code-format-helper.py \
--write-comment-to-file \
--token ${{ secrets.GITHUB_TOKEN }} \
--issue-number $GITHUB_PR_NUMBER \
--start-rev $(git merge-base $START_REV $END_REV) \
--end-rev $END_REV \
--changed-files "$CHANGED_FILES"

- uses: actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 #v4.3.0
if: always()
with:
name: workflow-args
path: |
comments
4 changes: 2 additions & 2 deletions bolt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ if (BOLT_ENABLE_RUNTIME)
execute_process(COMMAND ls /proc/self/map_files
RESULT_VARIABLE LS OUTPUT_QUIET ERROR_QUIET)
if (LS)
set(BOLT_ENABLE_RUNTIME OFF)
message(WARNING
"BOLT runtime is disabled as /proc/self/map_files is unreadable.")
"BOLT runtime may not be able to read /proc/self/map_files. Please use
`--instrumentation-binpath <path-to-instrumented-binary>` option.")
endif()
endif()

Expand Down
72 changes: 43 additions & 29 deletions bolt/docs/BAT.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,8 @@ binary onto the original binary.
# Usage
`--enable-bat` flag controls the generation of BAT section. Sampled profile
needs to be passed along with the optimized binary containing BAT section to
`perf2bolt` which reads BAT section and produces fdata profile for the original
binary. Note that YAML profile generation is not supported since BAT doesn't
contain the metadata for input functions.
`perf2bolt` which reads BAT section and produces profile for the original
binary.

# Internals
## Section contents
Expand All @@ -43,21 +42,21 @@ and [BoltAddressTranslation.cpp](/bolt/lib/Profile/BoltAddressTranslation.cpp).
### Layout
The general layout is as follows:
```
Hot functions table header
|------------------|
| Function entry |
| |--------------| |
| | OutOff InOff | |
| |--------------| |
~~~~~~~~~~~~~~~~~~~~
Hot functions table
Cold functions table

Cold functions table header
Functions table:
|------------------|
| Function entry |
| |--------------| |
| | OutOff InOff | |
| |--------------| |
~~~~~~~~~~~~~~~~~~~~
| |
| Address |
| translation |
| table |
| |
| Secondary entry |
| points |
|------------------|

```

### Functions table
Expand All @@ -75,28 +74,43 @@ internal offsets, and between hot and cold fragments, to better spread deltas
and save space.

Hot indices are delta encoded, implicitly starting at zero.
| Entry | Encoding | Description |
| ------ | ------| ----------- |
| `Address` | Continuous, Delta, ULEB128 | Function address in the output binary |
| `HotIndex` | Delta, ULEB128 | Cold functions only: index of corresponding hot function in hot functions table |
| `NumEntries` | ULEB128 | Number of address translation entries for a function |
| `EqualElems` | ULEB128 | Hot functions only: number of equal offsets in the beginning of a function |
| `BranchEntries` | Bitmask, `alignTo(EqualElems, 8)` bits | Hot functions only: if `EqualElems` is non-zero, bitmask denoting entries with `BRANCHENTRY` bit |
| Entry | Encoding | Description | Hot/Cold |
| ------ | ------| ----------- | ------ |
| `Address` | Continuous, Delta, ULEB128 | Function address in the output binary | Both |
| `HotIndex` | Delta, ULEB128 | Index of corresponding hot function in hot functions table | Cold |
| `FuncHash` | 8b | Function hash for input function | Hot |
| `NumBlocks` | ULEB128 | Number of basic blocks in the original function | Hot |
| `NumSecEntryPoints` | ULEB128 | Number of secondary entry points in the original function | Hot |
| `NumEntries` | ULEB128 | Number of address translation entries for a function | Both |
| `EqualElems` | ULEB128 | Number of equal offsets in the beginning of a function | Hot |
| `BranchEntries` | Bitmask, `alignTo(EqualElems, 8)` bits | If `EqualElems` is non-zero, bitmask denoting entries with `BRANCHENTRY` bit | Hot |

Function header is followed by `EqualElems` offsets (hot functions only) and
`NumEntries-EqualElems` (`NumEntries` for cold functions) pairs of offsets for
current function.
Function header is followed by *Address Translation Table* with `NumEntries`
total entries, and *Secondary Entry Points* table with `NumSecEntryPoints`
entries (hot functions only).

### Address translation table
Delta encoding means that only the difference with the previous corresponding
entry is encoded. Input offsets implicitly start at zero.
| Entry | Encoding | Description |
| ------ | ------| ----------- |
| `OutputOffset` | Continuous, Delta, ULEB128 | Function offset in output binary |
| `InputOffset` | Optional, Delta, SLEB128 | Function offset in input binary with `BRANCHENTRY` LSB bit |
| Entry | Encoding | Description | Branch/BB |
| ------ | ------| ----------- | ------ |
| `OutputOffset` | Continuous, Delta, ULEB128 | Function offset in output binary | Both |
| `InputOffset` | Optional, Delta, SLEB128 | Function offset in input binary with `BRANCHENTRY` LSB bit | Both |
| `BBHash` | Optional, 8b | Basic block hash in input binary | BB |
| `BBIdx` | Optional, Delta, ULEB128 | Basic block index in input binary | BB |

For hot fragments, the table omits the first `EqualElems` input offsets
where the input offset equals output offset.

`BRANCHENTRY` bit denotes whether a given offset pair is a control flow source
(branch or call instruction). If not set, it signifies a control flow target
(basic block offset).
`InputAddr` is omitted for equal offsets in input and output function. In this
case, `BRANCHENTRY` bits are encoded separately in a `BranchEntries` bitvector.

### Secondary Entry Points table
The table is emitted for hot fragments only. It contains `NumSecEntryPoints`
offsets denoting secondary entry points, delta encoded, implicitly starting at zero.
| Entry | Encoding | Description |
| ----- | -------- | ----------- |
| `SecEntryPoint` | Delta, ULEB128 | Secondary entry point offset |
11 changes: 11 additions & 0 deletions bolt/include/bolt/Core/DebugNames.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,16 @@ class DWARF5AcceleratorTable {
std::unique_ptr<DebugBufferVector> releaseBuffer() {
return std::move(FullTableBuffer);
}
/// Adds a DIE that is referenced across CUs.
void addCrossCUDie(const DIE *Die) {
CrossCUDies.insert({Die->getOffset(), Die});
}
/// Returns true if the DIE can generate an entry for a cross cu reference.
/// This only checks TAGs of a DIE because when this is invoked DIE might not
/// be fully constructed.
bool canGenerateEntryWithCrossCUReference(
const DWARFUnit &Unit, const DIE &Die,
const DWARFAbbreviationDeclaration::AttributeSpec &AttrSpec);

private:
BinaryContext &BC;
Expand Down Expand Up @@ -128,6 +138,7 @@ class DWARF5AcceleratorTable {
llvm::DenseMap<uint64_t, uint32_t> CUOffsetsToPatch;
// Contains a map of Entry ID to Entry relative offset.
llvm::DenseMap<uint64_t, uint32_t> EntryRelativeOffsets;
llvm::DenseMap<uint64_t, const DIE *> CrossCUDies;
/// Adds Unit to either CUList, LocalTUList or ForeignTUList.
/// Input Unit being processed, and DWO ID if Unit is being processed comes
/// from a DWO section.
Expand Down
1 change: 1 addition & 0 deletions bolt/include/bolt/Core/MCPlus.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ class MCAnnotation {
kOffset, /// Offset in the function.
kLabel, /// MCSymbol pointing to this instruction.
kSize, /// Size of the instruction.
kDynamicBranch, /// Jit instruction patched at runtime.
kGeneric /// First generic annotation.
};

Expand Down
17 changes: 17 additions & 0 deletions bolt/include/bolt/Core/MCPlusBuilder.h
Original file line number Diff line number Diff line change
Expand Up @@ -1199,6 +1199,16 @@ class MCPlusBuilder {
/// Set instruction size.
void setSize(MCInst &Inst, uint32_t Size) const;

/// Check if the branch instruction could be modified at runtime.
bool isDynamicBranch(const MCInst &Inst) const;

/// Return ID for runtime-modifiable instruction.
std::optional<uint32_t> getDynamicBranchID(const MCInst &Inst) const;

/// Mark instruction as a dynamic branch, i.e. a branch that can be
/// overwritten at runtime.
void setDynamicBranch(MCInst &Inst, uint32_t ID) const;

/// Return MCSymbol that represents a target of this instruction at a given
/// operand number \p OpNum. If there's no symbol associated with
/// the operand - return nullptr.
Expand Down Expand Up @@ -1688,6 +1698,13 @@ class MCPlusBuilder {
llvm_unreachable("not implemented");
}

/// Create long conditional branch with a target-specific conditional code
/// \p CC.
virtual void createLongCondBranch(MCInst &Inst, const MCSymbol *Target,
unsigned CC, MCContext *Ctx) const {
llvm_unreachable("not implemented");
}

/// Reverses the branch condition in Inst and update its taken target to TBB.
///
/// Returns true on success.
Expand Down
Loading
Loading