odb: remove corner data from dbExtControl#10740
Conversation
There was a problem hiding this comment.
Code Review
This pull request removes obsolete corner data (such as corner counts and factor lists) from dbExtControl and simplifies the corner retrieval logic in rcx by fetching corner information directly from _block. It also bumps the database schema version to 133 to maintain backward compatibility when reading older schemas. The review feedback highlights two potential issues: a possible null pointer dereference if _block is null when calling getCornerCount(), and a potential out-of-bounds read if _cornerCnt is zero when accessing map[0].
rcx: reconstruct corners from the block, not dbExtControl Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
e3ba1cf to
7d67931
Compare
|
@codex review |
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request removes obsolete corner count and corner/factor lists from dbExtControl and simplifies corner extraction and mapping logic in rcx by retrieving corner data directly from dbBlock. The database schema version is updated to 133 to handle backward compatibility during stream reading. The review feedback highlights potential null-pointer dereferences and out-of-bounds array accesses in getPrevControl() and makeCornerNameMap() if _block is null or _cornerCnt is zero, recommending defensive checks to prevent segmentation faults.
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
|
@maliberty I added defensive checks based on gemini's comments. I think that once we understand more of the code some of them will eventually go away with the correct call order. |
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
59b6cd7
into
The-OpenROAD-Project:master
Summary
Remove the data regarding the corners used in extraction from the legacy dbExtControl object and make RCX build the corner data from the block.
Type of Change
Impact
None.
Verification
./etc/Build.sh).