CtrlK
BlogDocsLog inGet started
Tessl Logo

add-vectorization-hint

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.

62

Quality

72%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./tiles/tessl-llvm/skills/add-vectorization-hint/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

77%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a high-quality, highly actionable skill that provides concrete, executable LLVM C++ API code for every vectorization hint pattern. Its main strength is the completeness and specificity of the code examples, the verification step, and the common mistakes section. Minor weaknesses include some unnecessary introductory explanation and the length of the document which could benefit from splitting advanced topics into separate files.

Suggestions

Trim or remove Step 0's explanation of what the Loop Vectorizer and SLP Vectorizer do — Claude already knows this; a single sentence linking to the steps is sufficient.

Consider splitting Steps 4-6 (parallel accesses, unrolling, SLP) into a separate ADVANCED.md file, keeping the main skill focused on the core loop vectorization workflow (Steps 1-3 + Step 7).

DimensionReasoningScore

Conciseness

The skill is mostly efficient and avoids explaining basic concepts Claude would know, but Step 0's explanation of what the two vectorizers do is somewhat unnecessary context. The 'How LLVM vectorizes' section could be trimmed. Some comments in code are helpful but a few are redundant.

2 / 3

Actionability

Every step provides fully executable C++ code using the LLVM IRBuilder API, with concrete metadata construction patterns that are copy-paste ready. The bash command for verification is also directly executable with expected output shown.

3 / 3

Workflow Clarity

The steps are clearly sequenced from loop structure (Step 1) through metadata attachment (Steps 2-6) to verification (Step 7). Step 7 provides an explicit validation checkpoint with example output showing both success and failure cases. The 'Common mistakes' section serves as an error-prevention checklist.

3 / 3

Progressive Disclosure

The content is well-structured with clear sections and a reference table, but it's a fairly long monolithic document (~200 lines of substantive content). Steps 4-6 could potentially be split into a separate advanced reference file, and the common metadata reference table could be a standalone quick-reference.

2 / 3

Total

10

/

12

Passed

Description

67%Scale 1-3

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description excels at specificity and distinctiveness, clearly enumerating concrete capabilities within a well-defined niche (LLVM 22 vectorization). Its main weaknesses are the lack of an explicit 'Use when...' clause and limited coverage of natural trigger terms that users might employ when seeking help with vectorization.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user asks about LLVM vectorization, SIMD optimization, loop pragmas, or compiler vectorization hints.'

Include more natural trigger terms and synonyms users might say, such as 'SIMD', 'vectorize loops', '#pragma', 'compiler optimization', '__attribute__', or 'vector width'.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions: guiding auto-vectorizer and SLP vectorizer, loop vectorization metadata, interleaving, loop distribution, marking parallel accesses, controlling SLP, and checking whether vectorization happened.

3 / 3

Completeness

Clearly answers 'what does this do' with specific capabilities, but lacks an explicit 'Use when...' clause or equivalent trigger guidance. The 'when' is only implied by the domain context.

2 / 3

Trigger Term Quality

Includes relevant technical keywords like 'LLVM', 'auto-vectorizer', 'SLP vectorizer', 'loop vectorization', 'interleaving', 'loop distribution', but these are fairly specialized jargon. Missing more natural user phrases like 'SIMD', 'vectorize my loop', 'pragma', or 'compiler hints'. Users might say 'vectorization' but many variations are absent.

2 / 3

Distinctiveness Conflict Risk

Highly specific niche targeting LLVM 22's vectorizer from a frontend perspective. Very unlikely to conflict with other skills given the precise domain (LLVM version-specific vectorization guidance).

3 / 3

Total

10

/

12

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
hbarve1/tessl-llvm
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.