Project

General

Profile

[logo] 
 
Home
News
Activity
About/Contact
Major Tools
  Dinotrace
  Verilator
  Verilog-mode
  Verilog-Perl
Other Tools
  BugVise
  CovVise
  Force-Gate-Sim
  Gspice
  IPC::Locker
  Rsvn
  SVN::S4
  Voneline
  WFH
General Info
  Papers

Issue #760

Verilator Internal Error for shift by undef value

Added by Clifford Wolf about 5 years ago. Updated about 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
TranslationError
% Done:

0%


Description

Verilator 4a58e85 creates the following error: "%Error: Internal Error: ../V3Number.cpp:521: toUInt with 4-state 4'bxxxx"

module issue_039(a, y);
  input [3:0] a;
  output [3:0] y;
  assign y = a >>> 4'bx;
endmodule

History

#1 Updated by Wilson Snyder about 5 years ago

  • Category set to TranslationError
  • Status changed from New to Resolved
  • Assignee set to Wilson Snyder

Fixed in git towards 3.857.

I fixed this as it is easy, but in general verilator is only a two state simulator with very limited X/Z handling, so would prefer focus on non-X/Z.

#2 Updated by Clifford Wolf about 5 years ago

Wilson Snyder wrote:

I fixed this as it is easy, but in general verilator is only a two state simulator with very limited X/Z handling, so would prefer focus on non-X/Z.

I already have a hack in place that ignores the verilator output bits that are set to X by the Yosys evaluator. Besides that it is hard to 'focus' on any specific kind of bug. For example I extracted this issue from the following test case: http://pastebin.com/UNWAmA0w (bug in y6 because p15 is undef). When generating test cases like that it is hard to avoid certain corner cases while at the same time trying to cover all the other corner cases.. ;)

#3 Updated by Wilson Snyder about 5 years ago

  • Status changed from Resolved to Closed

In 3.860.

Also available in: Atom