32 #include "NE10_types.h"
37 ne10_result_t ne10_mulcmatvec_cm2x2f_v2f_c (
ne10_vec2f_t * dst,
const ne10_mat2x2f_t * cst,
ne10_vec2f_t * src, ne10_uint32_t count)
44 NE10_CMATVEC_OPERATION_X_C
46 dst[ itr ].x = A1 * src[ itr ].x + C1 * src[ itr ].y;
47 dst[ itr ].y = B1 * src[ itr ].x + D1 * src[ itr ].y;
56 ne10_result_t ne10_mulcmatvec_cm3x3f_v3f_c (
ne10_vec3f_t * dst,
const ne10_mat3x3f_t * cst,
ne10_vec3f_t * src, ne10_uint32_t count)
68 NE10_CMATVEC_OPERATION_X_C
70 dst[ itr ].x = A1 * src[ itr ].x + D1 * src[ itr ].y + G1 * src[ itr ].z;
71 dst[ itr ].y = B1 * src[ itr ].x + E1 * src[ itr ].y + H1 * src[ itr ].z;
72 dst[ itr ].z = C1 * src[ itr ].x + F1 * src[ itr ].y + I1 * src[ itr ].z;
86 extern ne10_result_t ne10_mulcmatvec_cm4x4f_v4f_c (
ne10_vec4f_t * dst,
const ne10_mat4x4f_t * cst,
ne10_vec4f_t * src, ne10_uint32_t count)
100 #define M1 cst->c4.r1
101 #define N1 cst->c4.r2
102 #define O1 cst->c4.r3
103 #define P1 cst->c4.r4
105 NE10_CMATVEC_OPERATION_X_C
107 dst[ itr ].x = A1 * src[ itr ].x + E1 * src[ itr ].y + I1 * src[ itr ].z + M1 * src[ itr ].w;
108 dst[ itr ].y = B1 * src[ itr ].x + F1 * src[ itr ].y + J1 * src[ itr ].z + N1 * src[ itr ].w;
109 dst[ itr ].z = C1 * src[ itr ].x + G1 * src[ itr ].y + K1 * src[ itr ].z + O1 * src[ itr ].w;
110 dst[ itr ].w = D1 * src[ itr ].x + H1 * src[ itr ].y + L1 * src[ itr ].z + P1 * src[ itr ].w;