From df790a1e9e24e70dd25208f234e39e0432fe3049 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Thu, 8 May 2025 23:55:58 +0000 Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?= =?UTF-8?q?l=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Created using spr 1.3.4 --- llvm/docs/MLGO.rst | 28 ++++++++++++++++++++++++++++ llvm/docs/Reference.rst | 1 + 2 files changed, 29 insertions(+) create mode 100644 llvm/docs/MLGO.rst diff --git a/llvm/docs/MLGO.rst b/llvm/docs/MLGO.rst new file mode 100644 index 0000000000000..28518b83d8c3e --- /dev/null +++ b/llvm/docs/MLGO.rst @@ -0,0 +1,28 @@ +==== +MLGO +==== + +Introduction +============ + +MLGO is a framework for integrating ML techniques systematically in LLVM. It is +designed primarily to replace heuristics within LLVM with machine learned +models. Currently there is upstream infrastructure for the following +heuristics: + +* Inlining for size +* Register allocation (LLVM greedy eviction heuristic) for performance + +This document is an outline of the tooling that composes MLGO. + +Corpus Tooling +============== + +.. + TODO(boomanaiden154): Write this section. + +Model Runner Interfaces +======================= + +.. + TODO(mtrofin): Write this section. diff --git a/llvm/docs/Reference.rst b/llvm/docs/Reference.rst index e1f46b00f2b30..565d5c6876d66 100644 --- a/llvm/docs/Reference.rst +++ b/llvm/docs/Reference.rst @@ -41,6 +41,7 @@ LLVM and API reference documentation. PDB/index PointerAuth ScudoHardenedAllocator + MLGO MemoryModelRelaxationAnnotations MemTagSanitizer Security