Closed akashlevy closed 3 months ago
All right, ready for review. Please let me know how to proceed regarding the error codes.
All revisions made. Also added error codes into messages.txt
, let me know if it's ok
I updated your recently-added etc/FindMessages.tcl
to support the filter_objs
TCL expressions
Creating a draft PR for this. Basic goal is to add
-filter
to all SDCget_*
commands to match the behavior of commercial STA tools. I'll be following DRY principle as much as possible in my commits.Need some input: how to deal with error codes? There's no room to squeeze in new codes, so right now I'm adding new ones by adding 2000 to the previous error code. Not sure if you have a preferred way of adding new codes into the mix. Another option is to remove some codes and have the
filter_objs
function have a single error code no matter which object type is being filtered.Tasks:
filter_objs
TCL functionfilter_*
regexp variables and instead move these inside offilter_objs
-filter
forget_cells
filter_objs
filter_insts1
-filter
toget_clocks
[-filter expr]
to header-filter
to key flag parsingfilter_clocks
functionClockSeq *
)-filter
toget_lib_cells
[-filter expr]
to header-filter
to key flag parsingfilter_lib_cells
functionLibertyCellSeq *
)-filter
toget_lib_pins
[-filter expr]
to header-filter
to key flag parsingfilter_lib_cells
functionLibertyPortSeq *
)-filter
toget_libs
[-filter expr]
to header-filter
to key flag parsingfilter_liberty_libraries
functionLibertyLibrarySeq
, inLibertyLibrarySeq *
)-filter
toget_nets
[-filter expr]
to header-filter
to key flag parsingfilter_nets
functionNetSeq *
)-filter
forget_pins
filter_objs
filter_pins1
-filter
forget_ports
filter_objs
filter_ports1
-filter
forget_timing_edges
filter_objs
filter_timing_arcs1
-filter
flag withasap7
collateralget_cells
get_clocks
get_lib_cells
get_lib_pins
get_libs
get_nets
get_pins
get_ports
-filter
flagsget_clocks
get_lib_cells
get_lib_pins
get_libs
get_nets
Sdc.tcl
messages.txt