Skip to content

Lira Integration#3

Merged
uslsteen merged 68 commits into
masterfrom
lira-integration
Jun 22, 2026
Merged

Lira Integration#3
uslsteen merged 68 commits into
masterfrom
lira-integration

Conversation

@uslsteen

@uslsteen uslsteen commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Initial LIRA IR libraries

  • Introduced Sequnce/Snippet/ISA Builder APIs to generate LIRA IR.
  • Introduced Ruby LIRA IR Library
  • Introduced LIRA Base Operations implementation
  • Synchronized the Python, Rust implementations: aligned builder APIs across all three languages.
  • Added unit tests covering ir_ser_txt, arch_ser_yaml, and ir_builder in all three languages (pytest for Python, minitest for Ruby, cargo test for Rust)
  • Added integration tests that round-trip a committed reference.yaml and diff-verify the output.
  • Introduced CI running unit tests with coverage and integration tests.

@uslsteen uslsteen requested a review from belovdv June 17, 2026 23:52
@uslsteen

Copy link
Copy Markdown
Contributor Author

@belovdv I'm waiting for your review and/or approval of the Rust library and uploading this first integration MR.

@uslsteen

Copy link
Copy Markdown
Contributor Author

Relates #3

@uslsteen uslsteen linked an issue Jun 18, 2026 that may be closed by this pull request
@uslsteen uslsteen added the help wanted Extra attention is needed label Jun 18, 2026
uslsteen added 25 commits June 18, 2026 10:57
* Added module w/ Standard LIRA Operations
* Formatted w/ black
* IR Value object was added
* Sequence/Snippet/Instruction/Architecture Builders were added
* YAML serialization was supported in python integration test
* serialization/deserialization logic moved into classes
* to_h/from_h ctors were added into Arch/IR data structures
* YAML Normalization script to provide cross-library check on examples/tests
* Introduced BaseOp enum
* LIRA TXT serlialization was deprecated
* Integration test updated
    - TXT format was removed
    - Normalization was applied on script output
    - Launch README added
* test_ir_ser.py was temporary removed
* LIRA YAML serialization updated to fit with unified format
* LIRA TXT serlialization was deprecated
* Integration test updated
    - TXT format was removed
    - Normalization was applied on script output
* Introduced LIRA Base Operations
* Introduced LIRA YAML serialization
* Register abstraction added into arch.rs
* Introduced LIRA IR Builder (general & arch-specific)
* LIRA TXT serlialization was deprecated
* Integration test updated
    - TXT format was removed
    - Normalization was applied on script output
    - Launch README added
* Root Cargo.toml updated
* Cargo.toml added examples/
* CLI added into example usage
* Constant mask of the instruction was added into InstructionEncoding
* Examples were updated
@uslsteen uslsteen added Ruby Relates to Ruby LIRA Lirbrary Rust Relates to Rust LIRA Lirbrary Infrastructure Relates to LIRA Infrastructure labels Jun 18, 2026
@uslsteen uslsteen added this to the Protea Integration milestone Jun 18, 2026
@uslsteen uslsteen self-assigned this Jun 18, 2026

@belovdv belovdv left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Conclusion

I'm stopping the detailed review for now. Comments already made are mostly nitpicks, but there are some crucial blockers - however, that's not the main issue.

The real problem right now is the lack of a shared strategic vision for this framework.

We need to align on the general goals and the problems we're solving. Then decide on the why, what, and how at a high level. Only after we reach agreement should we circle back to the implementation.

Also, I'd much rather we add things piece by piece - CI, new file format, directory layout, tests, standard operations, IR builder. Because of the nature of this project, imo we should work on one feature at a time, but for all languages (that need it) simultaneously.

Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml
Comment thread .github/workflows/ci.yml
Comment thread python/examples/example.py Outdated
Comment thread rust/examples/example.rs Outdated
Comment thread rust/examples/example.rs Outdated
Comment thread rust/examples/example.rs Outdated
Comment thread rust/lira/src/ir_builder.rs Outdated
Comment thread rust/tests/Cargo.toml
@uslsteen uslsteen merged commit 16799b0 into master Jun 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

help wanted Extra attention is needed Infrastructure Relates to LIRA Infrastructure Python3 Relates to python3 LIRA Lirbrary Ruby Relates to Ruby LIRA Lirbrary Rust Relates to Rust LIRA Lirbrary

Projects

None yet

Development

Successfully merging this pull request may close these issues.

LIRA Ruby Library

2 participants