SDC: Remove Clocks class from get_clocks

Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
diff --git a/sdc-plugin/sdc.cc b/sdc-plugin/sdc.cc
index 00692be..b66a287 100644
--- a/sdc-plugin/sdc.cc
+++ b/sdc-plugin/sdc.cc
@@ -184,8 +184,8 @@
 };
 
 struct GetClocksCmd : public Pass {
-    GetClocksCmd(Clocks& clocks)
-        : Pass("get_clocks", "Create clock object"), clocks_(clocks) {}
+    GetClocksCmd()
+        : Pass("get_clocks", "Create clock object") {}
 
     void help() override {
 	log("\n");
@@ -195,22 +195,24 @@
 	log("\n");
     }
 
-    void execute(__attribute__((unused)) std::vector<std::string> args,
-                 __attribute__((unused)) RTLIL::Design* design) override {
-	std::vector<std::string> clock_names(clocks_.GetClockNames());
-	if (clock_names.size() == 0) {
+    void execute(std::vector<std::string> args,
+                 RTLIL::Design* design) override {
+	if (args.size() > 1) {
+	    log_warning("Command doesn't support arguments, so they will be ignored.\n");
+	}
+	std::vector<RTLIL::Wire*> clock_wires(Clocks::GetClocks(design));
+	if (clock_wires.size() == 0) {
 	    log_warning("No clocks found in design\n");
 	}
 	Tcl_Interp* interp = yosys_get_tcl_interp();
 	Tcl_Obj* tcl_list = Tcl_NewListObj(0, NULL);
-	for (auto name : clock_names) {
-	    Tcl_Obj* name_obj = Tcl_NewStringObj(name.c_str(), name.size());
+	for (auto wire : clock_wires) {
+	    const char* name = RTLIL::id2cstr(wire->name);
+	    Tcl_Obj* name_obj = Tcl_NewStringObj(name, -1);
 	    Tcl_ListObjAppendElement(interp, tcl_list, name_obj);
 	}
 	Tcl_SetObjResult(interp, tcl_list);
     }
-
-    Clocks& clocks_;
 };
 
 struct PropagateClocksCmd : public Pass {
@@ -253,7 +255,6 @@
     SdcPlugin()
         : write_sdc_cmd_(clocks_, sdc_writer_),
           create_clock_cmd_(clocks_),
-          get_clocks_cmd_(clocks_),
           propagate_clocks_cmd_(clocks_),
           set_false_path_cmd_(sdc_writer_),
           set_max_delay_cmd_(sdc_writer_),