History

Move some basic offset functions to header files for inlining ease Replace enum_pointer_field functions with custom implementations - GC now has custom implementation - other implementations use template<> version Fix misuse of shared_ptr<type_descriptor_t> in various built-in types Observed 5 - 8 % improvement in GC for compiler scenario.

arr committed 9 years ago

Commit cd2748b1 parent 3dd1c8210 files · +115 −160Browse files

Showing the changes to src/vm/channel.cpp (1 of 10 files). Show all

Unified · Split

src/vm/channel.cpp+2−2
@@ -45,13 +45,13 @@ vm_channel_t::vm_channel_t( · 44 unmodified lines
4545 , _data_buffer_head{ 0 }
4646 , _data_buffer_count{ 0 }
4747 , _data_transfer{ transfer }
48− , _data_type{ td }
48+ , _data_type{ std::move(td) }
4949 {
5050 if (buffer_len < 0)
5151 throw out_of_range_memory{};
5252
5353 if (buffer_len > 0)
54− _data_buffer = new vm_array_t{ td, buffer_len };
54+ _data_buffer = new vm_array_t{ _data_type, buffer_len };
5555
5656 disvm::debug::log_msg(component_trace_t::memory, log_level_t::debug, "init: vm channel");
5757 }