CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-llvm

github.com/hbarve1/tessl-llvm

SkillAddedReview
add-alias-analysis

tiles/tessl-llvm/skills/add-alias-analysis/SKILL.md

Use and extend alias analysis in LLVM 22. Covers querying AAResults from a function pass, using IR-level hints (noalias, TBAA) as the preferred approach, writing a custom AA analysis with the New Pass Manager, and common ModRef patterns.

68

add-attributes-metadata

tiles/tessl-llvm/skills/add-attributes-metadata/SKILL.md

Add function/parameter attributes and IR metadata to LLVM 22 IR to unlock optimizer opportunities. Covers NoUnwind, ReadNone, NoCapture, Noundef, loop vectorization hints, branch weights, TBAA, !range, and !nonnull.

66

add-calling-convention

tiles/tessl-llvm/skills/add-calling-convention/SKILL.md

Add or wire a calling convention in an LLVM 22 in-tree target or document IR-level ABI choices for out-of-tree frontends. Covers CallingConv IDs, TableGen CallingConv.td, CCState/CCValAssign hooks, ISel lowering, and tests.

63

add-calling-convention

.tessl/tiles/hbarve1/tessl-llvm/skills/add-calling-convention/SKILL.md

Add or wire a calling convention in an LLVM 22 in-tree target or document IR-level ABI choices for out-of-tree frontends. Covers CallingConv IDs, TableGen CallingConv.td, CCState/CCValAssign hooks, ISel lowering, and tests.

60

add-debug-info

tiles/tessl-llvm/skills/add-debug-info/SKILL.md

Add DWARF debug info to an existing LLVM 22 IR frontend. Covers DIBuilder setup, compile unit, function subprograms, local variable declarations, source locations on instructions, and module flags.

68

add-debug-info

.tessl/tiles/hbarve1/tessl-llvm/skills/add-debug-info/SKILL.md

Add DWARF debug info to an existing LLVM 22 IR frontend. Covers DIBuilder setup, compile unit, function subprograms, local variable declarations, source locations on instructions, and module flags.

66

add-exception-handling

tiles/tessl-llvm/skills/add-exception-handling/SKILL.md

Add exception handling (try/catch/finally) to an LLVM 22 IR frontend using invoke, landingpad, and the Itanium C++ ABI. Covers personality function, invoke vs call, catch dispatch, __cxa_begin/end_catch, resume, cleanup blocks, and Windows SEH notes.

66

add-gc-statepoints

tiles/tessl-llvm/skills/add-gc-statepoints/SKILL.md

Add garbage-collection support to an LLVM 22 IR frontend. Covers the shadow-stack (gcroot) model for simple GCs and the statepoint/gc.relocate model for moving/relocating collectors, including the RewriteStatepointsForGC pass and StackMap section.

60

add-intrinsic

tiles/tessl-llvm/skills/add-intrinsic/SKILL.md

Add a new LLVM IR intrinsic in LLVM 22. Covers TableGen definition, header regeneration, IRBuilder call-site usage, verifier rules, and lit testing.

64

add-intrinsic

.tessl/tiles/hbarve1/tessl-llvm/skills/add-intrinsic/SKILL.md

Add a new LLVM IR intrinsic in LLVM 22. Covers TableGen definition, header regeneration, IRBuilder call-site usage, verifier rules, and lit testing.

66

add-lto

tiles/tessl-llvm/skills/add-lto/SKILL.md

Enable Link-Time Optimization (LTO and ThinLTO) for an LLVM 22-based compiler. Covers full LTO vs ThinLTO trade-offs, bitcode emission from a frontend, LLD integration, out-of-tree whole-program optimization via ModulePassManager, and common debugging tips.

63

add-npm-pass

tiles/tessl-llvm/skills/tessl-llvm/SKILL.md

Add a New Pass Manager (NPM) pass to an LLVM 22 in-tree or out-of-tree project. Covers FunctionPass, ModulePass, LoopPass, and CGSCCPass kinds, registration, pipeline wiring, CMake, and lit testing.

65

add-npm-pass

.tessl/tiles/hbarve1/tessl-llvm/skills/tessl-llvm/SKILL.md

Add a New Pass Manager (NPM) pass to an LLVM 22 in-tree or out-of-tree project. Covers FunctionPass, ModulePass, LoopPass, and CGSCCPass kinds, registration, pipeline wiring, CMake, and lit testing.

68

add-sanitizer

tiles/tessl-llvm/skills/add-sanitizer/SKILL.md

Instrument LLVM 22 IR for AddressSanitizer (ASan), UndefinedBehaviorSanitizer (UBSan), or ThreadSanitizer (TSan). Covers enabling sanitizers via TargetMachine/PassBuilder, adding manual shadow-memory checks, inserting UBSan runtime calls, and CMake setup.

64

add-vectorization-hint

tiles/tessl-llvm/skills/add-vectorization-hint/SKILL.md

Guide LLVM 22's auto-vectorizer and SLP vectorizer from a frontend. Covers loop vectorization metadata, interleaving, loop distribution, marking parallel accesses, controlling SLP, and how to check whether vectorization happened.

66

frontend-to-ir

tiles/tessl-llvm/skills/frontend-to-ir/SKILL.md

Lower a toy language AST to LLVM 22 IR using IRBuilder. Covers project setup, AST node types, expression lowering, control flow, functions, structs, and applying mem2reg.

70

frontend-to-ir

.tessl/tiles/hbarve1/tessl-llvm/skills/frontend-to-ir/SKILL.md

Lower a toy language AST to LLVM 22 IR using IRBuilder. Covers project setup, AST node types, expression lowering, control flow, functions, structs, and applying mem2reg.

63

jit-setup

tiles/tessl-llvm/skills/jit-setup/SKILL.md

Set up an ORC JIT v2 execution engine for a language runtime using LLVM 22. Covers LLJIT, LLLazyJIT, ThreadSafeModule, symbol exposure, optimization pipeline, and calling JIT'd functions.

61

jit-setup

.tessl/tiles/hbarve1/tessl-llvm/skills/jit-setup/SKILL.md

Set up an ORC JIT v2 execution engine for a language runtime using LLVM 22. Covers LLJIT, LLLazyJIT, ThreadSafeModule, symbol exposure, optimization pipeline, and calling JIT'd functions.

66

lit-filecheck

tiles/tessl-llvm/skills/lit-filecheck/SKILL.md

Write lit tests with FileCheck for LLVM 22 IR transforms, pass output, and codegen. Covers RUN lines, CHECK patterns, common directives, negative checks, and running tests with llvm-lit.

67