LValue Output::load16ZeroExt32(TypedPointer pointer) { LValue load = m_block->appendNew<B3::MemoryValue>(m_proc, B3::Load16Z, B3::Int32, origin(), pointer.value()); pointer.heap().decorateInstruction(load, *m_heaps); return load; }
LValue Output::loadFloatToDouble(TypedPointer pointer) { LValue load = m_block->appendNew<B3::MemoryValue>(m_proc, B3::LoadFloat, B3::Double, origin(), pointer.value()); pointer.heap().decorateInstruction(load, *m_heaps); return load; }
void Output::store(LValue value, TypedPointer pointer) { LValue store = m_block->appendNew<B3::MemoryValue>(m_proc, B3::Store, origin(), value, pointer.value()); pointer.heap().decorateInstruction(store, *m_heaps); }
void Output::store32As16(LValue value, TypedPointer pointer) { LValue store = m_block->appendNew<MemoryValue>(m_proc, Store16, origin(), value, pointer.value()); m_heaps->decorateMemory(pointer.heap(), store); }
LValue Output::load16ZeroExt32(TypedPointer pointer) { LValue load = m_block->appendNew<MemoryValue>(m_proc, Load16Z, Int32, origin(), pointer.value()); m_heaps->decorateMemory(pointer.heap(), load); return load; }
LValue Output::load(TypedPointer pointer, LType type) { LValue load = m_block->appendNew<MemoryValue>(m_proc, Load, type, origin(), pointer.value()); m_heaps->decorateMemory(pointer.heap(), load); return load; }
LValue Output::load(TypedPointer pointer, LType type) { LValue load = m_block->appendNew<MemoryValue>(m_proc, Load, type, origin(), pointer.value()); pointer.heap().decorateInstruction(load, *m_heaps); return load; }