odb: add dbCorner and add/removal APIs#10758
Conversation
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
There was a problem hiding this comment.
Code Review
This pull request introduces the dbCorner database object to represent process corners within a dbBlock, along with corresponding Tcl commands (add_corner, remove_corner, remove_corners) and C++ unit tests. The reviewer's feedback highlights several important improvements: adding a safety check in dbBlock::removeCorner to prevent undefined behavior when erasing a non-existent corner, validating against empty corner names during creation, and strengthening Tcl argument parsing and validation to ensure robust command execution.
1) Check input strings in .tcl for correct number of arguments
2) Check for empty name and add test for coverage
3) Re-generate correctly without --keep_empty
4) Re-golden read me message count
5) Remove includes that were not used directly
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2bb8aef5dc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
1) Move the add/remove corner logic into dbCorner::create/destroy
and delete dbBlock::addCorner/removeCorner
2) Destroy attached properties before freeing the object in destroy
and removeCorners
3) Update TestCorner to the factory API
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
Summary
Adds the object which will hold the information regarding each process corner. With this, tools like RCX will only need to consume the ODB data rather than expecting user input.
Type of Change
Impact
None (yet).
Verification
./etc/Build.sh).Related Issues
None.