Skip to content
Commits on Sep 6, 2008
  1. @caryr

    Pass file and line number information for expression constants.

    This patch passes the file and line number information for
    constants that are used in expressions.
    caryr committed with Sep 5, 2008
Commits on Sep 5, 2008
  1. Merge branch 'vhdl'

    committed Sep 5, 2008
  2. @caryr

    Add callbacks to vpiMemory objects.

    This patch adds the ability to set a global array callback.
    These type of callbacks will be called when any element of
    the array changes.
    caryr committed with Sep 4, 2008
  3. @ldoolitt

    Non-controversial whitespace cleanup

    Nothing to do with tab width!  Eliminates useless
    trailing spaces and tabs, and nearly all <space><tab>
    pairings.  No change to derived files (e.g., .vvp),
    non-master files (e.g., lxt2_write.c) or the new tgt-vhdl
    directory.
    
    Low priority, simple entropy reduction.  Please apply
    unless it deletes some steganographic content you want
    to keep.
    ldoolitt committed with Sep 4, 2008
  4. Parse attributes on statements within event statements.

    Statements can have attributes attached to them. Handle a few cases in
    the parser where attributes may be attached to statements, and get them
    as far as the pform.
    committed Sep 4, 2008
Commits on Sep 4, 2008
  1. @caryr

    Add blocking repeat event control, make repeat sign aware

    This patch adds blocking repeat event controls and also makes the
    base repeat statement sign aware. If the argument to repeat is
    negative (it must be a signed variable) then this is treated just
    like an argument of 0 (there is no looping). Doing this allows us
    to model the repeat event control as follows.
    
      lhs = repeat(count) @(event) rhs;
    
    is translated to:
    
      begin
        temp = rhs;
        repeat (count) @(event);
        lhs = temp;
      end
    
    This patch also pushes the non-blocking event control
    information to the elaboration phase where it will report they
    are not currently supported.
    caryr committed with Sep 3, 2008
  2. Get generate block scope from generate case.

    The generate block is a placeholder for the generate items, and it
    is the items themselves that can specify the name of the generate
    block that is created.
    committed Sep 3, 2008
Commits on Sep 3, 2008
  1. Remove last vestiges of XNF.

    XNF hasn't been supported in a while. Xilinx doesn't put any effort
    into it either, for that matter.
    committed Sep 2, 2008
Commits on Sep 2, 2008
  1. @nickg

    Fix vhdl_expr::cast when expression has no assigned type

    This avoids a couple of segfaults
    nickg committed Sep 2, 2008
  2. @nickg

    Add IVL_LPM_CMP_GT

    nickg committed Sep 2, 2008
  3. @nickg

    Make sure LPM expression is cast to the output type

    This fixes some signed/unsigned bugs identified by the signedX tests.
    nickg committed Sep 2, 2008
  4. @caryr

    Fix a couple uninitialized value problems found with tgt-vhdl.

    This patch fixes two uninitialized variable problems found
    with valgrind when testing the VHDL code generator.
    caryr committed with Sep 1, 2008
Commits on Sep 1, 2008
  1. @caryr

    Allow .array/port input access generate statement.

    For nested array accesses the .array/port statement must
    evaluate its input argument before it starts printing the
    actual .array/port statement.
    caryr committed with Sep 1, 2008
  2. @ldoolitt

    Compatibility with gcc-4.3

    Add "include" to fix error with abort() in dup_expr.cc
    Add "include" to AStatement.h so usage of struct PExpr works
    Get rid of eval_tree.cc:577: warning: suggest parentheses around comparison in operand of ^
    ldoolitt committed with Aug 31, 2008
  3. Fix problem with vvp_vector2_t right shift

    that trips only when starting with perfectly
    aligned inputs.
    committed Sep 1, 2008
Commits on Aug 31, 2008
  1. Fix a bug in vector evaluation of abs().

    The calculation of the abs of a signed value
    was inverting the value if it was signed,
    and not if it was negative.
    committed Aug 30, 2008
Commits on Aug 30, 2008
  1. Fix right shift of vvp_vector2_t.

    The right shift of vvp_vector2_t needs to
    account for and mask off shifted bits. Otherwise
    there will be unexpected results after
    a vvp_vector2_t::trim method.
    committed Aug 30, 2008
  2. @caryr

    Remove unneeded real compare code.

    The code removed is unneeded since real values are already
    handled by the real specific comparison that is called at
    the beginning of each function.
    caryr committed with Aug 29, 2008
  3. Add the Verilog-2005 and Verilog-AMS constant system functions.

    This patch adds the constant system functions for Verilog-2005
    and Verilog-AMS. These are evaluated at compile time. $abs(),
    $min() and $max() support their polymorphic behavior in the
    compiler where it really matters. They are always evaluated
    as reals in the run time and the result/argument(s) will be
    converted as needed.
    
    The Verilog-2005 functions are available if using the 2005
    generation (default) and if either the icarus-misc (also on
    by default) or verilog-ams flags are set.
    
    The Verilog-AMS functions are available if either the
    icarus-misc or verilog-ams flags are set.
    committed Aug 29, 2008
  4. @caryr

    Evaluate constant real EQ and NE constructs.

    This patch adds code to evaluate constant == and != with real values.
    caryr committed with Aug 29, 2008
  5. @caryr

    More NaN constant fixes.

    This patch cleans up %loadi/wr regarding NaN values. It also
    fixes the code generator to correctly output a NaN value as
    a Cr<> constant.
    caryr committed with Aug 28, 2008
  6. @caryr

    Handle NaN constant in the code generator and fix loadi/wr NaN bug.

    This patch fixes a bug in %loadi/wr regarding NaN values. It also
    fixes the code generator to correctly output a NaN value.
    caryr committed with Aug 28, 2008
  7. Remove dead EEQ code.

    The EEQ function is handled by vvp_cmp_eeq, an arithmetic expression
    processor and the logic version of EEQ is never used.
    committed Aug 28, 2008
  8. Clean up $clog2() measurement of unsized numbers.

    If the argument to $clog2() is unsized constant, then trim it to the
    smallest representation that doesn't lose the sign, then do the $clog2
    on that.
    
    Also, use integer_width instead of 32 for the minimum $clog2() result
    for a negative value.
    committed Aug 28, 2008
Commits on Aug 29, 2008
  1. @nickg
  2. @caryr

    Fix the always zero delay check to happen after elaboration.

    This patch moves the always zero or possibly zero delay checks
    to a point after the circuit is full elaborated. Before it
    could try to check tasks that had not already been evaluated
    resulting in a crash.
    caryr committed with Aug 28, 2008
  3. @caryr

    Work around a flex limitation with yyrestart()

    See the comments added with this patch for more information.
    caryr committed with Aug 28, 2008
  4. @caryr

    Optimize block delay type check

    When looking for a delay_type() in a block stop when we have a
    DEFINITE_DELAY. Doing this could reduce the number of statements
    that need to be checked.
    caryr committed with Aug 28, 2008
  5. @ldoolitt

    Spelling fixes

    Comments only, no code changes
    ldoolitt committed with Aug 28, 2008
Something went wrong with that request. Please try again.