Stephen Williams
25a27f9dd9
Parse contribution statements as far as pform.
...
Contribution statements have an l-value and r-value. Parse those
expressions into pform so that elaboration has something to work with.
In this process, this patch also changes the PECallFunction class to
use the vector template instead of the svector template. The latter
doesn't add anything over the STL vector template, so this is a start
of working the svector out.
2008-07-27 17:22:19 -04:00
Cary R
34e90bb3a6
Allow genvars to also be constants.
...
This patch adds genvars to the list of constant values.
2008-05-06 07:35:23 -07:00
Stephen Williams
d26ae866f8
Move implicit net creation from elaboration to elaborate_sig
...
If implicit nets are declared during elaboration, then the success
of binding during elaboration will depend on the order of the code
in the source file.
2008-03-18 20:50:40 -07:00
Stephen Williams
7975e14b5c
LineInfo uses perm_string for path.
...
Rework the handling of file names to use a perm_string heap to hold
the file names, instead of the custom file name heap in the lexor.
Also rename the get_line to get_fileline to reflect its real duties.
This latter chage touched a lot of files.
2007-12-20 12:31:01 -05:00
steve
ddd36ecb6c
Rework the heirarchical identifier parse syntax and pform
...
to handle more general combinations of heirarch and bit selects.
2007-05-24 04:07:11 +00:00
steve
2302693201
Expression widths with unsized literals are pseudo-infinite width.
2006-10-30 05:44:49 +00:00
steve
a652719876
Add support for indexed select attached to parameters.
2005-10-04 04:09:25 +00:00
steve
4a8be3db9c
Implement bi-directional part selects.
2005-08-06 17:58:16 +00:00
steve
e4ae832153
Clean up spurious trailing white space.
2004-10-04 01:10:51 +00:00
steve
1295058e5d
parameter keys are per_strings.
2004-02-20 06:22:56 +00:00
steve
8f0c02c0fa
Spelling fixes.
2003-01-27 05:09:17 +00:00
steve
cfd8cbf850
Port expressions for output ports are lnets, not nets.
2002-11-09 19:20:48 +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
03aebd7525
Support elaborate_net for PEString objects.
2001-12-30 21:32:03 +00:00
steve
ab6c8cb4b8
Parser and pform use hierarchical names as hname_t
...
objects instead of encoded strings.
2001-12-03 04:47:14 +00:00
steve
7793a49854
Remove string paths from PExpr elaboration.
2001-11-08 05:15:50 +00:00
steve
6bfbcbdcf7
elaborate_lnet uses scope instead of string path.
2001-11-07 04:26:46 +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
219df169a3
Generalize the evaluation of floating point delays, and
...
get it working with delay assignment statements.
Allow parameters to be referenced by hierarchical name.
2001-01-14 23:04:55 +00:00
steve
4e7a5d55d0
Handle error idents in constants not in any scope (PR#97)
2001-01-12 04:31:27 +00:00
steve
f4671a3082
Evaluate <= and ?: in parameter expressions (PR#81)
2000-12-16 19:03:30 +00:00
steve
084a464cf1
Support decimal constants in behavioral delays.
2000-12-10 22:01:35 +00:00
steve
056a3f7220
Allow unary operators in constant expressions.
2000-06-30 15:50:20 +00:00
steve
b90cda1f3f
Carry strength values from Verilog source to the
...
pform and netlist for gates.
Change vvm constants to use the driver_t to drive
a constant value. This works better if there are
multiple drivers on a signal.
2000-05-07 04:37:55 +00:00
steve
fbe475ef7d
Add infrastructure for system functions, move
...
$time to that structure and add $random.
2000-05-04 03:37:58 +00:00
steve
b1fd927acb
Named events really should be expressed with PEIdent
...
objects in the pform,
Handle named events within the mix of net events
and edges. As a unified lot they get caught together.
wait statements are broken into more complex statements
that include a conditional.
Do not generate NetPEvent or NetNEvent objects in
elaboration. NetEvent, NetEvWait and NetEvProbe
take over those functions in the netlist.
2000-04-12 04:23:57 +00:00
steve
2dd010dc04
Named events as far as the pform.
2000-04-01 19:31:57 +00:00
steve
71a506a28a
Binary and unary operators in parameter expressions.
2000-03-12 18:22:11 +00:00
steve
b734ecf02f
Macintosh compilers do not support ident.
2000-02-23 02:56:53 +00:00
steve
94afe54741
Standardize some of the error messages.
1999-12-31 17:38:37 +00:00
steve
71ecf8c143
Add to netlist links pin name and instance number,
...
and arrange in vvm for pin connections by name
and instance number.
1999-10-31 04:11:27 +00:00
steve
bb38653654
Parse system function calls.
1999-09-25 02:57:29 +00:00
steve
4594ac1c2c
elaborate concatenation repeats.
1999-09-16 04:18:15 +00:00
steve
31bdb87c8f
separate assign lval elaboration for error checking.
1999-09-15 04:17:52 +00:00
steve
9021f68996
is_constant method for PEConcat.
1999-07-22 02:05:20 +00:00
steve
a5921ceae8
netlist support for ternary operator.
1999-07-17 19:50:59 +00:00
steve
add2803267
More syntax parse with sorry stubs.
1999-06-16 03:13:29 +00:00
steve
7c2cf8b2fa
Add support for the Ternary operator,
...
Add support for repeat concatenation,
Correct some seg faults cause by elaboration
errors,
Parse the casex anc casez statements.
1999-06-10 04:03:52 +00:00
steve
10ffaeda90
Redo constant expression detection to happen
...
after parsing.
Parse more operators and expressions.
1999-05-16 05:08:42 +00:00
steve
d27f260bc1
Check net ranges in declarations.
1998-11-11 00:01:51 +00:00
steve
3fb7a053be
Introduce verilog to CVS.
1998-11-03 23:28:49 +00:00