Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for unpacked structs #4180

Draft
wants to merge 10 commits into
base: main
Choose a base branch
from
Draft

Commits on Sep 18, 2024

  1. Added nordshift attribute

    nordshift on a net or variable yields generation of muxes instead of shift
    circuits for dynamic rvalue indexing, akin to nowrshmsk for lvalue indexing.
    
    To facilitate this, the AST transformations for rvalue indexing are moved
    from genrtlil.cc to simplify.cc, bringing them in line with transformations
    for lvalue indexing.
    daglem committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    ca01de2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8f8a7b9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    608bc58 View commit details
    Browse the repository at this point in the history
  4. ast: Catch up with struct member changes

    povik authored and daglem committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    1597dfc View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    36257c3 View commit details
    Browse the repository at this point in the history
  6. Correct self-determined signedness for right operand of AST_SHIFT and…

    … AST_SHIFTX
    
    AST_CAST_SIZE on the right operand caused an unsigned operand to be signed.
    
    This is corrected by handling the right operand like in AST_POW.
    daglem committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    7b2c299 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c67421e View commit details
    Browse the repository at this point in the history
  8. Further simplify rewriting of dynamic indexing

    This also corrects the calculation of bit widths, using the new
    function min_bit_width.
    daglem committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    5a63653 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d6dd61d View commit details
    Browse the repository at this point in the history
  10. Add support for unpacked structs/unions

    Unpacked structs/unions may now be declared, and can contain members
    with unpacked dimensions.
    
    This is just syntactic sugar; unpacked structs/unions are handled
    as if they were packed.
    
    Note that arrays of structs/unions are still not supported.
    daglem committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    f9381ba View commit details
    Browse the repository at this point in the history