From 4b323096ec688f1623d0a5a784e7441d98b71e3a Mon Sep 17 00:00:00 2001 From: Tillmann Karras Date: Mon, 19 Jan 2015 17:36:24 +0100 Subject: [PATCH] VertexLoader_Position: remove old JIT ideas --- .../VideoCommon/VertexLoader_Position.cpp | 46 ------------------- 1 file changed, 46 deletions(-) diff --git a/Source/Core/VideoCommon/VertexLoader_Position.cpp b/Source/Core/VideoCommon/VertexLoader_Position.cpp index 3313c12b5a..43e56119ea 100644 --- a/Source/Core/VideoCommon/VertexLoader_Position.cpp +++ b/Source/Core/VideoCommon/VertexLoader_Position.cpp @@ -12,52 +12,6 @@ #include "VideoCommon/VertexManagerBase.h" #include "VideoCommon/VideoCommon.h" -// Thoughts on the implementation of a vertex loader compiler. -// g_vertex_manager_write_ptr should definitely be in a register. -// Could load the position scale factor in XMM7, for example. - -// The pointer inside DataReadU8 in another. -// Let's check out Pos_ReadDirect_UByte(). For Byte, replace MOVZX with MOVSX. - -/* -MOVZX(32, R(EAX), MOffset(ESI, 0)); -MOVZX(32, R(EBX), MOffset(ESI, 1)); -MOVZX(32, R(ECX), MOffset(ESI, 2)); -MOVD(XMM0, R(EAX)); -MOVD(XMM1, R(EBX)); -MOVD(XMM2, R(ECX)); -CVTDQ2PS(XMM0, XMM0); -CVTDQ2PS(XMM1, XMM1); -CVTDQ2PS(XMM2, XMM2); -MULSS(XMM0, XMM7); -MULSS(XMM1, XMM7); -MULSS(XMM2, XMM7); -MOVSS(MOffset(EDI, 0), XMM0); -MOVSS(MOffset(EDI, 4), XMM1); -MOVSS(MOffset(EDI, 8), XMM2); - -Alternatively, lookup table: -MOVZX(32, R(EAX), MOffset(ESI, 0)); -MOVZX(32, R(EBX), MOffset(ESI, 1)); -MOVZX(32, R(ECX), MOffset(ESI, 2)); -MOV(32, R(EAX), MComplex(LUTREG, EAX, 4)); -MOV(32, R(EBX), MComplex(LUTREG, EBX, 4)); -MOV(32, R(ECX), MComplex(LUTREG, ECX, 4)); -MOV(MOffset(EDI, 0), XMM0); -MOV(MOffset(EDI, 4), XMM1); -MOV(MOffset(EDI, 8), XMM2); - -SSE4: -PINSRB(XMM0, MOffset(ESI, 0), 0); -PINSRB(XMM0, MOffset(ESI, 1), 4); -PINSRB(XMM0, MOffset(ESI, 2), 8); -CVTDQ2PS(XMM0, XMM0); - -MULPS(XMM0, XMM7); -MOVUPS(MOffset(EDI, 0), XMM0); - - */ - template float PosScale(T val, float scale) {