removeConstraints was removed upstream in STA 3.0 (MCMM refactor).
The "Re-add constraints" blocks were originally preceded by
remove_constraints calls; without them, the re-adds are no-ops.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
Drop the ALLOW_WARNINGS option, -Werror flag, and
OpenSTAWarnings interface library. Restore original
target_compile_options with generator expressions.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
The valid field name is "net" (singular) per search/Search.tcl.
Using "nets" triggered Warning 168 (unknown field) silently in
29 test scripts. Fix the field name and regolden .ok files.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
Previously these functions returned 1 on mismatch but no caller
checked the return value, allowing roundtrip failures to go
undetected. Now they call error() so the sta process exits
non-zero and the regression runner catches the failure.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
The remove_constraints API was permanently removed from Sta.
Delete the commented-out calls, TODO comments, and "skipped"
print statements instead of keeping placeholder blocks.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
Update .libok/.txtok/.sdcok golden files to match current writer
output so diff_files produces "No differences found" instead of
silently reporting mismatches that were captured as expected output.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
In https://github.com/The-OpenROAD-Project/OpenROAD/pull/10041
we have a new way to initializa the tcl subsystem which
will allow to be entirely independent of separate files
once we can switch to Tcl9.
Signed-off-by: Henner Zeller <h.zeller@acm.org>
Support for std::{from,to}_chars isn't finalized in
libcxx as of the time of writing, see __cpp_lib_to_chars in
6331bfa41a/libcxx/docs/FeatureTestMacroTable.rst
This patch adds a fallback using strtof. There are two
differences:
* strtof is locale-dependent
* strtof tolerates leading spaces
Signed-off-by: Mohamed Gaber <me@donn.website>
* Provide close2proc function to prevent tcl9 from crashing.
Tcl 9 does not test if the close2Proc function pointer is non-null,
but calls it unconditionally:
https://github.com/tcltk/tcl/blob/core-9-0-3/generic/tclIO.c#L384
So we need to provide a non-null function pointer for our code
to not crash with Tcl9.
Use the same implementation as the previous close channel
had.
Signed-off-by: Henner Zeller <h.zeller@acm.org>
* Use non-deprecated trace add variable syntax.
In modern tcl, `trace variable` is now i`trace add variable`,
and `"rw"` should be spelled out as `{read write}`
There were backwards compatible forms in Tcl 8.x but now loudly
complains in Tcl 9
Signed-off-by: Henner Zeller <h.zeller@acm.org>
* Use `Tcl_Size` for all tcl functions returning sizes.
This is the type the Tcl-API provides in its prototypes and
starting from Tcl9 this typedef actually changes from `int` to `long`,
so will no longer compile when passing an `int*`.
So whenever we get a return value of this type, use the
correct typedef to declare the variable. This makes it forward and
backward compatible.
Signed-off-by: Henner Zeller <h.zeller@acm.org>
* Address review comments: compare with `read`/`write` not `r`, `w`
Signed-off-by: Henner Zeller <h.zeller@acm.org>
---------
Signed-off-by: Henner Zeller <h.zeller@acm.org>
OpenROAD regression runs 7600+ tests in a shared environment where
clock definitions leak between tests. Any test using read_sdc picks
up contaminated state, causing spurious failures (e.g., clk2 period
15 vs 20). Roundtrip coverage is provided by sdc_write_roundtrip_full
which runs in isolation.
Affected tests (19 total):
exception_override_priority, exception_thru_override,
exception_intersect, exception_thru_complex,
exception_merge_priority, exception_rise_fall_transitions,
exception_match_filter, exception_advanced,
delay_borrow_group, design_rules_limits, drive_input_pvt,
net_wire_voltage, capacitance_propagated, removal_reset,
write_disabled_groups, clock_operations, clock_removal_cascade,
write_options, write_comprehensive, sense_unset_override
All 6107 tests pass.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
The read_sdc roundtrip section fails in OpenROAD regression because
the shared test environment leaks clock definitions from other tests
(clk2 period 15 vs 20). Roundtrip coverage is already provided by
sdc_write_roundtrip_full which runs in an isolated context.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
Upstream added bias pin type recognition, changing VNB/VPB pin
direction from "unknown" to "bias" in liberty output. Update 9
golden .ok files to match.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>