Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
vp.cpp File Reference
#include "vp.h"
#include "vector2.h"
#include "vector3.h"
#include "vector4.h"
#include "matrix3d.h"
#include "matrix4.h"
#include "wwdebug.h"
#include "cpudetect.h"
#include <memory.h>

Go to the source code of this file.

Macros

#define SHUFFLE(x, y, z, w)
 
#define BROADCAST(XMM, INDEX)
 
#define TRANSPOSE(BX, BY, BZ, BW, TV)
 

Macro Definition Documentation

◆ BROADCAST

#define BROADCAST ( XMM,
INDEX )
Value:
__asm shufps XMM,XMM,(((INDEX)&3)<< 6|((INDEX)&3)<<4|((INDEX)&3)<< 2|((INDEX)&3))
LOCALEFILE_INDEXCHUNK INDEX
Definition locale.cpp:84

Definition at line 49 of file vp.cpp.

◆ SHUFFLE

#define SHUFFLE ( x,
y,
z,
w )
Value:
(((x)&3)<< 6|((y)&3)<<4|((z)&3)<< 2|((w)&3))

Definition at line 48 of file vp.cpp.

◆ TRANSPOSE

#define TRANSPOSE ( BX,
BY,
BZ,
BW,
TV )
Value:
__asm movaps TV,BZ \
__asm unpcklps BZ,BW \
__asm unpckhps TV,BW \
__asm movaps BW,BX \
__asm unpcklps BX,BY \
__asm unpckhps BW,BY \
__asm movaps BY,BX \
__asm shufps BX,BZ,SHUFFLE(1, 0, 1, 0) \
__asm shufps BY,BZ,SHUFFLE(3, 2, 3, 2) \
__asm movaps BZ,BW \
__asm shufps BZ,TV,SHUFFLE(1, 0, 1, 0) \
__asm shufps BW,TV,SHUFFLE(3, 2, 3, 2)
#define SHUFFLE(x, y, z, w)
Definition vp.cpp:48

Definition at line 51 of file vp.cpp.