Permalink
Commits on Aug 13, 2007
Commits on Aug 11, 2007
  1. Fix return of net strength value.

    steveicarus committed Aug 11, 2007
    The calculated return value for the calculated strength value of
    a net was left dangling. This patch fixes that. See pr1770199 in
    the regression test suite.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Aug 10, 2007
  1. Fix missing endif

    steveicarus committed Aug 10, 2007
  2. Constant concat operands are self determined

    steveicarus committed Aug 10, 2007
    distinguish between self-determined and value-preserving when
    evaluating constants that are arguments to concatenations.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Aug 5, 2007
  1. Initialize assignments of reals

    steveicarus committed Aug 5, 2007
    Support initialization assignments of real value variables. In the
    process, clean up the processing of real variable declarations in
    the parser.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 26, 2007
  1. Check the random function seed type and a fix to handle time variables.

    caryr committed with steveicarus Jul 24, 2007
    The standard states that the seed for the random functions should be
    an integer/time variable or a register. This patch fixes the compiletf
    routines to check for this. There is also a small patch to
    vvp/vpi_signal.cc that removes an assert that was failing and replaces
    it with appropriate code. The assert was verifying that the source was
    not bigger than an integer. The problem with this is that a time
    variable or register may be bigger than an integer. I altered the code
    to remove the assert and copy only the lower (8 * sizeof integer) bits.
    The potential overflow/loss of precision is not checked. This passes
    the regression tests.
Commits on Jul 25, 2007
  1. Delay compiletf until bindings are complete

    steveicarus committed Jul 25, 2007
    Delat the compiletf calls until after all the label references
    are resolved and link bindings are complete. Otherwise, there may
    be dangling references.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 24, 2007
  1. [PATCH] Add compiletf routine for deposit system task and fix string …

    caryr committed with steveicarus Jul 24, 2007
    …constants.
    
    This patch adds a compiletf routine to the $deposit system task and
    simplifies the calltf routine. It also patches the constant string code
    to return an appropriate integer value when needed. A number of compiletf
    routines that check for this can now be simplified since this (string
    constants) no longer causes an assert in an integer environment.
Commits on Jul 23, 2007
  1. Better errors for invalid scope path

    steveicarus committed Jul 23, 2007
    Better handle cases where the scope part of a heirarchical name does
    not match any existing scope, or where scope index expressions are
    not correct.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
  2. Vector parts into reduction nets

    steveicarus committed Jul 23, 2007
    In rare cases, the reduction logic nodes may get vector part inputs.
    This patch adds support for vector parts entering a reduction node.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 22, 2007
  1. Parameter names in generate blocks from containing scopes.

    steveicarus committed Jul 22, 2007
    Parameter names used in generate blocks can look in containing
    scopes (but not past the containing module) for their definitions.
  2. Elaborate memory references with non-zero bases.

    Martin Whitaker committed with steveicarus Jul 22, 2007
    This fixes r-value type references to memory words for memories
    that have a non-zero base address. Elaborate the expression
    needed to get the canonical word index.
Commits on Jul 21, 2007
  1. Invalid assertion on udp port count

    steveicarus committed Jul 21, 2007
    The port input count assertion was triggering incorrectly. It was
    comparing the count with the bytes instead of bits in a word.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 20, 2007
  1. Pass the finish and stop system task argument correctly.

    caryr committed with Stephen Williams Jul 20, 2007
    The argument passed to $finish and $stop is not currently used, but it
    is now passed down to the functions that may someday do something
    useful with it (schedule_finish() and schedule_stop() in vvp/schedule.cc).
  2. Add missing probabilistic functions and compiletf routines.

    caryr committed with Stephen Williams Jul 20, 2007
    Add the missing probabilistic functions and add compiletf routines
    for all the functions. The original calltf routines have been
    modified as appropriate. The base functions are straight copies
    from the standard. I have visually verified the curves with 5,000
    points and they look correct.
  3. [PATCH] Update vpiFinish arguments to be in correct range.

    caryr committed with Stephen Williams Jul 19, 2007
    Even though vpiFinish does not currently do anything with it's
    argument I thought it would be best to have them all be in the
    correct range [0, 1, 2], so they have been updated as appropriate.
  4. Update the files to use vpi_control vs vpi_sim_control.

    caryr committed with Stephen Williams Jul 19, 2007
    vpi_sim_control is no longer part of the standard, so update the code to
    use the standard function (vpi_control).
Commits on Jul 18, 2007
  1. Real value constants in vector declaration

    steveicarus committed Jul 18, 2007
    Handle real valued expressions in vector declarations. Also clean
    up the handling of vector declaration expressions.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
  2. Minor improvements to $bits implementation

    steveicarus committed Jul 18, 2007
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 15, 2007
  1. Handle nil parameter overrides

    steveicarus committed Jul 15, 2007
    Nil parameter overrides can turn up in positional paramter override
    lists, where items are intentionally skipped.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 14, 2007
  1. Propagate real values properly

    steveicarus committed Jul 14, 2007
    Be careful to include bitwise differences in double values, because
    it is the bit pattern we are passing aroung, not the arithmetic value.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 13, 2007
Commits on Jul 12, 2007
  1. Start runtime trace aids

    steveicarus committed Jul 12, 2007
    The runtime is a vvp runtime engine debug aid that allows for
    detailed dump into a debug log. The trace is enabled by setting
    the VVP_DEBUG variable and activating specific debug messages
    in the vvp source.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
  2. Variable drivers propogate initial values.

    steveicarus committed Jul 12, 2007
    Make varable drivers (reg vectors and real) propagate their initial
    values using a special init scheduler queue. This causes the net to
    be loaded with reasonable initial values.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 6, 2007
  1. Correct wrong or misleading comments.

    ldoolitt committed with Stephen Williams Jul 6, 2007
Commits on Jul 4, 2007
  1. Bit select of array word

    steveicarus committed Jul 4, 2007
    fix support for bit select of array word in behavioral expressions.
Commits on Jul 3, 2007
  1. Fix signed compare with minus values

    steveicarus committed Jul 3, 2007
    If the operands were negative, and not equal, the lt flag
    would be set incorrectly.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
  2. Handle indexed part select in continuous assign.

    steveicarus committed Jul 3, 2007
    Non-constant indexed part select in continuous assignment generates
    a select node with the correct width. In the process factor out and
    share some of the part select calculations with expr part select
    handling methods.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jul 1, 2007
  1. Remove restriction on size of constants

    steveicarus committed Jul 1, 2007
    Constant strings are now formed in dynamically allocated memory
    instead of a fixed array.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jun 30, 2007
  1. Fix runtime crash dumping VCD

    steveicarus committed Jun 30, 2007
    Words of net arrays were incorrectly added to the scope. They should
    only be attached to the array, and accessed as a word of the array.
    
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
  2. Fix code generation for real expressions

    steveicarus committed Jun 30, 2007
    Real value are vector width of 1, fix real literal to reflect this.
    fix leaking real registers in code generation for function arguments.
    Load of signal should handle conversion from real to vector. Function
    arguments, type vector passed a real value, are an example where this
    comes up.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jun 29, 2007
  1. Do not process back-slash escapes twice.

    steveicarus committed Jun 29, 2007
    Backslash-escapes are processed early, during elaboration, so that
    escaped characters show up in all places with the calculated value.
    This means the $display formatting will get processed strings and
    should not process back-slashes again.
    
    Signed-off-by: Stephen Williams <steve@icarus.com>
Commits on Jun 28, 2007