diff options
Diffstat (limited to 'source/slang/vm.cpp')
| -rw-r--r-- | source/slang/vm.cpp | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/source/slang/vm.cpp b/source/slang/vm.cpp index fa59a741b..0f79c763b 100644 --- a/source/slang/vm.cpp +++ b/source/slang/vm.cpp @@ -846,72 +846,6 @@ void resumeThread( } break; - case kIROp_BufferLoad: - { - VMType type = decodeType(frame, &ip); - UInt argCount = decodeUInt(&ip); - void* argPtrs[16] = { 0 }; - for( UInt aa = 0; aa < argCount; ++aa ) - { - void* argPtr = decodeOperandPtr<void>(frame, &ip); - argPtrs[aa] = argPtr; - } - - void* dest = decodeOperandPtr<void>(frame, &ip); - - char* bufferData = *(char**)argPtrs[0]; - uint32_t index = *(uint32_t*)argPtrs[1]; - - auto size = type.getSize(); - char* elementData = bufferData + index*size; - memcpy(dest, elementData, size); - } - break; - - case kIROp_BufferStore: - { - VMType resultType = decodeType(frame, &ip); - /*UInt argCount = */decodeUInt(&ip); - - char* bufferData = decodeOperand<char*>(frame, &ip); - uint32_t index = decodeOperand<uint32_t>(frame, &ip); - - auto srcPtrAndType = decodeOperandPtrAndType(frame, &ip); - void* srcPtr = srcPtrAndType.ptr; - VMType type = srcPtrAndType.type; - - auto size = type.getSize(); - char* elementData = bufferData + index*size; - memcpy(elementData, srcPtr, size); - } - break; - - case kIROp_BufferElementRef: - { - VMType ptrType = decodeType(frame, &ip); - VMType type = ((VMPtrTypeImpl*)ptrType.getImpl())->base; - - UInt argCount = decodeUInt(&ip); - void* argPtrs[16] = { 0 }; - for( UInt aa = 0; aa < argCount; ++aa ) - { - void* argPtr = decodeOperandPtr<void>(frame, &ip); - argPtrs[aa] = argPtr; - } - - void* dest = decodeOperandPtr<void>(frame, &ip); - - char* bufferData = *(char**)argPtrs[0]; - uint32_t index = *(uint32_t*)argPtrs[1]; - - auto size = type.getSize(); - char* elementData = bufferData + index*size; - - *(void**)dest = elementData; - } - break; - - case kIROp_Call: { VMType type = decodeType(frame, &ip); |
