|
1 | 1 | #ifndef CLC_RELATIONAL |
2 | 2 | #define CLC_RELATIONAL |
3 | 3 |
|
4 | | -#include <as_type.h> |
| 4 | +#include <clc/clc_as_type.h> |
5 | 5 |
|
6 | 6 | /* |
7 | 7 | * Contains relational macros that have to return 1 for scalar and -1 for vector |
|
16 | 16 |
|
17 | 17 | #define _CLC_DEFINE_RELATIONAL_UNARY_VEC2(RET_TYPE, FUNCTION, ARG_TYPE) \ |
18 | 18 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG_TYPE x) { \ |
19 | | - return as_##RET_TYPE( \ |
| 19 | + return __clc_as_##RET_TYPE( \ |
20 | 20 | ((RET_TYPE){FUNCTION(x.lo), FUNCTION(x.hi)} != (RET_TYPE)0)); \ |
21 | 21 | } |
22 | 22 |
|
23 | 23 | #define _CLC_DEFINE_RELATIONAL_UNARY_VEC3(RET_TYPE, FUNCTION, ARG_TYPE) \ |
24 | 24 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG_TYPE x) { \ |
25 | | - return as_##RET_TYPE(((RET_TYPE){FUNCTION(x.s0), FUNCTION(x.s1), \ |
| 25 | + return __clc_as_##RET_TYPE(((RET_TYPE){FUNCTION(x.s0), FUNCTION(x.s1), \ |
26 | 26 | FUNCTION(x.s2)} != (RET_TYPE)0)); \ |
27 | 27 | } |
28 | 28 |
|
29 | 29 | #define _CLC_DEFINE_RELATIONAL_UNARY_VEC4(RET_TYPE, FUNCTION, ARG_TYPE) \ |
30 | 30 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG_TYPE x) { \ |
31 | | - return as_##RET_TYPE( \ |
| 31 | + return __clc_as_##RET_TYPE( \ |
32 | 32 | ((RET_TYPE){FUNCTION(x.s0), FUNCTION(x.s1), FUNCTION(x.s2), \ |
33 | 33 | FUNCTION(x.s3)} != (RET_TYPE)0)); \ |
34 | 34 | } |
35 | 35 |
|
36 | 36 | #define _CLC_DEFINE_RELATIONAL_UNARY_VEC8(RET_TYPE, FUNCTION, ARG_TYPE) \ |
37 | 37 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG_TYPE x) { \ |
38 | | - return as_##RET_TYPE( \ |
| 38 | + return __clc_as_##RET_TYPE( \ |
39 | 39 | ((RET_TYPE){FUNCTION(x.s0), FUNCTION(x.s1), FUNCTION(x.s2), \ |
40 | 40 | FUNCTION(x.s3), FUNCTION(x.s4), FUNCTION(x.s5), \ |
41 | 41 | FUNCTION(x.s6), FUNCTION(x.s7)} != (RET_TYPE)0)); \ |
42 | 42 | } |
43 | 43 |
|
44 | 44 | #define _CLC_DEFINE_RELATIONAL_UNARY_VEC16(RET_TYPE, FUNCTION, ARG_TYPE) \ |
45 | 45 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG_TYPE x) { \ |
46 | | - return as_##RET_TYPE( \ |
| 46 | + return __clc_as_##RET_TYPE( \ |
47 | 47 | ((RET_TYPE){FUNCTION(x.s0), FUNCTION(x.s1), FUNCTION(x.s2), \ |
48 | 48 | FUNCTION(x.s3), FUNCTION(x.s4), FUNCTION(x.s5), \ |
49 | 49 | FUNCTION(x.s6), FUNCTION(x.s7), FUNCTION(x.s8), \ |
|
74 | 74 | #define _CLC_DEFINE_RELATIONAL_BINARY_VEC(RET_TYPE, FUNCTION, ARG0_TYPE, \ |
75 | 75 | ARG1_TYPE) \ |
76 | 76 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG0_TYPE x, ARG1_TYPE y) { \ |
77 | | - return as_##RET_TYPE( \ |
| 77 | + return __clc_as_##RET_TYPE( \ |
78 | 78 | (RET_TYPE)((RET_TYPE){FUNCTION(x.lo, y.lo), FUNCTION(x.hi, y.hi)} != \ |
79 | 79 | (RET_TYPE)0)); \ |
80 | 80 | } |
81 | 81 |
|
82 | 82 | #define _CLC_DEFINE_RELATIONAL_BINARY_VEC2(RET_TYPE, FUNCTION, ARG0_TYPE, \ |
83 | 83 | ARG1_TYPE) \ |
84 | 84 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG0_TYPE x, ARG1_TYPE y) { \ |
85 | | - return as_##RET_TYPE(((RET_TYPE){FUNCTION(x.lo, y.lo), \ |
| 85 | + return __clc_as_##RET_TYPE(((RET_TYPE){FUNCTION(x.lo, y.lo), \ |
86 | 86 | FUNCTION(x.hi, y.hi)} != (RET_TYPE)0)); \ |
87 | 87 | } |
88 | 88 |
|
89 | 89 | #define _CLC_DEFINE_RELATIONAL_BINARY_VEC3(RET_TYPE, FUNCTION, ARG0_TYPE, \ |
90 | 90 | ARG1_TYPE) \ |
91 | 91 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG0_TYPE x, ARG1_TYPE y) { \ |
92 | | - return as_##RET_TYPE( \ |
| 92 | + return __clc_as_##RET_TYPE( \ |
93 | 93 | ((RET_TYPE){FUNCTION(x.s0, y.s0), FUNCTION(x.s1, y.s1), \ |
94 | 94 | FUNCTION(x.s2, y.s2)} != (RET_TYPE)0)); \ |
95 | 95 | } |
96 | 96 |
|
97 | 97 | #define _CLC_DEFINE_RELATIONAL_BINARY_VEC4(RET_TYPE, FUNCTION, ARG0_TYPE, \ |
98 | 98 | ARG1_TYPE) \ |
99 | 99 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG0_TYPE x, ARG1_TYPE y) { \ |
100 | | - return as_##RET_TYPE( \ |
| 100 | + return __clc_as_##RET_TYPE( \ |
101 | 101 | ((RET_TYPE){FUNCTION(x.s0, y.s0), FUNCTION(x.s1, y.s1), \ |
102 | 102 | FUNCTION(x.s2, y.s2), \ |
103 | 103 | FUNCTION(x.s3, y.s3)} != (RET_TYPE)0)); \ |
|
106 | 106 | #define _CLC_DEFINE_RELATIONAL_BINARY_VEC8(RET_TYPE, FUNCTION, ARG0_TYPE, \ |
107 | 107 | ARG1_TYPE) \ |
108 | 108 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG0_TYPE x, ARG1_TYPE y) { \ |
109 | | - return as_##RET_TYPE( \ |
| 109 | + return __clc_as_##RET_TYPE( \ |
110 | 110 | ((RET_TYPE){ \ |
111 | 111 | FUNCTION(x.s0, y.s0), FUNCTION(x.s1, y.s1), FUNCTION(x.s2, y.s2), \ |
112 | 112 | FUNCTION(x.s3, y.s3), FUNCTION(x.s4, y.s4), FUNCTION(x.s5, y.s5), \ |
|
116 | 116 | #define _CLC_DEFINE_RELATIONAL_BINARY_VEC16(RET_TYPE, FUNCTION, ARG0_TYPE, \ |
117 | 117 | ARG1_TYPE) \ |
118 | 118 | _CLC_DEF _CLC_OVERLOAD RET_TYPE FUNCTION(ARG0_TYPE x, ARG1_TYPE y) { \ |
119 | | - return as_##RET_TYPE( \ |
| 119 | + return __clc_as_##RET_TYPE( \ |
120 | 120 | ((RET_TYPE){ \ |
121 | 121 | FUNCTION(x.s0, y.s0), FUNCTION(x.s1, y.s1), FUNCTION(x.s2, y.s2), \ |
122 | 122 | FUNCTION(x.s3, y.s3), FUNCTION(x.s4, y.s4), FUNCTION(x.s5, y.s5), \ |
|
0 commit comments