[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: Compilation problem with icarus 0.8.1?
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Mark Schellhorn wrote:
| Hi Stephen,
|
| Thanks for your response!
|
| I tried using a sized reg for m as well but I still get the error:
Hmm, looks like d and e are also used in that manner.
However, I see that someone pointed out that the constant propagation
may have taken away a known with. That's an Icarus Verilog bug.
| module junk;
|
| integer d, e;
|
| reg [31:0] m;
|
| reg [63:0] a;
| reg [(512*8)-1:0] b;
| reg [2:0] c;
|
| initial begin
| b = 0;
| c = 0;
| d = 0;
| m = 0;
| e = 9'd256 + 9'd32;
|
| // This one works
| a = b >> {(e - d[4:0] - (9'd8 - c) + {(m - 1'b1),3'o0}),3'o0};
|
| // This one doesn't
| a = b >> {(9'd256 + 9'd32 - d[4:0] - (9'd8 - c) + {(m -
| 1'b1),3'o0}),3'o0};
|
| $display("%m : 0x%h",a);
| end
|
| endmodule
|
| produces:
|
| [mark@camelot-007 DT_mark_cosim]$ iverilog junk.v
| junk.v:22: error: operand of concatenation has indefinite width:
| ((('d288)-(+d[4:0]))-((9'b000001000)-(c[2:0])))+({(m[31:0])-(1'b1),
| 3'b000})
| 1 error(s) during elaboration.
|
- --
Steve Williams "The woods are lovely, dark and deep.
steve at icarus.com But I have promises to keep,
http://www.icarus.com and lines to code before I sleep,
http://www.picturel.com And lines to code before I sleep."
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFCNwXwrPt1Sc2b3ikRAo/3AJ44VIEvyBN6679nuwdyyxroshu3MgCg01Zu
sY7HUiInho8WIOrOikOppAI=
=ObCd
-----END PGP SIGNATURE-----