|
|
|
@ -152,8 +152,8 @@ d_m3CommutativeOpMacro(RES, REG, TYPE,NAME, OP, ##__VA_ARGS__)
|
|
|
|
|
#define d_m3CommutativeOpMacro_f(TYPE, NAME, MACRO, ...) d_m3CommutativeOpMacro (_fp0, _fp0, TYPE, NAME, MACRO, ##__VA_ARGS__)
|
|
|
|
|
#define d_m3OpMacro_f(TYPE, NAME, MACRO, ...) d_m3OpMacro (_fp0, _fp0, TYPE, NAME, MACRO, ##__VA_ARGS__)
|
|
|
|
|
|
|
|
|
|
#define M3_FUNC(RES, A, B, OP) (RES) = OP((A), (B)) // Accept functions: res = OP(a,b)
|
|
|
|
|
#define M3_OPER(RES, A, B, OP) (RES) = ((A) OP (B)) // Accept operators: res = a OP b
|
|
|
|
|
#define M3_FUNC(RES, A, B, OP) (RES) = OP((A), (B)) // Accept functions: res = OP(a,b)
|
|
|
|
|
#define M3_OPER(RES, A, B, OP) (RES) = ((A) OP (B)) // Accept operators: res = a OP b
|
|
|
|
|
|
|
|
|
|
#define d_m3CommutativeOpFunc_i(TYPE, NAME, OP) d_m3CommutativeOpMacro_i (TYPE, NAME, M3_FUNC, OP)
|
|
|
|
|
#define d_m3OpFunc_i(TYPE, NAME, OP) d_m3OpMacro_i (TYPE, NAME, M3_FUNC, OP)
|
|
|
|
@ -196,10 +196,17 @@ d_m3CompareOp_f (f32, LessThanOrEqual, <=) d_m3CompareOp_f (f64, LessTh
|
|
|
|
|
d_m3CompareOp_f (f32, GreaterThanOrEqual, >=) d_m3CompareOp_f (f64, GreaterThanOrEqual, >=)
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
d_m3CommutativeOp_i (i32, Add, +) d_m3CommutativeOp_i (i64, Add, +)
|
|
|
|
|
d_m3CommutativeOp_i (i32, Multiply, *) d_m3CommutativeOp_i (i64, Multiply, *)
|
|
|
|
|
#define OP_ADD_32(A,B) (i32)((u32)(A) + (u32)(B))
|
|
|
|
|
#define OP_ADD_64(A,B) (i64)((u64)(A) + (u64)(B))
|
|
|
|
|
#define OP_SUB_32(A,B) (i32)((u32)(A) - (u32)(B))
|
|
|
|
|
#define OP_SUB_64(A,B) (i64)((u64)(A) - (u64)(B))
|
|
|
|
|
#define OP_MUL_32(A,B) (i32)((u32)(A) * (u32)(B))
|
|
|
|
|
#define OP_MUL_64(A,B) (i64)((u64)(A) * (u64)(B))
|
|
|
|
|
|
|
|
|
|
d_m3Op_i (i32, Subtract, -) d_m3Op_i (i64, Subtract, -)
|
|
|
|
|
d_m3CommutativeOpFunc_i (i32, Add, OP_ADD_32) d_m3CommutativeOpFunc_i (i64, Add, OP_ADD_64)
|
|
|
|
|
d_m3CommutativeOpFunc_i (i32, Multiply, OP_MUL_32) d_m3CommutativeOpFunc_i (i64, Multiply, OP_MUL_64)
|
|
|
|
|
|
|
|
|
|
d_m3OpFunc_i (i32, Subtract, OP_SUB_32) d_m3OpFunc_i (i64, Subtract, OP_SUB_64)
|
|
|
|
|
|
|
|
|
|
#define OP_SHL_32(X,N) ((X) << ((u32)(N) % 32))
|
|
|
|
|
#define OP_SHL_64(X,N) ((X) << ((u64)(N) % 64))
|
|
|
|
|