diff --git a/include/wasm.hh b/include/wasm.hh index 024f834..f5ec60b 100644 --- a/include/wasm.hh +++ b/include/wasm.hh @@ -111,13 +111,8 @@ class vec { size_t size_; std::unique_ptr data_; -#ifdef DEBUG void make_data(); void free_data(); -#else - void make_data() {} - void free_data() {} -#endif vec(size_t size) : vec(size, size ? new(std::nothrow) T[size] : nullptr) { make_data(); diff --git a/src/wasm-v8.cc b/src/wasm-v8.cc index c46ff09..84989c9 100644 --- a/src/wasm-v8.cc +++ b/src/wasm-v8.cc @@ -210,6 +210,14 @@ Stats stats; if (data_) stats.free(Stats::STAT, data_.get(), Stats::VEC); \ } +#else + +#define DEFINE_VEC(type, STAT) \ + template<> void vec::make_data() {} \ + template<> void vec::free_data() {} + +#endif // #ifdef DEBUG + DEFINE_VEC(byte_t, BYTE) DEFINE_VEC(Frame*, FRAME) DEFINE_VEC(ValType*, VALTYPE) @@ -231,8 +239,6 @@ DEFINE_VEC(Memory*, MEMORY) DEFINE_VEC(Extern*, EXTERN) DEFINE_VEC(Val, VAL) -#endif // #ifdef DEBUG - /////////////////////////////////////////////////////////////////////////////// // Runtime Environment