diff options
Diffstat (limited to 'src/stateless/cp/trex_stream.cpp')
-rw-r--r-- | src/stateless/cp/trex_stream.cpp | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/src/stateless/cp/trex_stream.cpp b/src/stateless/cp/trex_stream.cpp index 02f43a3a..976cfa07 100644 --- a/src/stateless/cp/trex_stream.cpp +++ b/src/stateless/cp/trex_stream.cpp @@ -54,32 +54,19 @@ std::string TrexStream::get_stream_type_str(stream_type_t stream_type){ void -TrexStream::compile() { +TrexStream::vm_compile() { /* in case there are no instructions - nothing to do */ if (m_vm.is_vm_empty()) { - m_has_vm = false; return; } - m_has_vm = true; + /* compile */ + m_vm.compile(m_pkt.len); - m_vm.set_packet_size(m_pkt.len); + /* create DP object */ + m_vm_dp = m_vm.generate_dp_object(); - m_vm.compile(); - - #if 0 - m_vm.Dump(stdout); - #endif - - m_vm_dp = m_vm.cloneAsVmDp(); - - /* calc m_vm_prefix_size which is the size of the writable packet */ - uint16_t max_pkt_offset = m_vm_dp->get_max_packet_update_offset(); - uint16_t pkt_size = m_pkt.len; - - /* calculate the mbuf size that we should allocate */ - m_vm_prefix_size = calc_writable_mbuf_size(max_pkt_offset, pkt_size); } @@ -133,8 +120,6 @@ TrexStream::TrexStream(uint8_t type, m_pkt.binary = NULL; m_pkt.len = 0; - m_has_vm = false; - m_vm_prefix_size = 0; m_rx_check.m_enable = false; @@ -150,9 +135,9 @@ TrexStream::~TrexStream() { if (m_pkt.binary) { delete [] m_pkt.binary; } - if ( m_vm_dp ){ - delete m_vm_dp; - m_vm_dp=NULL; + if (m_vm_dp){ + delete m_vm_dp; + m_vm_dp = NULL; } } |