1 .macro WRAPPER_IMPL_SSE2 callee
25 .macro WRAPPER_IMPL_SSE2_ff callee
28 movaps
%xmm1
, 16(%rsp
)
53 .macro WRAPPER_IMPL_SSE2_fFF callee
71 shufps $
85, %xmm1
, %xmm0
87 shufps $
255, %xmm1
, %xmm1
102 .macro WRAPPER_IMPL_AVX callee
107 vextractf128 $
1, %ymm0
, (%rsp
)
110 vmovaps
%xmm0
, 16(%rsp
)
111 vmovaps
(%rsp
), %xmm0
114 vmovaps
16(%rsp
), %xmm0
115 vinsertf128 $
1, %xmm1
, %ymm0
, %ymm0
120 .macro WRAPPER_IMPL_AVX_ff callee
125 vextractf128 $
1, %ymm0
, 16(%rsp
)
126 vextractf128 $
1, %ymm1
, (%rsp
)
129 vmovaps
%xmm0
, 32(%rsp
)
130 vmovaps
16(%rsp
), %xmm0
131 vmovaps
(%rsp
), %xmm1
134 vmovaps
32(%rsp
), %xmm0
135 vinsertf128 $
1, %xmm1
, %ymm0
, %ymm0
140 .macro WRAPPER_IMPL_AVX_fFF callee
148 vmovaps
%ymm0
, (%rsp
)
150 vmovaps
16(%rsp
), %xmm1
151 vmovaps
%xmm1
, 32(%rsp
)
153 vmovaps
(%rsp
), %xmm0
155 vmovaps
32(%rsp
), %xmm0
159 vmovaps
(%rsp
), %xmm0
160 vmovaps
16(%rsp
), %xmm1
161 vmovaps
%xmm0
, 16(%r13)
162 vmovaps
%xmm1
, 16(%r14)
170 .macro WRAPPER_IMPL_AVX512 callee
175 vmovups
%zmm0
, (%rsp
)
176 vmovupd
(%rsp
), %ymm0
178 vmovupd
%ymm0
, 64(%rsp
)
179 vmovupd
32(%rsp
), %ymm0
181 vmovupd
%ymm0
, 96(%rsp
)
182 vmovups
64(%rsp
), %zmm0
187 .macro WRAPPER_IMPL_AVX512_ff callee
192 vmovups
%zmm0
, (%rsp
)
193 vmovups
%zmm1
, 64(%rsp
)
194 vmovups
(%rsp
), %ymm0
195 vmovups
64(%rsp
), %ymm1
197 vmovups
%ymm0
, 128(%rsp
)
198 vmovups
32(%rsp
), %ymm0
199 vmovups
96(%rsp
), %ymm1
201 vmovups
%ymm0
, 160(%rsp
)
202 vmovups
128(%rsp
), %zmm0
207 .macro WRAPPER_IMPL_AVX512_fFF callee
215 vmovaps
%zmm0
, (%rsp
)
217 vmovaps
(%rsp
), %ymm0
219 vmovaps
32(%rsp
), %ymm0
223 vmovaps
64(%rsp
), %ymm0
224 vmovaps
96(%rsp
), %ymm1
225 vmovaps
%ymm0
, 32(%r12)
226 vmovaps
%ymm1
, 32(%r13)
235 .globl _ZGVcN8vv_powf
236 .type _ZGVcN8vv_powf,@function
241 WRAPPER_IMPL_AVX_ff _ZGVbN4vv_powf
242 .size _ZGVcN8vv_powf,.-_ZGVcN8vv_powf