Stephen Williams
e97bdf8b21
Support for wide modulus operations.
...
Compile time support for wide modulus.
Signed-off-by: Stephen Williams <steve@icarus.com>
2007-10-09 21:40:08 -07:00
Stephen Williams
4af28c7526
Signed divide of 32bit values
...
Signed divide of 32bit values can overflow if done in a 32bit long
due to the truncation of sign bits. So use the large value algorithm
if the values are >= 31 bits (63 bits on 64bit machines).
Signed-off-by: Stephen Williams <steve@icarus.com>
2007-09-01 14:38:57 -07:00
Stephen Williams
845e74c30e
Evaluate parameter expressions losslessly
...
Make sure parameter expressions are evaluated losslessly, as if
the l-value is unsigned and thus virtually infinite.
2007-06-27 22:05:36 -07:00
steve
d2ba78559a
Process Verilog escape sequences much earlier.
2007-02-25 23:08:24 +00:00
steve
2de8bafb5c
Fix padding of x when literal is sized and unsigned.
2007-01-27 05:36:11 +00:00
steve
98417cb03a
Fix calculation of verinum pow operation.
2007-01-19 05:42:04 +00:00
steve
4fb5556d1c
Handle very wide signed divide.
2006-12-08 19:56:09 +00:00
steve
fc0695beb6
Handle 64bit delay constants.
2006-08-08 05:11:37 +00:00
steve
49b65e86fe
Add support for power in constant expressions.
2006-07-31 03:50:17 +00:00
steve
71faebd6df
Make elaborate_expr methods aware of the width that the context
...
requires of it. In the process, fix sizing of the width of unary
minus is context determined sizes.
2006-06-02 04:48:49 +00:00
steve
53ae1f29c9
Fix broken subtraction of small constants.
2006-06-01 03:54:51 +00:00
steve
101b373293
Allow constant concat expressions.
2005-12-07 04:04:23 +00:00
steve
d60112d58b
Handle null string as a single nul character.
2004-05-18 18:43:15 +00:00
steve
38ec4b7851
Support unsigned divide of huge numbers.
2004-02-17 06:52:55 +00:00
steve
1c99c629b1
Support constant evaluation of binary ^ operator.
2003-10-26 04:54:56 +00:00
steve
5ee1b465e9
Get length of trimed unsigned value right.
2003-05-25 03:01:19 +00:00
steve
bab0924d86
Make some effort to preserve bits while
...
operating on constant values.
2003-04-14 03:40:21 +00:00
steve
47060bfedd
Prevent overrun comparing verinums to zero.
2003-04-03 04:30:00 +00:00
steve
ff2ec85b61
Fix conversion of signed numbes to long
2003-02-02 00:43:16 +00:00
steve
e941e7e805
Spelling fixes.
2003-01-30 16:23:07 +00:00
steve
4de141ab1d
Support parameters with defined ranges.
2002-08-19 02:39:16 +00:00
steve
52bf4e613f
conditional ident string using autoconfig.
2002-08-12 01:34:58 +00:00
steve
844fe3b9bc
Trim leading nulls from string forms.
2002-04-27 23:26:24 +00:00
steve
d94a40ecd9
Display string verinums as strings.
2002-04-27 04:48:43 +00:00
steve
9756cb6382
Propagate sign in unary minus.
2002-02-01 05:09:14 +00:00
steve
e20acfc9f9
Include s indicator in dump of signed numbers.
2001-12-31 00:02:33 +00:00
steve
9d1a81ce2c
Handle division and modulus by zero while
...
evaluating run-time constants.
2001-11-19 02:54:12 +00:00
steve
9572ddd7e8
Support more real arithmetic in delay constants.
2001-11-06 06:11:55 +00:00
steve
b825f8d2b2
Create a config.h.in file to hold all the config
...
junk, and support gcc 3.0. (Stephan Boettcher)
2001-07-25 03:10:48 +00:00
steve
7ef3b44ab1
support evaluation of constant < in expressions.
2001-02-09 05:44:23 +00:00
steve
4b0e5bd173
trim the length of unsized numbers.
2001-02-08 05:38:18 +00:00
steve
2fbc0af1ea
Fix expression widths for rvalues and parameters (PR#131,132)
2001-02-07 21:47:13 +00:00
steve
94a1d59817
Support constant evaluation of / and % (PR#124)
2001-02-07 02:46:31 +00:00
steve
b6a18098c7
Evaluate constant &, | and unary ~.
2001-01-02 03:23:40 +00:00
steve
084a464cf1
Support decimal constants in behavioral delays.
2000-12-10 22:01:35 +00:00
steve
700bcfda70
handel, by truncation, verinums that are to long for long integers.
2000-09-28 03:55:55 +00:00
steve
fff759de20
multiply in parameter expressions.
2000-09-27 18:28:37 +00:00
steve
ddcba9d91f
The + operator now preserves signedness.
2000-09-07 22:37:10 +00:00
steve
8b03550a1e
Fix subract of short value form long one.
2000-06-12 03:56:51 +00:00
steve
843af31958
Some compilers do not accept the not symbol.
2000-02-23 04:43:43 +00:00
steve
b734ecf02f
Macintosh compilers do not support ident.
2000-02-23 02:56:53 +00:00
steve
d6f53b2582
Initial support for signed constants.
2000-01-07 03:45:49 +00:00
steve
848110bc33
Only sign-extend unsized numbers.
2000-01-06 05:57:06 +00:00
steve
c688d95cb8
Put number constants into a static table.
1999-11-06 16:00:17 +00:00
steve
2c774bfe75
do the <= in bits, not numbers.
1999-10-22 23:57:53 +00:00
steve
19b8615363
Support evaluating + operator at compile time.
1999-10-10 23:29:37 +00:00
steve
104f892f99
Implement the set method.
1999-07-20 05:12:22 +00:00
steve
c677afd8e3
More precise handling of verinum bit lengths.
1999-05-13 04:02:09 +00:00
steve
a416b1b336
Add implementation of integer to verunum constructor.
1999-05-09 01:38:33 +00:00
steve
63a8b4abe2
Function to calculate wire initial value.
1998-12-20 02:05:41 +00:00