steve
9adbdcb7c5
Add support for signed ports and nets.
2003-02-02 19:02:39 +00:00
steve
46253ed873
Rework expression parsing and elaboration to
...
accommodate real/realtime values and expressions.
2003-01-26 21:15:58 +00:00
steve
982474899b
Set proper line text for later bison.
2003-01-17 05:48:02 +00:00
steve
cca07fa42d
Account for bison 1.35 and stack manipulations.
2002-12-10 05:49:51 +00:00
steve
e62e1d89b6
Named event triggers can take hierarchical names.
2002-12-07 02:49:24 +00:00
steve
8604f922a5
specify delay can take an unbracketed simple value.
2002-11-26 03:56:10 +00:00
steve
b9188ad0ca
PATHPULSE specparam assignment syntax.
2002-11-21 17:40:11 +00:00
steve
e34e3a4875
spelling in a comment.
2002-11-09 02:22:07 +00:00
steve
86032c0aa5
Allow named events to be referenced by
...
hierarchical names.
2002-11-02 03:27:51 +00:00
steve
c0c67a101a
Fix spelling of the scalared keyword.
2002-10-13 05:01:44 +00:00
steve
8fbacc966e
compile error.
2002-09-16 00:28:51 +00:00
steve
dac99b9374
Add support for binary nand operator.
2002-09-12 15:49:43 +00:00
steve
7e1e44e87a
Properly cast signedness of parameters with ranges.
2002-09-01 03:01:48 +00:00
steve
4de141ab1d
Support parameters with defined ranges.
2002-08-19 02:39:16 +00:00
steve
5eca5d9948
Carry integerness throughout the compilation.
2002-06-21 04:59:35 +00:00
steve
0bbea355c2
More specify syntax.
2002-06-11 13:58:04 +00:00
steve
d6c946f390
Spelling patch (Larry Doolittle)
2002-06-11 03:34:33 +00:00
steve
bfad382fd1
Carry Verilog 2001 attributes with processes,
...
all the way through to the ivl_target API.
Divide signal reference counts between rval
and lval references.
2002-05-26 01:39:02 +00:00
steve
700887d657
Verilog 2001 attriubtes on nets/wires.
2002-05-24 04:36:23 +00:00
steve
e6c0629626
Add language support for Verilog-2001 attribute
...
syntax. Hook this support into existing $attribute
handling, and add number and void value types.
Add to the ivl_target API new functions for access
of complex attributes attached to gates.
2002-05-23 03:08:50 +00:00
steve
74c219f171
Add ranges and signed to port list declarations.
2002-05-20 02:06:01 +00:00
steve
bf10c5762a
Parse port_declaration_lists from the 2001 Standard.
2002-05-19 23:37:28 +00:00
steve
9dda15a186
implement nex_input for behavioral statements.
2002-04-21 17:43:12 +00:00
steve
b094bbdcf4
Add support for conbinational events by finding
...
the inputs to expressions and some statements.
Get case and assignment statements working.
2002-04-21 04:59:07 +00:00
steve
f7f61a8696
Detect mismatches in reg as module items and ports.
2002-04-12 02:57:08 +00:00
steve
65159a2733
Update for newer bison.
2002-03-31 04:06:49 +00:00
steve
853c1f4387
Detect incorrect function ports.
2002-01-23 03:35:17 +00:00
steve
361d4f2147
Drive strengths for continuous assignments.
2002-01-12 04:03:39 +00:00
steve
912749342c
Parse combinational event delay.
2001-12-31 05:23:13 +00:00
steve
03aebd7525
Support elaborate_net for PEString objects.
2001-12-30 21:32:03 +00:00
steve
4dd5f97a96
Parse and handle drive strengths of gates to vvp.
2001-12-14 02:05:13 +00:00
steve
c200c0c20e
Support integer for function return value.
2001-12-07 05:03:13 +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
33c7c47f73
Handle index identifiers in simple paths.
2001-12-01 02:42:39 +00:00
steve
65f835f3eb
Properly parse net_decl assignments with delays.
2001-11-29 17:37:51 +00:00
steve
4d0b840c26
Coerse input to inout when assigned to.
2001-11-10 02:08:49 +00:00
steve
0c4bea473c
Parse specparam parsepulse assignments.
2001-11-06 02:52:19 +00:00
steve
b624b6002e
Parse more [gosh darn] specify syntax.
2001-11-03 04:09:10 +00:00
steve
faa3a62259
detect module ports not declared within the module.
2001-10-31 03:11:15 +00:00
steve
8c9e0bafa9
more specify syntax (Stehpan Boettcher)
2001-10-26 03:22:56 +00:00
steve
467ecf5b33
Error messages for missing UDP port declarations.
2001-10-21 01:55:24 +00:00
steve
393a76d57a
threshold of $width is optional.
2001-10-14 02:03:51 +00:00
steve
3734b5e7f1
spec reference events can be identifiers.
2001-10-09 18:11:58 +00:00
steve
c507379f09
Handle more path polarity cases.
2001-08-31 21:08:35 +00:00
steve
47031767fa
Parse $setuphold statements.
2001-08-31 17:38:41 +00:00
steve
8654412844
lsb vs msb in error message.
2001-07-28 22:00:27 +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
7eab75ded1
Parse a lot more specify syntax.
2001-07-01 23:44:43 +00:00
steve
c3960f8e6a
Support macromodule as module.
2001-06-23 00:31:06 +00:00
steve
e40efec4bd
Add more UDP edge types, and finish up compile
...
and run-time support. (Stephan Boettcher)
2001-06-18 00:51:23 +00:00
steve
3ca55bf327
Better handling of module item errors.
2001-04-29 20:18:34 +00:00
steve
4f3bdd9f38
Accept single strengths for pullup and pulldown.
2001-04-28 22:56:15 +00:00
steve
c97692d715
Generate code for disable.
2001-04-21 00:55:46 +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
02fc59fbdf
Parse parameters within nested scopes.
2001-01-13 22:20:08 +00:00
steve
cc18d065aa
declaration initialization for time variables.
2001-01-06 06:31:58 +00:00
steve
68e672e61a
Support arrays of integers.
2001-01-06 02:29:35 +00:00
steve
c9881c115a
Spelling error.
2000-12-16 17:16:08 +00:00
steve
5dbea64759
Add support for signed reg variables,
...
simulate in t-vvm signed comparisons.
2000-12-11 00:31:43 +00:00
steve
084a464cf1
Support decimal constants in behavioral delays.
2000-12-10 22:01:35 +00:00
steve
f6507cba43
Check lvalue of procedural continuous assign (PR#29)
2000-12-06 06:31:09 +00:00
steve
789e862ca4
parse real and realtime declarations.
2000-12-05 22:32:05 +00:00
steve
3591e06c4e
Support time variables.
2000-10-31 17:49:02 +00:00
steve
88c8547486
Remove C++ string from variable lists.
2000-10-31 17:00:04 +00:00
steve
f526d235d1
Check for missing concat subexpressions (PR#11)
2000-10-14 02:23:02 +00:00
steve
3a2eff2265
Parse specify delay values.
2000-09-23 03:04:10 +00:00
steve
67472379b4
Error message for invalid variable list.
2000-09-13 16:32:26 +00:00
steve
30a81731dd
Introduce min:typ:max support.
2000-07-29 17:58:20 +00:00
steve
739365abe5
Parse disable statements to pform.
2000-07-26 05:08:07 +00:00
steve
18eb34921f
Add support for non-constant delays in delay statements,
...
Support evaluating ! in constant expressions, and
move some code from netlist.cc to net_proc.cc.
2000-07-07 04:53:53 +00:00
steve
056a3f7220
Allow unary operators in constant expressions.
2000-06-30 15:50:20 +00:00
steve
042724612e
Handle delay_value_lists in simple paths. (Wen-jung Tseng)
2000-06-27 16:00:40 +00:00
steve
14d87e3e11
Typo saving third delay value in list.
2000-05-31 01:31:52 +00:00
steve
8fc2dc2cd1
Better parsing of expressions lists will empty expressoins.
2000-05-23 16:03:13 +00:00
steve
3676d66408
Module ports are really special PEIdent
...
expressions, because a name can be used
many places in the port list.
2000-05-16 04:05:15 +00:00
steve
367db72c99
Add support for procedural continuous assignment.
2000-05-11 23:37:26 +00:00
steve
de1a7a0933
Deliver gate output strengths to the netlist.
2000-05-08 05:30:19 +00:00
steve
ca2fd41bb6
Carry assignment strength to pform.
2000-05-06 15:41:56 +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
44838f8973
Add support for force assignment.
2000-04-22 04:20:19 +00:00
steve
23725cf42c
Catch bad operand to some unary operators.
2000-04-21 03:22:18 +00:00
steve
7484feceb5
fork-join support in vvm.
2000-04-15 19:51:30 +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
67bdd433a9
Detect the signed keyword.
2000-04-02 04:25:39 +00:00
steve
2dd010dc04
Named events as far as the pform.
2000-04-01 19:31:57 +00:00
steve
6eef54595f
Support localparam.
2000-03-12 17:09:40 +00:00
steve
e7efc2709a
Redesign the implementation of scopes and parameters.
...
I now generate the scopes and notice the parameters
in a separate pass over the pform. Once the scopes
are generated, I can process overrides and evalutate
paremeters before elaboration begins.
2000-03-08 04:36:53 +00:00
steve
1698a19cf6
Parse all the various edge types.
2000-03-05 18:26:51 +00:00
steve
b734ecf02f
Macintosh compilers do not support ident.
2000-02-23 02:56:53 +00:00
steve
2de887c2ff
Support named parameter override lists.
2000-01-09 05:50:48 +00:00
steve
645c24289e
Handle general constant expressions in delays.
2000-01-02 01:59:52 +00:00
steve
7e37b61a05
Fix module parameter override syntax.
2000-01-01 23:47:58 +00:00
steve
31f1ceea9f
delay1 expressions can take parentheses.
1999-12-31 17:39:00 +00:00
steve
5ce35e3e60
Fix event trigger and repeat control parse errors.
1999-12-31 03:24:30 +00:00
steve
6d0edcf58a
Support reg initial assignment syntax.
1999-12-30 19:06:14 +00:00
steve
a4a0ba670d
Allow qualified identifiers. They really do work.
1999-11-15 04:43:52 +00:00
steve
f7526c6c4b
parse drive strengths.
1999-11-05 19:36:36 +00:00
steve
2fb754cd54
Parse empty source files.
1999-10-15 05:03:33 +00:00
steve
c63a3acf93
Elaborate ~^ and ~| operators.
1999-09-30 02:43:01 +00:00
steve
b37fcf3593
Handle declaration of integers (including scope) in functions.
1999-09-30 01:22:37 +00:00
steve
076cecb6cd
Handle null returns from function_item
1999-09-30 00:48:04 +00:00
steve
5ee7cfb854
Fix shift/reduce warnings and ?:. (dhn@qedinc.com)
1999-09-29 22:56:31 +00:00
steve
93f05306e7
Standardize error/sorry messages.
1999-09-29 21:16:32 +00:00
steve
a64a33e65a
Full case support
1999-09-29 18:36:02 +00:00
steve
bb38653654
Parse system function calls.
1999-09-25 02:57:29 +00:00
steve
12b9071f49
Parse and elaborate named for/join blocks.
1999-09-22 04:30:04 +00:00
steve
da4a7ea80a
assignment with blocking event delay.
1999-09-22 02:00:48 +00:00
steve
424e6a750c
Handle unconnected module ports.
1999-09-17 02:06:25 +00:00
steve
287d21f300
Handle integers at task parameters.
1999-09-10 05:02:09 +00:00
steve
6fb7120158
Parse non-blocking assignment delays.
1999-09-02 01:59:27 +00:00
steve
3017636c05
continuous assignment lists.
1999-08-27 15:08:37 +00:00
steve
23acca48ff
elaborate some aspects of functions.
1999-08-25 22:22:41 +00:00
steve
9eae940ebd
Parameter overrides support from Peter Monta
...
AND and XOR support wide expressions.
1999-08-23 16:48:39 +00:00
steve
0fdc7657ef
Fix handling of port name when . notation is used.
1999-08-03 04:48:51 +00:00
steve
5f10342f52
Parse into pform arbitrarily complex module
...
port declarations.
1999-08-03 04:14:49 +00:00
steve
4b057c2d93
Get gat names, instead of the first character.
1999-08-01 23:25:51 +00:00
steve
71d35f32b2
Parse and elaborate rise/fall/decay times
...
for gates, and handle the rules for partial
lists of times.
1999-08-01 16:34:50 +00:00
steve
e0a988bf7e
Add functions up to elaboration (Ed Carter)
1999-07-31 19:14:47 +00:00
steve
55654db9df
quietly ignore specify code.
1999-07-28 03:47:24 +00:00
steve
93a77a2efd
Elaborate task input ports.
1999-07-24 02:11:19 +00:00
steve
6852a62e5a
procedural blocking assignment delays.
1999-07-12 00:59:36 +00:00
steve
c8d13d7a1c
Support concatenate in l-values.
1999-07-10 02:19:26 +00:00
steve
46df679fc5
remove string from lexical phase.
1999-07-10 01:03:18 +00:00
steve
3ff6912bdd
Elaborate user defined tasks.
1999-07-03 02:12:51 +00:00
steve
11b2b1740a
Handle expression widths for EEE and NEE operators,
...
add named blocks and scope handling,
add registers declared in named blocks.
1999-06-24 04:24:18 +00:00
steve
853ad247a1
Elaborate and supprort to vvm the forever
...
and repeat statements.
1999-06-19 21:06:16 +00:00
steve
c01399fcda
Parse some more specify syntax.
1999-06-19 03:21:21 +00:00
steve
37b60a4c52
Clean up interface of the PWire class,
...
Properly match wire ranges.
1999-06-17 05:34:42 +00:00
steve
add2803267
More syntax parse with sorry stubs.
1999-06-16 03:13:29 +00:00
steve
fabb146342
Support case expression lists.
1999-06-15 05:38:39 +00:00
steve
430d7b22e4
Add lexical support for real numbers.
1999-06-15 02:50:02 +00:00
steve
0d210c90e5
More unary operators.
1999-06-13 17:30:23 +00:00
steve
a22e43cb7a
Handle part selects as l-values to continuous assign.
1999-06-12 23:16:37 +00:00
steve
29da349106
parse more verilog.
1999-06-12 20:35:27 +00:00
steve
63627de7fa
More parseable syntax.
1999-06-12 03:42:57 +00:00
steve
fdaae4aa2a
Forgot to return th for statement object.
1999-06-10 05:33:12 +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
1464851e0e
Add support for procedural concatenation expression.
1999-06-09 03:00:05 +00:00
steve
7605a7b1f0
Add parse and elaboration of non-blocking assignments,
...
Replace list<PCase::Item*> with an svector version,
Add integer support.
1999-06-06 20:45:38 +00:00
steve
f3a91a10b3
Line information with nets.
1999-06-02 15:38:46 +00:00
steve
2a85ee5059
Net declaration assignments.
1999-06-02 02:56:29 +00:00
steve
0ca5a282e5
parse functions and tasks and delay value lists.
1999-05-30 03:12:56 +00:00
steve
35893919e0
module parameter bind by name.
1999-05-29 02:36:17 +00:00
steve
c1dbb56b70
Line number information.
1999-05-27 03:31:29 +00:00
steve
0352864470
Much expression parsing work,
...
mark continuous assigns with source line info,
replace some assertion failures with Sorry messages.
1999-05-20 04:31:45 +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
5de9b7c9f1
Parse and elaborate the concatenate operator
...
in structural contexts, Replace vector<PExpr*>
and list<PExpr*> with svector<PExpr*>, evaluate
constant expressions with parameters, handle
memories as lvalues.
Parse task declarations, integer types.
1999-05-10 00:16:57 +00:00
steve
6625ea71c2
Parse more things.
1999-05-08 20:19:20 +00:00
steve
8e73ff2376
Parse more complex continuous assign lvalues.
1999-05-07 04:26:49 +00:00
steve
a568e526c6
Get rid of list<lgate> types.
1999-05-06 04:37:17 +00:00