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

[OM] Rework ClassOp to use fields terminator #7537

Open
wants to merge 27 commits into
base: main
Choose a base branch
from

Commits on Sep 27, 2024

  1. [OM] Rework ClassLike to use return style

    This changes the OM dialect Class/ExternClass to use a return style
    field name/type specifier syntax and, for non-extern class, a terminator
    op in the style of hw.output.
    
    The ClassLike code requires updating their parser/printer for the new
    syntax.
    
    This change introduces two new inherent attributes for ClassLike:
    * fieldNames: array of string attribute corresponding to field names in
      definition order
    * fieldTypes: dictionary mapping field names to types
    
    The ClassLike code now provides an API to get the type of a field based
    on its name, abstracting the underlying attribute storage.
    
    The firrtl LowerClasses logic requires changes to use this API when
    constructing OM classes, as well as in the dialect conversion logic to
    handle the convering the stored types.
    
    The OM evaluator similarly is updated for the new field API.
    
    The OM linker is updated to skip constructing the field name to type map
    and instead using the getFieldType API provided by the classOp.
    
    The OM object field verifier also no longer needs to construct the field
    name to type maps and instead can just use the new API.
    
    Quite a few tests required updating for the new field syntax.
    leonardt committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    cbf9f5f View commit details
    Browse the repository at this point in the history
  2. use builder pattern

    leonardt committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    f4bdd0c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    71f8ae0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f02555f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f8f2aa5 View commit details
    Browse the repository at this point in the history
  6. Update python bindings test

    leonardt committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    4cc1518 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2024

  1. Avoid name collision

    leonardt committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    9001f6a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f55fd57 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d3d6fc3 View commit details
    Browse the repository at this point in the history
  4. Clang format

    leonardt committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    095834e View commit details
    Browse the repository at this point in the history
  5. Fix FusedLoc bug

    leonardt committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    92960ed View commit details
    Browse the repository at this point in the history
  6. clang format

    leonardt committed Oct 3, 2024
    Configuration menu
    Copy the full SHA
    b789627 View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2024

  1. Add fields location API

    leonardt committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    85e6d6a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    dd7ff80 View commit details
    Browse the repository at this point in the history
  3. Fix evaluator test

    leonardt committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    4cf7849 View commit details
    Browse the repository at this point in the history
  4. Clang format

    leonardt committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    c46abb8 View commit details
    Browse the repository at this point in the history

Commits on Oct 7, 2024

  1. Improve boolean check

    leonardt committed Oct 7, 2024
    Configuration menu
    Copy the full SHA
    1c84f9e View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2024

  1. Configuration menu
    Copy the full SHA
    e6ad898 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    38549a0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    66f440b View commit details
    Browse the repository at this point in the history
  4. Fixup freeze paths test

    leonardt committed Oct 9, 2024
    Configuration menu
    Copy the full SHA
    7137630 View commit details
    Browse the repository at this point in the history
  5. Revert "Test appending _in to ports input"

    This reverts commit 38549a0.
    leonardt committed Oct 9, 2024
    Configuration menu
    Copy the full SHA
    4becb61 View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2024

  1. Remove redundant cast

    leonardt committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    65948a3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9226a5d View commit details
    Browse the repository at this point in the history
  3. Revert "Use map vector to preserve field name ordering"

    This reverts commit 9226a5d.
    leonardt committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    e7cb5e7 View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2024

  1. Configuration menu
    Copy the full SHA
    d1b9ff8 View commit details
    Browse the repository at this point in the history
  2. Clang format

    leonardt committed Oct 11, 2024
    Configuration menu
    Copy the full SHA
    8d3b799 View commit details
    Browse the repository at this point in the history