Browse Source

Clean up LazyFunction initialization in Array helper.

cl-refactor
Paweł Bylica 10 years ago
parent
commit
864a3540a4
  1. 12
      evmjit/libevmjit/Array.cpp
  2. 8
      evmjit/libevmjit/Array.h

12
evmjit/libevmjit/Array.cpp

@ -217,11 +217,7 @@ llvm::Type* Array::getType()
} }
Array::Array(llvm::IRBuilder<>& _builder, char const* _name) : Array::Array(llvm::IRBuilder<>& _builder, char const* _name) :
CompilerHelper(_builder), CompilerHelper(_builder)
m_pushFunc([this](){ return createArrayPushFunc(); }),
m_setFunc([this](){ return createArraySetFunc(); }),
m_getFunc([this](){ return createArrayGetFunc(); }),
m_freeFunc([this](){ return createFreeFunc(); })
{ {
m_array = m_builder.CreateAlloca(getType(), nullptr, _name); m_array = m_builder.CreateAlloca(getType(), nullptr, _name);
m_builder.CreateStore(llvm::ConstantAggregateZero::get(getType()), m_array); m_builder.CreateStore(llvm::ConstantAggregateZero::get(getType()), m_array);
@ -229,11 +225,7 @@ Array::Array(llvm::IRBuilder<>& _builder, char const* _name) :
Array::Array(llvm::IRBuilder<>& _builder, llvm::Value* _array) : Array::Array(llvm::IRBuilder<>& _builder, llvm::Value* _array) :
CompilerHelper(_builder), CompilerHelper(_builder),
m_array(_array), m_array(_array)
m_pushFunc([this](){ return createArrayPushFunc(); }),
m_setFunc([this](){ return createArraySetFunc(); }),
m_getFunc([this](){ return createArrayGetFunc(); }),
m_freeFunc([this](){ return createFreeFunc(); })
{ {
m_builder.CreateStore(llvm::ConstantAggregateZero::get(getType()), m_array); m_builder.CreateStore(llvm::ConstantAggregateZero::get(getType()), m_array);
} }

8
evmjit/libevmjit/Array.h

@ -59,10 +59,10 @@ private:
llvm::Function* getReallocFunc(); llvm::Function* getReallocFunc();
LazyFunction m_pushFunc = {[this](){ return createArrayPushFunc(); }}; // TODO: If works on MSVC, remove form initialization list LazyFunction m_pushFunc = {[this](){ return createArrayPushFunc(); }}; // TODO: If works on MSVC, remove form initialization list
LazyFunction m_setFunc; LazyFunction m_setFunc = {[this](){ return createArraySetFunc(); }};
LazyFunction m_getPtrFunc = {[this](){ return createGetPtrFunc(); }}; LazyFunction m_getPtrFunc = {[this](){ return createGetPtrFunc(); }};
LazyFunction m_getFunc; LazyFunction m_getFunc = {[this](){ return createArrayGetFunc(); }};
LazyFunction m_freeFunc; LazyFunction m_freeFunc = {[this](){ return createFreeFunc(); }};
LazyFunction m_extendFunc = {[this](){ return createExtendFunc(); }}; LazyFunction m_extendFunc = {[this](){ return createExtendFunc(); }};
LazyFunction m_reallocFunc = {[this](){ return getReallocFunc(); }}; LazyFunction m_reallocFunc = {[this](){ return getReallocFunc(); }};
}; };
@ -70,5 +70,3 @@ private:
} }
} }
} }

Loading…
Cancel
Save