Skip to content

feat(hir): support interface modports#292

Merged
hongjr03 merged 4 commits into
masterfrom
feat/interface-modport-support
Jun 27, 2026
Merged

feat(hir): support interface modports#292
hongjr03 merged 4 commits into
masterfrom
feat/interface-modport-support

Conversation

@hongjr03

@hongjr03 hongjr03 commented Jun 27, 2026

Copy link
Copy Markdown
Member

Summary

This change adds first-class HIR support for SystemVerilog interface modports and virtual interface typing.

  • lowers modport declarations into module-owned HIR definitions with source ranges
  • exposes DefLoc::Modport and DefKind::Modport through scope, definition lookup, display, and document symbols
  • types interface definitions, interface instances, and modport selections as virtual interfaces
  • lets interface instance member paths such as u_if.host and u_if.clk resolve through the interface scope
  • adds IDE regression coverage for interface instance and modport navigation and hover
  • centralizes the instantiable module-like definition predicate for module, interface, and program definitions

Validation

  • cargo build
  • cargo fmt --all -- --check
  • cargo xtask check-config-artifacts
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test -p hir
  • cargo test -p ide
  • cargo test --workspace
  • git diff --check master..HEAD

@hongjr03 hongjr03 marked this pull request as ready for review June 27, 2026 06:33
@hongjr03 hongjr03 merged commit 2669b10 into master Jun 27, 2026
18 checks passed
@hongjr03 hongjr03 deleted the feat/interface-modport-support branch June 27, 2026 06:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant