Publishing 2019 R1 content
[platform/upstream/dldt.git] / inference-engine / thirdparty / mkl-dnn / src / cpu / jit_uni_pooling.hpp
index 520ab12..25d3d79 100644 (file)
@@ -91,25 +91,25 @@ struct jit_uni_pooling_fwd_t: public cpu_primitive_t {
         }
     };
 
-    jit_uni_pooling_fwd_t(const pd_t *pd, const input_vector &inputs,
+    jit_uni_pooling_fwd_t(const pd_t *apd, const input_vector &inputs,
             const output_vector &outputs)
-        : cpu_primitive_t(&conf_, inputs, outputs), conf_(*pd)
-    { kernel_ = new jit_uni_pool_kernel_f32<isa>(conf_.jpp_); }
+        : cpu_primitive_t(apd, inputs, outputs)
+    { kernel_ = new jit_uni_pool_kernel_f32<isa>(pd()->jpp_); }
 
     ~jit_uni_pooling_fwd_t() { delete kernel_; }
 
     typedef typename prec_traits<data_type::f32>::type data_t;
 
-    virtual void execute(event_t *e) {
-        if (conf_.jpp_.ndims == 5) execute_forward_3d();
+    virtual void execute(event_t *e) const {
+        if (pd()->jpp_.ndims == 5) execute_forward_3d();
         else execute_forward();
         e->set_state(event_t::ready);
     }
 
 private:
-    void execute_forward();
-    void execute_forward_3d();
-    pd_t conf_;
+    void execute_forward() const;
+    void execute_forward_3d() const;
+    const pd_t *pd() const { return (const pd_t *)primitive_t::pd(); }
     jit_uni_pool_kernel_f32<isa> *kernel_;
 };
 
@@ -175,25 +175,25 @@ struct jit_uni_pooling_bwd_t: public cpu_primitive_t {
         }
     };
 
-    jit_uni_pooling_bwd_t(const pd_t *pd, const input_vector &inputs,
+    jit_uni_pooling_bwd_t(const pd_t *apd, const input_vector &inputs,
             const output_vector &outputs)
-        : cpu_primitive_t(&conf_, inputs, outputs), conf_(*pd)
-    { kernel_ = new jit_uni_pool_kernel_f32<isa>(conf_.jpp_); }
+        : cpu_primitive_t(apd, inputs, outputs)
+    { kernel_ = new jit_uni_pool_kernel_f32<isa>(pd()->jpp_); }
 
     ~jit_uni_pooling_bwd_t() { delete kernel_; }
 
     typedef typename prec_traits<data_type::f32>::type data_t;
 
-    virtual void execute(event_t *e) {
-        if (conf_.jpp_.ndims == 5) execute_backward_3d();
+    virtual void execute(event_t *e) const {
+        if (pd()->jpp_.ndims == 5) execute_backward_3d();
         else execute_backward();
         e->set_state(event_t::ready);
     }
 
 private:
-    void execute_backward();
-    void execute_backward_3d();
-    pd_t conf_;
+    void execute_backward() const;
+    void execute_backward_3d() const;
+    const pd_t *pd() const { return (const pd_t *)primitive_t::pd(); }
     jit_uni_pool_kernel_f32<isa> *kernel_;
 };