daily update on 20230724 by nitload youmu, bigM128map added
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
#include "GLenv/include/glad/glad.h"
|
||||
#include "GLenv/include/GLFW/glfw3.h"
|
||||
#include "StgSharpGraphic.h"
|
||||
#include "SSGinternal.h"
|
||||
#include <stdio.h>
|
||||
|
||||
#include <xmmintrin.h>
|
||||
|
||||
|
||||
STGSHARPGRAPHIC_API float* InitBigM128Map(int floatCount)
|
||||
{
|
||||
float* BigMapBeginPtr = malloc(floatCount*sizeof(float));
|
||||
return BigMapBeginPtr;
|
||||
}
|
||||
|
||||
STGSHARPGRAPHIC_API void DeinitBigM128Map(float* mapPtr)
|
||||
{
|
||||
free(mapPtr);
|
||||
}
|
||||
|
||||
STGSHARPGRAPHIC_API __m128 VecAddVec(__m128 vec1, __m128 vec2)
|
||||
{
|
||||
|
||||
return _mm_add_ps(vec1, vec2);
|
||||
|
||||
}
|
||||
|
||||
STGSHARPGRAPHIC_API __m128 VecSubVec(__m128 vec1, __m128 vec2)
|
||||
{
|
||||
|
||||
return _mm_sub_ps(vec1, vec2);
|
||||
}
|
||||
|
||||
STGSHARPGRAPHIC_API float VecMulVec(__m128 vec1, __m128 vec2)
|
||||
{
|
||||
__m128 cache = _mm_mul_ps(vec1, vec2);
|
||||
|
||||
float ret = cache.m128_f32[0] +
|
||||
cache.m128_f32[1] +
|
||||
cache.m128_f32[2] +
|
||||
cache.m128_f32[3];
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user