• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

drom / irtl / 28989074554
91%

Build:
DEFAULT BRANCH: trunk
Ran 09 Jul 2026 02:08AM UTC
Jobs 3
Files 15
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Jul 2026 02:08AM UTC coverage: 90.316% (-0.5%) from 90.862%
28989074554

push

github

drom
feat(emit): complete FIRRTL primop coverage + add Verilog-native ops

outdated validif removed.

Both emitters silently mishandled most ops: Verilog fell through to
`[object Object]`, FIRRTL to a self-assign `x <= x`. Only bitwise,
reduction, buf, literal, repeat, and bits actually emitted.

- Verilog emitter: emit arithmetic (+ - * / %), comparison
  (< <= > >= == !=), shifts, mux (? :), casts ($signed/$unsigned),
  pad/head/tail (width-aware slice/zero-extend). Unknown op now throws
  instead of emitting garbage.
- FIRRTL emitter: extend fold-binary/unary sets to the full primop list;
  add mux and param ops (shl shr head tail pad). Unknown op now throws.
- Add missing FIRRTL casts to IRTL: asClock, asAsyncReset, asReset.

Also add Verilog-native ops beyond the FIRRTL primop set:
- signed-aware right shift: shr/dshr emit `$signed(x) >>> n` when the
  operand is signed, else logical `>>` (fixes an arithmetic-shift bug).
- reductions nandr/norr/xnorr, bitwise xnor, logical land/lor/lnot.
  These have no FIRRTL primop, so the FIRRTL emitter lowers them to
  equivalent primop trees (e.g. xnor -> not(xor(...))).

README: document the op set, Verilog operator mapping, signed-shift and
lowering semantics; fix a stale quick-start output (4'd0 -> 4'd15).

426 of 544 branches covered (78.31%)

Branch coverage included in aggregate %.

89 of 139 new or added lines in 3 files covered. (64.03%)

3 existing lines in 2 files now uncovered.

1691 of 1800 relevant lines covered (93.94%)

36.38 hits per line

Uncovered Changes

Lines Coverage ∆ File
38
76.1
-15.14% lib/emit-verilog.js
12
80.91
-9.01% lib/emit-firrtl.js

Coverage Regressions

Lines Coverage ∆ File
2
80.91
-9.01% lib/emit-firrtl.js
1
76.1
-15.14% lib/emit-verilog.js
Jobs
ID Job ID Ran Files Coverage
1 28989074554.1 09 Jul 2026 02:08AM UTC 15
91.78
GitHub Action Run
2 28989074554.2 09 Jul 2026 02:08AM UTC 11
86.81
GitHub Action Run
3 28989074554.3 09 Jul 2026 02:08AM UTC 11
86.81
GitHub Action Run
Source Files on build 28989074554
  • Tree
  • List 15
  • Changed 5
  • Source Changed 3
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28989074554
  • efc91b18 on github
  • Prev Build on trunk (#28987110072)
  • Next Build on trunk (#28989100430)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc