Ensure signed constants are correctly parsed and exported in RTLIL. Add a test to check parsing and exporting #4550
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What are the reasons/motivation for this change?
Fix #4539
Explain how this is achieved.
Updated rtlil_lexer.l to recognize constants with an optional s for signedness.
Modified rtlil_parser.y to set RTLIL::CONST_FLAG_SIGNED when appropriate.
Adjusted rtlil_backend.cc to correctly export signed constants.
Added a test (rtlil_signed_attribute.ys) for round-trip verification of signed constants.
If applicable, please suggest to reviewers how they can test the change.
I have included a test doing round trip test. I assume the rest of tests could catch relevant bugs.