SDC: Perform buffer propagation after clock divider propagation

Signed-off-by: Tomasz Michalak <tmichalak@antmicro.com>
diff --git a/sdc-plugin/clocks.cc b/sdc-plugin/clocks.cc
index 82944a4..d634bb7 100644
--- a/sdc-plugin/clocks.cc
+++ b/sdc-plugin/clocks.cc
@@ -141,6 +141,7 @@
 		log("PLL clock: %s\n", pll_clock.Name().c_str());
 #endif
 		AddClock(pll_clock);
+		PropagateThroughBuffer(pass, pll_clock, Bufg());
 	    }
 	}
     }
@@ -149,7 +150,7 @@
 #endif
 }
 
-void Clocks::PropagateThroughBuffer(BufferPropagation* pass, Clock& clock,
+void Clocks::PropagateThroughBuffer(Propagation* pass, Clock& clock,
                                     Buffer buffer) {
     auto clock_wires = clock.GetClockWires();
     for (auto clock_wire : clock_wires) {
diff --git a/sdc-plugin/clocks.h b/sdc-plugin/clocks.h
index df60b6d..f4b0e53 100644
--- a/sdc-plugin/clocks.h
+++ b/sdc-plugin/clocks.h
@@ -28,6 +28,7 @@
 class NaturalPropagation;
 class BufferPropagation;
 class ClockDividerPropagation;
+class Propagation;
 
 class Clock {
    public:
@@ -76,7 +77,7 @@
 
    private:
     std::vector<Clock> clocks_;
-    void PropagateThroughBuffer(BufferPropagation* pass, Clock& clock,
+    void PropagateThroughBuffer(Propagation* pass, Clock& clock,
                                 Buffer buffer);
 };