Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
486 commits
Select commit Hold shift + click to select a range
9d03275
[ASan][libc++] Turn off SSO annotations for Apple platforms (#96269)
AdvenamTacet Jul 19, 2024
837d606
[libc] Temporarily disable hypotf sNaN tests for NVPTX targets. (#99708)
lntue Jul 19, 2024
9e74f66
[compiler-rt] dump registers for FreeBSD/i386 (#99702)
devnexen Jul 19, 2024
84658fb
Revert "[PS4/PS5][Driver][DWARF] Always emit .debug_aranges for SCE t…
playstation-edd Jul 19, 2024
a2f61ba
[libc][math]fadd implementation (#99694)
aaryanshukla Jul 19, 2024
56ffbd9
[workflows] Avoid usage of access token in issue-write.yml (#94011)
tstellar Jul 19, 2024
fada922
[LLDB][SBSaveCoreOptions] Fix TestProcessSaveCore (#99692)
Jlalond Jul 19, 2024
b686600
[BOLT] Skip instruction shortening (#93032)
hilldani Jul 19, 2024
b172f4a
[SandboxIR] Fix -Wunused-variable in SandboxIR.cpp (NFC)
DamonFool Jul 19, 2024
7f56323
[bolt][Docs] fix missing option in cmake of stage3 in OptimizingClang…
Itis-hard2name Jul 19, 2024
1ee8238
[BOLT][test] Fix Filecheck typos (#93979)
klensy Jul 19, 2024
8bc02bf
fix(bolt/**.py): fix comparison to None (#94012)
e-kwsm Jul 19, 2024
be7f182
[LV] Use llvm::all_of in LoopVectorizationCostModel::getMaximizedVFFo…
topperc Jul 20, 2024
05f0e86
[lldb] Change lldb's breakpoint handling behavior (#96260)
jasonmolenda Jul 20, 2024
6747f12
[BOLT][DWARF][NFC] Split processUnitDIE into two lambdas (#99225)
sayhaan Jul 20, 2024
4a739fb
[Clang] [docs] [MSVC] Add sections on `__forceinline` and intrinsic b…
MaxEW707 Jul 20, 2024
a3ebb66
[libc][math]: updated math docs for newhdrgen (#99715)
aaryanshukla Jul 20, 2024
52c08d7
Revert "[lldb] Change lldb's breakpoint handling behavior (#96260)"
jasonmolenda Jul 20, 2024
cfc2260
InstrProf: Mark BiasLI as invariant. (#95588)
chapuni Jul 20, 2024
abaf13a
Revert "Reapply "Add source file name for template instantiations in …
slackito Jul 20, 2024
d4dc8e4
Fixup for #95588, don't assume `align 8`.
chapuni Jul 20, 2024
2d756d9
[lld-macho,test] Adjust reproduce-thin-archive-objc.s
MaskRay Jul 20, 2024
740161a
Revert "[LLVM][LTO] Factor out RTLib calls and allow them to be dropp…
chapuni Jul 20, 2024
e2965fe
Revert "[LLVM][LTO] Add missing dependency"
chapuni Jul 20, 2024
168ecd7
Revert "[bazel] Fix llvm:Core build (#99054)"
chapuni Jul 20, 2024
5893b1e
Reformat
chapuni Jul 20, 2024
72d8c27
[Fuchsia] Remove linker flags from stage2 pass through (#99722)
zeroomega Jul 20, 2024
672cc8b
[GlobalISel] Allow customizing instruction-select pass
darkbuck Jul 20, 2024
96fb0ea
[compiler-rt] remove unneeded comma for pthread_atfork declaration (#…
devnexen Jul 20, 2024
37be437
[lld-macho] Fix erasing category names for ObjC categories (#99400)
alx32 Jul 20, 2024
06d2176
[clang][Interp][NFC] Move global variable init case to the top
tbaederr Jul 19, 2024
b201ab8
[MC] Move setIncrementalLinkerCompatible() calls to MCWinCOFFStreamer
MaskRay Jul 20, 2024
79a8279
[MC] Remove IncrementalLinkerCompatible parameters from create*WinCOF…
MaskRay Jul 20, 2024
c2019a3
SelectionDAG: Avoid using MachineFunction::getMMI (#99696)
arsenm Jul 20, 2024
867ff2d
[lit] Add a flag to disable lit time tests (#98270)
thevinster Jul 20, 2024
d386a55
[libc] Make static_assert available even if NDEBUG is set (#99742)
petrhosek Jul 20, 2024
0d26f65
[clang][Interp] Emit diagnostics if final ltor conversion fails
tbaederr Jul 20, 2024
bbd4af5
[mlir][Transforms] Dialect conversion: Simplify handling of dropped a…
matthias-springer Jul 20, 2024
62aa596
[AMDGPU] Add no return image_sample intrinsics and instructions (#97542)
perlfu Jul 20, 2024
155f6b4
[clang][Interp] Fix reporting invalid new/delete expressions
tbaederr Jul 20, 2024
a8a7d62
AArch64: Avoid using MachineFunction::getMMI
arsenm Jul 19, 2024
b4f3a96
X86: Avoid using MachineFunction::getMMI
arsenm Jul 19, 2024
f65d7fd
[libc++][vector] Fixes shrink_to_fit. (#97895)
mordante Jul 20, 2024
a03935b
M68k: Remove hasDebugInfo check when deciding to emit CFI (#99750)
arsenm Jul 20, 2024
d8116cf
AsmPrinter: Avoid use of MachineFunction::getMMI (#99751)
arsenm Jul 20, 2024
54de554
[Clang] Fix C library wrappers for offloading (#99716)
jhuber6 Jul 20, 2024
710dab6
[VPlan] Remove VPPredInstPHIRecipes without users after region merging.
fhahn Jul 20, 2024
e77a01d
[Clang] Implement P3034R1 Module Declarations Shouldn’t be Macros (#9…
yronglin Jul 20, 2024
7d80ee5
CodeGen: Use IR function to query Module instead of MachineModuleInfo…
arsenm Jul 20, 2024
56a9f7c
[clang][Interp] Pass ASTContext to toAPValue()
tbaederr Jul 20, 2024
6395603
[X86][MC] Check AdSize16 for 16-bit addressing (#99761)
phoebewang Jul 20, 2024
615b7ee
Reapply "[LLVM][LTO] Factor out RTLib calls and allow them to be drop…
jhuber6 Jul 20, 2024
3c6ea7b
Remove 3DNow! from X86TargetParser. (#99352)
jyknight Jul 20, 2024
5303ca1
[clang][Interp] Start computing APValue offsets
tbaederr Jul 20, 2024
af0d731
[libc++][math] Mathematical Special Functions: Hermite Polynomial (#8…
PaulXiCao Jul 20, 2024
4d8e42e
[NVPTX] enforce signed 32 bit type for immediate offset (#99682)
AlexMaclean Jul 20, 2024
afbfb16
[libc++][TZDB] Implements zoned_time formatters. (#98347)
mordante Jul 20, 2024
29be889
reland "[libc] implement cached process/thread identity (#98989)" (#9…
SchrodingerZhu Jul 20, 2024
aa86f4f
[MC] Remove unnecessary DWARFMustBeAtTheEnd check
MaskRay Jul 20, 2024
d157884
Add logging for emit functions in BytecodeWriter.cpp (#99558)
GleasonK Jul 20, 2024
f9dd885
[libc++] Make std::pair trivially copyable if its members are (#89652)
philnik777 Jul 20, 2024
91bf0a0
[libc] Added static casts to fix implicit conversion warnings in 32-b…
mikhailramalho Jul 20, 2024
18f7ee5
[MC] Remove unused Register*Streamer
MaskRay Jul 20, 2024
2308c7f
[libc] Enable most of the libc entrypoitns for riscv (#99771)
mikhailramalho Jul 20, 2024
c59ee7e
Fix 40056: Prevent outlining of blocks with token type instructions (…
hiraditya Jul 20, 2024
1492e5f
Replace distutils.version with looseversion since the former was depr…
dyung Jul 20, 2024
98c0e55
Revert "SelectionDAG: Avoid using MachineFunction::getMMI" (#99777)
vitalybuka Jul 20, 2024
ce1a874
[clang-format] Fix a bug in annotating `*` in `#define`s (#99433)
owenca Jul 20, 2024
cc2fb58
[MC,ELF] Use loc from the directive for `.abort` (#99648)
chestnykh Jul 20, 2024
569814e
[libc] Implement pwait2 using pwait (#99781)
mikhailramalho Jul 20, 2024
1f00c42
[VPlan] Assert masked interleave accesses are allowed if needed (NFC)
fhahn Jul 20, 2024
28045ce
[ELF] Support (TYPE=<value>) beside output section address
MaskRay Jul 20, 2024
52a46bc
[SandboxIR] Implement StoreInst (#99707)
Jul 20, 2024
a23efcc
[VPlan] Move VPInterleaveRecipe::execute to VPlanRecipes.cpp (NFC).
fhahn Jul 20, 2024
c93554b
[ELF] Simplify ScriptLexer::consume. NFC
MaskRay Jul 20, 2024
efa833d
[ELF] Simplify readExpr. NFC
MaskRay Jul 20, 2024
2572a76
Revert "Replace distutils.version with looseversion since the former …
JDevlieghere Jul 20, 2024
16c24a8
[libc] Disable bind test for riscv
mikhailramalho Jul 20, 2024
ae2012d
[libc] Disable epoll_create fail test when SYS_epoll_create1 is used …
mikhailramalho Jul 20, 2024
7cbd899
[compiler-rt] lsan remove unneeded comma for pthread_atfork declarati…
devnexen Jul 20, 2024
ba9b5ff
[ELF,test] Fix RUN line issue in defsym.s
MaskRay Jul 20, 2024
b828c13
[ELF] Delete peek2 in Lexer (#99790)
hongyu-dev Jul 20, 2024
1d5d189
Revert "[LoongArch] Remove spurious mask operations from andn->icmp o…
heiher Jul 21, 2024
c8e69fa
[libc] Fix GPU 'printf' on strings with padding
jhuber6 Jul 21, 2024
d69eb7b
[MC] Move createMC{Object,Asm}Streamer to .cpp
MaskRay Jul 21, 2024
b8220b9
[MC] Remove unused bool arguments from createMCObjectStreamer callers
MaskRay Jul 21, 2024
6c9086d
[AArch64] Support varargs for preserve_nonecc (#99434)
antangelo Jul 21, 2024
86e21e1
[BOLT] Remove unused bool arguments from createMCObjectStreamer callers
MaskRay Jul 21, 2024
f1422a8
[MC] Deprecate createMCObjectStreamer with 3 unused trailing bool
MaskRay Jul 21, 2024
aefe411
[LoongArch] Add a test for spurious mask removal. NFC
heiher Jul 21, 2024
52e79ed
[MC] MCAsmStreamer: use MCTargetOptions
MaskRay Jul 21, 2024
9e69e6b
[MC] createAsmStreamer: add overload without unused bool parameters
MaskRay Jul 21, 2024
0caf0c9
[llvm-profgen] Support creating profiles of arbitrary events (#99026)
tcreech-intel Jul 21, 2024
05f986e
[LV] Add tests for loops with switches.
fhahn Jul 21, 2024
a41a4ac
[compiler-rt][RISCV] Implement __init_riscv_feature_bits (#85790)
BeMg Jul 21, 2024
14ec474
[libc++] Makes `unique_ptr operator*() noexcept. (#98047)
mordante Jul 21, 2024
cbebace
[AArch64] Add UQXTN2 patterns
davemgreen Jul 21, 2024
f6eb89c
[lldb][Windows] Fixed Host::Kill() (#99721)
slydiman Jul 21, 2024
c8c0b18
[LV] Update tests to not have dead interleave groups.
fhahn Jul 21, 2024
af0f58c
[libc][math][c23] Add entrypoints and tests for fsqrt{,l,f128} (#99669)
Jul 21, 2024
7f17b6b
[MC] Migrate to new createAsmStreamer that avoids unused bool parameters
MaskRay Jul 21, 2024
14a543e
[mlir][test] Add comments in a test (nfc) (#99810)
banach-space Jul 21, 2024
867faee
[MC] Migrate to createAsmStreamer without unused bool parameters
MaskRay Jul 21, 2024
233cca1
[ARM,Hexagon] Ignore IsVerboseAsm parameter in favor of MCStreamer::i…
MaskRay Jul 21, 2024
8f14e39
[MC] Remove unnecessary isVerboseAsm from Target::AsmTargetStreamerCt…
MaskRay Jul 21, 2024
e9c8514
[MC] Remove unnecessary isVerboseAsm from createAsmTargetStreamer
MaskRay Jul 21, 2024
7f017f0
[MC] Drop unnecessary MCSymbol::setExternal calls for ELF
MaskRay Jul 21, 2024
e299b16
[MC] Move isPrivateExtern to MCSymbolMachO
MaskRay Jul 21, 2024
6717dc5
*AsmBackend.cpp: Include StringSwitch.h
MaskRay Jul 21, 2024
a2af375
[MC] Move LOHContainer to MachObjectwriter
MaskRay Jul 21, 2024
ecaacd1
Reapply "Add source file name for template instantiations in -ftime-t…
usx95 Jul 21, 2024
6db2465
[Flang][Runtime] Fix implicit conversion warning when targeting 32bit…
serge-sans-paille Jul 21, 2024
9539a77
[MC] Export llvm::WinCOFFObjectWriter and access it from MCWinCOFFStr…
MaskRay Jul 21, 2024
ffcd7e9
[MC] Export llvm::SPIRVObjectTargetWriter and drop reliance on Mach-o…
MaskRay Jul 21, 2024
c156237
[libc][math][c23] Add entrypoints and tests for dsqrt{l,f128} (#99815)
Jul 21, 2024
09a399a
[MC] Move VersionInfo to MachObjectWriter
MaskRay Jul 21, 2024
5c83498
[Transforms] Use range-based for loops (NFC) (#99607)
kazutakahirata Jul 21, 2024
dcebe29
[clang-format] Fix a bug in annotating StartOfName (#99791)
owenca Jul 21, 2024
568845a
[mlir] Add a ValueSemantics trait. (#99493)
pifon2a Jul 21, 2024
a964f2e
[libc] Improve Benchmark UI (#99796)
jameshu15869 Jul 21, 2024
0387cd0
[clang-format] Fix a bug in annotating FunctionAnnotationRParen (#99802)
owenca Jul 21, 2024
1a47f3f
[MC] Compute fragment offsets eagerly
MaskRay Jul 21, 2024
74a1ca5
[libc][math] Update getpayload and fmul/fadd/fsub/ffma with NaN input…
lntue Jul 21, 2024
eaa07c0
[libc] Fix statvfs test case when SYS_statfs64 is used (#99827)
mikhailramalho Jul 22, 2024
4321300
[PowerPC] Support -fpatchable-function-entry (#92997)
Jul 22, 2024
d15ada2
[PAC] Incorrect codegen for constant global init with polymorphic MI …
ojhunt Jul 22, 2024
197b142
[libc] Add N Threads Benchmark Helper (#99834)
jameshu15869 Jul 22, 2024
324fea9
[mlir][docs] Update documentation for canonicalize. (#99753)
cxy-1993 Jul 22, 2024
76321b9
[llvm][Support] Implement raw_socket_stream::read with optional timeo…
cpsughrue Jul 22, 2024
248fcab
[InstCombine] Do not use operand info in `replaceInInstruction` (#99…
dtcxzyw Jul 22, 2024
57ccd42
[PowerPC]fix XRAY failures in https://lab.llvm.org/buildbot/#/builder…
Jul 22, 2024
7b28cc0
AMDGPU: Query MachineModuleInfo from PM instead of MachineFunction (#…
arsenm Jul 22, 2024
c91e852
Revert "[Clang] Implement P3034R1 Module Declarations Shouldn’t be Ma…
yronglin Jul 22, 2024
9d2f81e
[compiler-rt] fix couple of netbsd build warnings. (#99745)
devnexen Jul 22, 2024
58854fa
[RISCV] Don't cost vector arithmetic fp ops as cheaper than scalar (#…
lukel97 Jul 22, 2024
f18fd6e
[lld-macho] Use parallel algorithms in favor of `ThreadPool` (#99471)
BertalanD Jul 22, 2024
f4d4ce1
[RISCV] Add groupid/bitmask for RISC-V extension (#94440)
BeMg Jul 22, 2024
2873edd
[lld][RISCV] Add break to nested switch in `mergeAtomic` (#99762)
4vtomat Jul 22, 2024
8dafbb5
[RISCV] Remove unused function (NFC)
DamonFool Jul 22, 2024
6b9ac2a
[BranchFolding] Add a hook to override tail merge size (#99025)
wangpc-pp Jul 22, 2024
10d720b
[DeadStoreElimination] Add test for recent worklist revision (NFC)
antoniofrighetto Jul 22, 2024
36d384b
[mlir][Transforms][NFC] Dialect conversion: Simplify `EraseBlockRewri…
matthias-springer Jul 22, 2024
4c73b1a
[LoongArch] Recommit "Remove spurious mask operations from andn->icmp…
heiher Jul 22, 2024
b15aa7f
[ORC] Add unit test for MemoryFlags APIs, don't dereference end() ite…
lhames Jul 22, 2024
12762b8
[Clang][Interp] Diagnose use sizeless vector type as the argument of …
yronglin Jul 22, 2024
56ad7cc
[IR] Remove non-canonical matchings (#96763)
AZero13 Jul 22, 2024
c7bfc41
[Clang][NFCI] Prefer non-canonical template arguments for synthesized…
zyn0217 Jul 22, 2024
20d3815
[clang] Fix assertion failure in `injectEmbedTokens` (#99624)
Fznamznon Jul 22, 2024
7eb59a1
[Bazel] Fix libc Bazel build for 29be889c2c9c9a92e7ed89bd71d141961517…
Jul 22, 2024
4db11c1
[AArch64] Lower scalable i1 vector add reduction to cntp (#99031)
DevM-uk Jul 22, 2024
f138b33
[XCOFF] refactor the XCOFF BeginSymName handling
Jul 22, 2024
01d7836
[llvm-profgen] Add --sample-period to estimate absolute counts (#99826)
tcreech-intel Jul 22, 2024
2e78990
Revert "[AArch64] Lower scalable i1 vector add reduction to cntp" (#9…
DevM-uk Jul 22, 2024
2bc38dc
[analyzer] Improve bug report hashing, merge similar reports (#98621)
NagyDonat Jul 22, 2024
16e0591
[AArch64] Use isKnownNonZero to optimize eligible compares to cmn and…
AZero13 Jul 22, 2024
46223b5
libclc: add half version of 'sign' (#99841)
rjodinchr Jul 22, 2024
85e7428
[mlir][vector] Refactor vector-transfer-flatten.mlir (nfc) (3/n) (#95…
banach-space Jul 22, 2024
45c0dec
[LLD] [COFF] Zero-intialization & proper constructor invocation in CO…
vg0204 Jul 22, 2024
ef2af7f
[AArch64][SME] Make use of Arm Optimised Routines in compiler-rt (#99…
kmclaughlin-arm Jul 22, 2024
f406d83
[DAG] widenCtPop - reuse existing SDLoc. NFC.
RKSimon Jul 18, 2024
102d168
[Analysis] Bail out for negative offsets in isDereferenceableAndAlign…
david-arm Jul 22, 2024
bf08d0e
[flang] fix cg-rewrite DCE (#99653)
jeanPerier Jul 22, 2024
462d084
[flang] fix sequence association of polymorphic actual arguments (#99…
jeanPerier Jul 22, 2024
dc82c77
[Clang][NEON] Add neon target guard to intrinsics (#98624)
Lukacma Jul 22, 2024
15b41d2
[CodeGen] change prototype of regalloc filter function (#93525)
cdevadas Jul 22, 2024
c1622ca
Revert "[Clang][NEON] Add neon target guard to intrinsics" (#99864)
Lukacma Jul 22, 2024
f39bd0a
[AMDGPU] Do not print `kernel-resource-usage` information on non-kern…
jhuber6 Jul 22, 2024
cffe115
[llvm-dlltool] Use EXPORTAS name type for renamed imports on ARM64EC.…
cjacek Jul 22, 2024
5b8479b
[libc][CMake] Set library type of libc_diff_test_utils to STATIC (#99…
overmighty Jul 22, 2024
2f5dc59
[IncludeCleaner] Also check for spellings of physical headers (#99843)
kadircet Jul 22, 2024
a7fb25d
[AArch64] Fix broken check lines (NFC)
nikic Jul 22, 2024
0284b4b
[Clang][NEON] Add neon target guard to intrinsics (#99870)
Lukacma Jul 22, 2024
65e86a8
[X86] combineConcatVectorOps - concat(bitcast(),bitcast()) -> bitcast…
RKSimon Jul 22, 2024
05671ce
[X86] Add tests showing failure to push freeze through SSE PMADD nodes
RKSimon Jul 22, 2024
e9974f0
[X86] canCreateUndefOrPoisonForTargetNode - PMADDWD/PMADDUBSW nodes d…
RKSimon Jul 22, 2024
cb528e5
[gn] port a41a4ac78294
nico Jul 22, 2024
aa99192
[flang][OpenMP] Add TODO messages for partially implemented atomic ty…
tblah Jul 22, 2024
bc4c3bf
[libc] Remove special case handing around test case that was fixed
jhuber6 Jul 22, 2024
3c459cf
[Clang] Fix handling of qualified id-expressions in unevaluated conte…
cor3ntin Jul 22, 2024
6ae4014
[AArch64] Add a test for stack-frame-layout analysis of Scalable obje…
davemgreen Jul 22, 2024
8ebe7e6
[DAGCombiner] Push freeze through SETCC and SELECT_CC (#64718)
bjope Apr 5, 2024
8417f49
[gn build] Port 04760bfadb39
llvmgnsyncbot Jul 22, 2024
6f915f4
[gn build] Port af0d731b1298
llvmgnsyncbot Jul 22, 2024
091ec15
[gn build] Port b15aa7f88c21
llvmgnsyncbot Jul 22, 2024
32cd189
[GVN] Look through select/phi when determining underlying object (#99…
nikic Jul 22, 2024
83c2bfd
[clang][dataflow] Handle this-capturing lambdas in field initializers…
bazuzi Jul 22, 2024
d8e0b0d
[clang] Diagnose use of deprecated template alias (#97619)
premanandrao Jul 22, 2024
613d2c3
[clang][Interp][NFC] Avoid hitting an assertion in invalid code
tbaederr Jul 20, 2024
ca3d4df
[Metadata] Make range boundary variables unsigned (NFC) (#99338)
AZero13 Jul 22, 2024
2e6558b
[flang][OpenMP] fix lastprivate for allocatables (#99686)
tblah Jul 22, 2024
7ddcf7a
[libc] Change fsfilcnt_t and fsblkcnt_t to be 64-bits long (#99876)
mikhailramalho Jul 22, 2024
28e6095
[libc] Add working entrypoints to riscv (#99885)
mikhailramalho Jul 22, 2024
280b04f
Record mainfile name in the Frontend time trace (#99866)
usx95 Jul 22, 2024
65825cd
[libc] Use `<assert.h>` in overlay mode for LIBC_ASSERT (#99875)
jhuber6 Jul 22, 2024
cda5b2b
[libc] Change fcntl cmd when only fcntl64 is available (#99675)
mikhailramalho Jul 22, 2024
2b78303
[DAGCombiner] Freeze maybe poison operands when folding select to log…
bjope Jul 22, 2024
5ea38b8
[lit][NFC] Avoid unintended -EMPTY suffix in check prefix (#99690)
ilovepi Jul 22, 2024
e970989
[clang][OpenMP] Avoid names that hide existing variables, NFC
kparzysz Jul 17, 2024
a544761
[Flang][runtime] Add dependency to build FortranRuntime after flang-n…
mjklemm Jul 22, 2024
9da221d
[SLP][NFC]Remove incorrect attribure from the test, NFC.
alexey-bataev Jul 22, 2024
d7e185c
[OMPIRBuilder] - Handle dependencies in `createTarget` (#93977)
bhandarkar-pranav Jul 22, 2024
4010ddf
[MC,AArch64] Create mapping symbols with non-unique names
MaskRay Jul 22, 2024
ec7f8e1
[AMDGPU] Add intrinsic for raw atomic buffer loads (#97707)
OutOfCache Jul 22, 2024
b1ca2a9
[PGO] Sampled instrumentation in PGO to speed up instrumentation bina…
xur-llvm Jul 22, 2024
2c92335
[RISCV] Copy call frame size when splitting basic block in emitSelect…
topperc Jul 22, 2024
6911f82
[libc] Fix invalid format specifier in benchmark
jhuber6 Jul 22, 2024
0b12e18
[clang-fuzzer-dictionary] Fix build failure with libfuzzer (#99871)
Teemperor Jul 22, 2024
ec966f6
[libcxx] [test] Make indentation more consistent in thousands_sep. NF…
mstorsjo Jul 22, 2024
3d7622e
[libc++][ranges] LWG3618: Unnecessary `iter_move` for `transform_view…
xiaoyang-sde Jul 22, 2024
4189226
[libc++] Update some C++23 statuses to "Nothing to do" or "Complete" …
strega-nil Jul 22, 2024
70843bf
[libc][math] Optimize copysign{,f,f16} and fabs{,f,f16} with builtins…
overmighty Jul 22, 2024
c80b799
[libc] No need to use recursion in fcntl (#99893)
mikhailramalho Jul 22, 2024
1c798e0
[SelectionDAGBuilder][RISCV] Fix crash when using a memory constraint…
topperc Jul 22, 2024
90569e0
[Support] Add Arm NEON implementation for `llvm::xxh3_64bits` (#99634)
BertalanD Jul 22, 2024
f2eb7c7
[test] Delete a redundant mapping symbol test
MaskRay Jul 22, 2024
3f8d77b
Revert "[AArch64][SVE] Improve code quality of vector unsigned/signed…
Jul 22, 2024
fa5971c
[flang][debug] Generate correct name for external function. (#99510)
abidh Jul 22, 2024
d221662
[RISCV] In emitSelectPseudo, copy call frame size from LastSelectPseu…
topperc Jul 22, 2024
0950533
[RISCV] Move call to EmitLoweredCascadedSelect above some variable de…
topperc Jul 22, 2024
bee2654
[Asan] Skip pre-split coroutine and noop coroutine frame (#99415)
apolloww Jul 22, 2024
146fd7c
[PAC][Driver] Support `pauthtest` ABI for AArch64 Linux triples (#97237)
kovdan01 Jul 22, 2024
511e93b
Handle constant "pointers" for `__atomic_always_lock_free`/`__atomic_…
jyknight Jul 22, 2024
315561c
[run-clang-tidy.py] Refactor, add progress indicator, add type hints …
nicovank Jul 22, 2024
9d76231
[clang-tidy] Ensure functions are anchored in the global namespace (f…
matthew-f Jul 22, 2024
9374216
Replace distutils.version with packaging.version since the former was…
dyung Jul 22, 2024
0eb719f
[AMDGPU] Fix build failure in raw.atomic.buffer.load tests (#99912)
OutOfCache Jul 22, 2024
735974e
[builtins] Use __builtin_clzll for 64-bit types (#99874)
s-barannikov Jul 22, 2024
2ef12b5
[clang] Fix the broken DeductionGuide ToolingTests after c7bfc41860a6…
hokein Jul 22, 2024
bb8a740
[lldb] Change GetStartSymbol to GetStartAddress in DynamicLoader (#99…
medismailben Jul 22, 2024
52dd4db
[clang-tidy] `bugprone-exception-escape` didn't detech catching of an…
hanickadot Jul 22, 2024
50c4e03
[clang][test] Add missing test file to cmake (#99907)
keith Jul 22, 2024
d6e17d7
[gn build] Port 50c4e0392a42
llvmgnsyncbot Jul 22, 2024
3b24e5d
Omit .debug_aranges if it is empty (#99897)
playstation-edd Jul 22, 2024
a634171
[InstrPGO][TypeProf]Annotate vtable types when they are present in th…
mingmingl-llvm Jul 22, 2024
da2f720
[libc] Include cbrt in baremetal targets (#99916)
petrhosek Jul 22, 2024
04d5003
[clang-tidy][DOC] Update check documentation
PiotrZSL Jul 22, 2024
bdee9b0
Revert "[BOLT][DWARF][NFC] Split processUnitDIE into two lambdas" (#9…
sayhaan Jul 22, 2024
e6fdecd
[VPlan] Drop references to Ingredient from VPWidenRecipe comments (NFC)
fhahn Jul 22, 2024
e09032f
[StackFrameLayoutAnalysis] Add basic Scalable stack slot output (#99883)
davemgreen Jul 22, 2024
9a8b040
Reapply "[lld] enable fixup chains by default (#79894)" (#99255)
BertalanD Jul 22, 2024
3cb82f4
[SLP]Fix PR99899: Use canonical type instead of original vector of ptr.
alexey-bataev Jul 22, 2024
8972979
[libc] Updated header_generation.rst (#99712)
RoseZhang03 Jul 22, 2024
d2f42c7
[mlir] Add unit test for RankedTensorType wrapper example. (#99789)
jpienaar Jul 22, 2024
6777c34
[DXIL][Doc] Update specification of TableGen DXIL properties (#99055)
bharadwajy Jul 22, 2024
aac3a2a
[libc] Fix callback type in `exit_handlers.cpp` not matching (#97642)
jhuber6 Jul 22, 2024
b177ac4
[compiler-rt][rtsan] Use sanitizer internal allocator during rtsan in…
davidtrevelyan Jul 22, 2024
b846176
[compiler-rt] Moved cmake libatomic check to top level config-ix (#99…
cjappl Jul 22, 2024
d48d480
[clang-tidy][NFC] Fix tiny bug in areStatementsIdentical
PiotrZSL Jul 22, 2024
25897ba
[PGO] Sync InstrProfData.inc from llvm to compiler-rt (#99930)
xur-llvm Jul 22, 2024
8ee4b53
Add read and write interceptors
cjappl Jun 4, 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
  •  
  •  
  •  
17 changes: 13 additions & 4 deletions .github/workflows/issue-write.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,21 @@ jobs:
github.event.workflow_run.conclusion == 'failure'
)
steps:
- name: Fetch Sources
uses: actions/checkout@v4
with:
sparse-checkout: |
.github/workflows/unprivileged-download-artifact/action.yml
sparse-checkout-cone-mode: false
- name: 'Download artifact'
uses: actions/download-artifact@6b208ae046db98c579e8a3aa621ab581ff575935 # v4.1.1
uses: ./.github/workflows/unprivileged-download-artifact
id: download-artifact
with:
github-token: ${{ secrets.ISSUE_WRITE_DOWNLOAD_ARTIFACT }}
run-id: ${{ github.event.workflow_run.id }}
name: workflow-args
artifact-name: workflow-args

- name: 'Comment on PR'
if: steps.download-artifact.outputs.artifact-id != ''
uses: actions/github-script@v3
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
Expand Down Expand Up @@ -144,5 +151,7 @@ jobs:
});

- name: Dump comments file
if: always()
if: >-
always() &&
steps.download-artifact.outputs.artifact-id != ''
run: cat comments
81 changes: 81 additions & 0 deletions .github/workflows/unprivileged-download-artifact/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
name: Unprivileged Download Artifact
description: >-
Download artifacts from another workflow run without using an access token.
inputs:
run-id:
description: >-
The run-id for the workflow run that you want to download the artifact
from. If ommitted it will download the most recently created artifact
from the repo with the artifact-name.
required: false
artifact-name:
desciption: The name of the artifact to download.
required: true


outputs:
filename:
description: >-
The filename of the downloaded artifact or the empty string if the
artifact was not found.
value: ${{ steps.download-artifact.outputs.filename }}
artifact-id:
description: "The id of the artifact being downloaded."
value: ${{ steps.artifact-url.outputs.id }}


runs:
using: "composite"
steps:
- uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea #v7.0.1
id: artifact-url
with:
script: |
var response;
if (!"${{ inputs.run-id }}") {
response = await github.rest.actions.listArtifactsForRepo({
owner: context.repo.owner,
repo: context.repo.repo,
name: "${{ inputs.artifact-name }}"
})
} else {
response = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: "${{ inputs.run-id }}",
name: "${{ inputs.artifact-name }}"
})
}

console.log(response)

for (artifact of response.data.artifacts) {
console.log(artifact);
}

if (response.data.artifacts.length == 0) {
console.log("Could not find artifact ${{ inputs.artifact-name }} for workflow run ${{ inputs.run-id }}")
return;
}

const url_response = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: response.data.artifacts[0].id,
archive_format: "zip"
})

core.setOutput("url", url_response.url);
core.setOutput("id", response.data.artifacts[0].id);

- shell: bash
if: steps.artifact-url.outputs.url != ''
id: download-artifact
run: |
curl -L -o ${{ inputs.artifact-name }}.zip "${{ steps.artifact-url.outputs.url }}"
echo "filename=${{ inputs.artifact-name }}.zip" >> $GITHUB_OUTPUT

- shell: bash
if: steps.download-artifact.outputs.filename != ''
run: |
unzip ${{ steps.download-artifact.outputs.filename }}
9 changes: 4 additions & 5 deletions bolt/docs/CommandLineArgumentReference.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,6 @@

Prints out offsets for abbrev and debug_info of Skeleton CUs that get patched.

- `--deterministic-debuginfo`

Disables parallel execution of tasks that may produce nondeterministic debug
info

- `--dot-tooltip-code`

Add basic block instructions as tool tips on nodes
Expand Down Expand Up @@ -686,6 +681,10 @@
threshold means fewer functions to process. E.g threshold of 90 means only top
10 percent of functions with profile will be processed.

- `--match-with-call-graph`

Match functions with call graph

- `--memcpy1-spec=<func1,func2:cs1:cs2,func3:cs1,...>`

List of functions with call sites for which to specialize memcpy() for size 1
Expand Down
1 change: 1 addition & 0 deletions bolt/docs/OptimizingClang.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ $ cd ${TOPLEV}/stage3
$ CPATH=${TOPLEV}/stage2-prof-use-lto/install/bin/
$ cmake -G Ninja ${TOPLEV}/llvm -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER=$CPATH/clang -DCMAKE_CXX_COMPILER=$CPATH/clang++ \
-DLLVM_ENABLE_PROJECTS="clang" \
-DLLVM_USE_LINKER=lld -DCMAKE_INSTALL_PREFIX=${TOPLEV}/stage3/install
$ perf record -e cycles:u -j any,u -- ninja clang
```
Expand Down
4 changes: 2 additions & 2 deletions bolt/docs/generate_doc.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ def parse_bolt_options(output):
cleaned_line = line.strip()

if cleaned_line.casefold() in map(str.casefold, section_headers):
if prev_section != None: # Save last option from prev section
if prev_section is not None: # Save last option from prev section
add_info(sections, current_section, option, description)
option, description = None, []

Expand Down Expand Up @@ -76,7 +76,7 @@ def parse_bolt_options(output):
description = [descr]
if option.startswith("--print") or option.startswith("--time"):
current_section = "BOLT printing options:"
elif prev_section != None:
elif prev_section is not None:
current_section = prev_section
continue

Expand Down
21 changes: 17 additions & 4 deletions bolt/include/bolt/Core/BinaryContext.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCObjectFileInfo.h"
#include "llvm/MC/MCObjectWriter.h"
#include "llvm/MC/MCPseudoProbe.h"
#include "llvm/MC/MCSectionELF.h"
#include "llvm/MC/MCSectionMachO.h"
#include "llvm/MC/MCStreamer.h"
Expand Down Expand Up @@ -246,6 +247,9 @@ class BinaryContext {
/// DWP Context.
std::shared_ptr<DWARFContext> DWPContext;

/// Decoded pseudo probes.
std::shared_ptr<MCPseudoProbeDecoder> PseudoProbeDecoder;

/// A map of DWO Ids to CUs.
using DWOIdToCUMapType = std::unordered_map<uint64_t, DWARFUnit *>;
DWOIdToCUMapType DWOCUs;
Expand Down Expand Up @@ -377,6 +381,15 @@ class BinaryContext {
RtLibrary = std::move(Lib);
}

const MCPseudoProbeDecoder *getPseudoProbeDecoder() const {
return PseudoProbeDecoder.get();
}

void setPseudoProbeDecoder(std::shared_ptr<MCPseudoProbeDecoder> Decoder) {
assert(!PseudoProbeDecoder && "Cannot set pseudo probe decoder twice.");
PseudoProbeDecoder = Decoder;
}

/// Return BinaryFunction containing a given \p Address or nullptr if
/// no registered function contains the \p Address.
///
Expand Down Expand Up @@ -431,6 +444,9 @@ class BinaryContext {
return nullptr;
}

/// Deregister JumpTable registered at a given \p Address and delete it.
void deleteJumpTable(uint64_t Address);

unsigned getDWARFEncodingSize(unsigned Encoding) {
if (Encoding == dwarf::DW_EH_PE_omit)
return 0;
Expand Down Expand Up @@ -1436,10 +1452,7 @@ class BinaryContext {
std::unique_ptr<MCObjectWriter> OW = MAB->createObjectWriter(OS);
std::unique_ptr<MCStreamer> Streamer(TheTarget->createMCObjectStreamer(
*TheTriple, *Ctx, std::unique_ptr<MCAsmBackend>(MAB), std::move(OW),
std::unique_ptr<MCCodeEmitter>(MCE), *STI,
/* RelaxAll */ false,
/* IncrementalLinkerCompatible */ false,
/* DWARFMustBeAtTheEnd */ false));
std::unique_ptr<MCCodeEmitter>(MCE), *STI));
return Streamer;
}

Expand Down
8 changes: 8 additions & 0 deletions bolt/include/bolt/Core/BinaryFunction.h
Original file line number Diff line number Diff line change
Expand Up @@ -416,6 +416,9 @@ class BinaryFunction {
/// different parameters by every pass.
mutable uint64_t Hash{0};

/// Function GUID assigned externally.
uint64_t GUID{0};

/// For PLT functions it contains a symbol associated with a function
/// reference. It is nullptr for non-PLT functions.
const MCSymbol *PLTSymbol{nullptr};
Expand Down Expand Up @@ -2256,6 +2259,11 @@ class BinaryFunction {
/// Returns the last computed hash value of the function.
size_t getHash() const { return Hash; }

/// Returns the function GUID.
uint64_t getGUID() const { return GUID; }

void setGUID(uint64_t Id) { GUID = Id; }

using OperandHashFuncTy =
function_ref<typename std::string(const MCOperand &)>;

Expand Down
13 changes: 7 additions & 6 deletions bolt/include/bolt/Core/MCPlusBuilder.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ enum class IndirectBranchType : char {
POSSIBLE_PIC_JUMP_TABLE, /// Possibly a jump table for PIC.
POSSIBLE_GOTO, /// Possibly a gcc's computed goto.
POSSIBLE_FIXED_BRANCH, /// Possibly an indirect branch to a fixed location.
POSSIBLE_PIC_FIXED_BRANCH, /// Possibly an indirect jump to a fixed entry in a
/// PIC jump table.
};

class MCPlusBuilder {
Expand Down Expand Up @@ -1474,12 +1476,11 @@ class MCPlusBuilder {
/// will be set to the different components of the branch. \p MemLocInstr
/// is the instruction that loads up the indirect function pointer. It may
/// or may not be same as \p Instruction.
virtual IndirectBranchType
analyzeIndirectBranch(MCInst &Instruction, InstructionIterator Begin,
InstructionIterator End, const unsigned PtrSize,
MCInst *&MemLocInstr, unsigned &BaseRegNum,
unsigned &IndexRegNum, int64_t &DispValue,
const MCExpr *&DispExpr, MCInst *&PCRelBaseOut) const {
virtual IndirectBranchType analyzeIndirectBranch(
MCInst &Instruction, InstructionIterator Begin, InstructionIterator End,
const unsigned PtrSize, MCInst *&MemLocInstr, unsigned &BaseRegNum,
unsigned &IndexRegNum, int64_t &DispValue, const MCExpr *&DispExpr,
MCInst *&PCRelBaseOut, MCInst *&FixedEntryLoadInst) const {
llvm_unreachable("not implemented");
return IndirectBranchType::UNKNOWN;
}
Expand Down
33 changes: 33 additions & 0 deletions bolt/include/bolt/Profile/ProfileYAMLMapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,11 +93,36 @@ template <> struct MappingTraits<bolt::SuccessorInfo> {
static const bool flow = true;
};

namespace bolt {
struct PseudoProbeInfo {
llvm::yaml::Hex64 GUID;
uint64_t Index;
uint8_t Type;

bool operator==(const PseudoProbeInfo &Other) const {
return GUID == Other.GUID && Index == Other.Index;
}
bool operator!=(const PseudoProbeInfo &Other) const {
return !(*this == Other);
}
};
} // 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);
}

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

LLVM_YAML_IS_FLOW_SEQUENCE_VECTOR(llvm::yaml::bolt::CallSiteInfo)
LLVM_YAML_IS_FLOW_SEQUENCE_VECTOR(llvm::yaml::bolt::SuccessorInfo)
LLVM_YAML_IS_FLOW_SEQUENCE_VECTOR(llvm::yaml::bolt::PseudoProbeInfo)

namespace llvm {
namespace yaml {
Expand All @@ -111,6 +136,7 @@ struct BinaryBasicBlockProfile {
uint64_t EventCount{0};
std::vector<CallSiteInfo> CallSites;
std::vector<SuccessorInfo> Successors;
std::vector<PseudoProbeInfo> PseudoProbes;

bool operator==(const BinaryBasicBlockProfile &Other) const {
return Index == Other.Index;
Expand All @@ -132,6 +158,8 @@ template <> struct MappingTraits<bolt::BinaryBasicBlockProfile> {
std::vector<bolt::CallSiteInfo>());
YamlIO.mapOptional("succ", BBP.Successors,
std::vector<bolt::SuccessorInfo>());
YamlIO.mapOptional("pseudo_probes", BBP.PseudoProbes,
std::vector<bolt::PseudoProbeInfo>());
}
};

Expand All @@ -151,6 +179,8 @@ 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};
bool Used{false};
};
} // end namespace bolt
Expand All @@ -164,6 +194,9 @@ 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);
}
};

Expand Down
Loading