From 6c8695d2c7451796ba9a3d820fd2973da7d5ae1d Mon Sep 17 00:00:00 2001 From: zleyyij <75810274+zleyyij@users.noreply.github.com> Date: Wed, 3 Jul 2024 11:03:25 -0600 Subject: [PATCH] vault backup: 2024-07-03 11:03:24 --- notes/Copy-and-Patch Compilation.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/notes/Copy-and-Patch Compilation.md b/notes/Copy-and-Patch Compilation.md index 4894055..16b113c 100644 --- a/notes/Copy-and-Patch Compilation.md +++ b/notes/Copy-and-Patch Compilation.md @@ -24,14 +24,17 @@ That stencil library is used as input for a copy and patch code generator, along Even though machine code is patched, a copy and patch compiler doesn't need to have knowledge of platform specific machine instructions, and is portable across architectures supported by the patch library. - - ## MetaVar +### Overview MetaVar generates binary stencils, which allows the user to systematically generate the binary stencil variants in clean and pure C++, and leverages the Clang + LLVM compiler infrastructure to hide all platform-specific low-level detail. MetaVar can generate binary stencils of different optimization levels for every bytecode or AST node, which the generator can select from at generation time. As am example, if the instruction is for adding a constant to a literal, the generator can select from addition implementations for the most optimized variant. It can also make register allocation decisions by keeping track of register availability and picking between stack instructions and register instructions. +### Interface +MetaVar constructs the stencil library + + # Terminology | Phrase | Definition | | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |