llvm / llvm/circt

[SV]/[HW] IR Support for Comments

Open
#1,677 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.2k
Forks
524
Avg merge
3d 2h
Merged PRs (30d)
46

Description

Add IR support for representing comments, including block comments. `sv::VerbatimOp` is extremely useful here, but it forces the pass that generates them to reason about things like line length, how to handle newlines, whether it should generate line feeds, carriage returns, or something else etc. It would be more ergonomic to have an `sv::CommentOp` or `sv::BlockCommentOp` which a pass can just dump a string into and have these show up correctly during emission.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading sv::VerbatimOp and the SystemVerilog emission path to understand how emitted text currently handles line length, newlines, line feeds, and carriage returns. Define how a comment or block comment should represent its string during emission, then verify that passes can provide the text without handling formatting themselves.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.