Codebase list libisal / 2e212f2
build: Fix for mac nasm lack of symbol types Change-Id: I9ee86a3e32876d3860477c8365fc459d94a8920e Signed-off-by: Greg Tucker <greg.b.tucker@intel.com> Greg Tucker 5 years ago
80 changed file(s) with 94 addition(s) and 84 deletion(s). Raw diff Collapse all Expand all
7272 %endif
7373
7474 align 16
75 global crc16_t10dif_01:function
75 global crc16_t10dif_01:ISAL_SYM_TYPE_FUNCTION
7676 crc16_t10dif_01:
7777
7878 ; adjust the 16-bit initial_crc value, scale it to 32 bits
6565 %endif
6666
6767 align 16
68 global crc16_t10dif_by4:function
68 global crc16_t10dif_by4:ISAL_SYM_TYPE_FUNCTION
6969 crc16_t10dif_by4:
7070
7171 ; adjust the 16-bit initial_crc value, scale it to 32 bits
6868 %endif
6969
7070 align 16
71 global crc16_t10dif_copy_by4:function
71 global crc16_t10dif_copy_by4:ISAL_SYM_TYPE_FUNCTION
7272 crc16_t10dif_copy_by4:
7373
7474 ; adjust the 16-bit initial_crc value, scale it to 32 bits
8585 %endif
8686
8787 align 16
88 global crc32_gzip_refl_by8:function
88 global crc32_gzip_refl_by8:ISAL_SYM_TYPE_FUNCTION
8989 crc32_gzip_refl_by8:
9090
9191 ; unsigned long c = crc ^ 0xffffffffL;
7171 %define VARIABLE_OFFSET 16*2+8
7272 %endif
7373 align 16
74 global crc32_ieee_01:function
74 global crc32_ieee_01:ISAL_SYM_TYPE_FUNCTION
7575 crc32_ieee_01:
7676
7777 not arg1_low32 ;~init_crc
7373 %endif
7474
7575 align 16
76 global crc32_ieee_by4:function
76 global crc32_ieee_by4:ISAL_SYM_TYPE_FUNCTION
7777 crc32_ieee_by4:
7878
7979 not arg1_low32
152152 ;;; crc_init = r8
153153 ;;;
154154
155 global crc32_iscsi_00:function
155 global crc32_iscsi_00:ISAL_SYM_TYPE_FUNCTION
156156 crc32_iscsi_00:
157157
158158 %ifidn __OUTPUT_FORMAT__, elf64
4949 ;;; len = rdx
5050 ;;; crc_init = r8
5151
52 global crc32_iscsi_01:function
52 global crc32_iscsi_01:ISAL_SYM_TYPE_FUNCTION
5353 crc32_iscsi_01:
5454
5555 %ifidn __OUTPUT_FORMAT__, elf64
6161 %define VARIABLE_OFFSET 16*2+8
6262 %endif
6363 align 16
64 global crc64_ecma_norm_by8:function
64 global crc64_ecma_norm_by8:ISAL_SYM_TYPE_FUNCTION
6565 crc64_ecma_norm_by8:
6666
6767 not arg1 ;~init_crc
6767
6868
6969 align 16
70 global crc64_ecma_refl_by8:function
70 global crc64_ecma_refl_by8:ISAL_SYM_TYPE_FUNCTION
7171 crc64_ecma_refl_by8:
7272 ; uint64_t c = crc ^ 0xffffffff,ffffffffL;
7373 not arg1
6060 %define VARIABLE_OFFSET 16*2+8
6161 %endif
6262 align 16
63 global crc64_iso_norm_by8:function
63 global crc64_iso_norm_by8:ISAL_SYM_TYPE_FUNCTION
6464 crc64_iso_norm_by8:
6565
6666 not arg1 ;~init_crc
6464
6565
6666 align 16
67 global crc64_iso_refl_by8:function
67 global crc64_iso_refl_by8:ISAL_SYM_TYPE_FUNCTION
6868 crc64_iso_refl_by8:
6969 ; uint64_t c = crc ^ 0xffffffff,ffffffffL;
7070 not arg1
6060 %define VARIABLE_OFFSET 16*2+8
6161 %endif
6262 align 16
63 global crc64_jones_norm_by8:function
63 global crc64_jones_norm_by8:ISAL_SYM_TYPE_FUNCTION
6464 crc64_jones_norm_by8:
6565
6666 not arg1 ;~init_crc
6464
6565
6666 align 16
67 global crc64_jones_refl_by8:function
67 global crc64_jones_refl_by8:ISAL_SYM_TYPE_FUNCTION
6868 crc64_jones_refl_by8:
6969 ; uint64_t c = crc ^ 0xffffffff,ffffffffL;
7070 not arg1
6868 ;;;;
6969 ; crc32_iscsi multibinary function
7070 ;;;;
71 global crc32_iscsi:function
71 global crc32_iscsi:ISAL_SYM_TYPE_FUNCTION
7272 crc32_iscsi_mbinit:
7373 call crc32_iscsi_dispatch_init
7474 crc32_iscsi:
102102 ;;;;
103103 ; crc32_ieee multibinary function
104104 ;;;;
105 global crc32_ieee:function
105 global crc32_ieee:ISAL_SYM_TYPE_FUNCTION
106106 crc32_ieee_mbinit:
107107 call crc32_ieee_dispatch_init
108108 crc32_ieee:
140140 ;;;;
141141 ; crc16_t10dif multibinary function
142142 ;;;;
143 global crc16_t10dif:function
143 global crc16_t10dif:ISAL_SYM_TYPE_FUNCTION
144144 crc16_t10dif_mbinit:
145145 call crc16_t10dif_dispatch_init
146146 crc16_t10dif:
237237 %endif
238238
239239 align 16
240 global gf_2vect_dot_prod_avx:function
240 global gf_2vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
241241
242242 func(gf_2vect_dot_prod_avx)
243243 FUNC_SAVE
247247 %endif
248248
249249 align 16
250 global gf_2vect_dot_prod_avx2:function
250 global gf_2vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
251251
252252 func(gf_2vect_dot_prod_avx2)
253253 FUNC_SAVE
159159 section .text
160160
161161 align 16
162 global gf_2vect_dot_prod_avx512:function
162 global gf_2vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
163163 func(gf_2vect_dot_prod_avx512)
164164 FUNC_SAVE
165165 sub len, 64
237237 %endif
238238
239239 align 16
240 global gf_2vect_dot_prod_sse:function
240 global gf_2vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
241241
242242 func(gf_2vect_dot_prod_sse)
243243 FUNC_SAVE
154154
155155
156156 align 16
157 global gf_2vect_mad_avx:function
157 global gf_2vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
158158
159159 func(gf_2vect_mad_avx)
160160 FUNC_SAVE
162162 %define xtmpd2 ymm9
163163
164164 align 16
165 global gf_2vect_mad_avx2:function
165 global gf_2vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
166166
167167 func(gf_2vect_mad_avx2)
168168 FUNC_SAVE
148148 %define xmask0f zmm14
149149
150150 align 16
151 global gf_2vect_mad_avx512:function
151 global gf_2vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
152152 func(gf_2vect_mad_avx512)
153153 FUNC_SAVE
154154 sub len, 64
153153
154154
155155 align 16
156 global gf_2vect_mad_sse:function
156 global gf_2vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
157157 func(gf_2vect_mad_sse)
158158 FUNC_SAVE
159159 sub len, 16
260260 %endif
261261
262262 align 16
263 global gf_3vect_dot_prod_avx:function
263 global gf_3vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
264264 func(gf_3vect_dot_prod_avx)
265265 FUNC_SAVE
266266 SLDR len, len_m
268268 %endif
269269
270270 align 16
271 global gf_3vect_dot_prod_avx2:function
271 global gf_3vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
272272 func(gf_3vect_dot_prod_avx2)
273273 FUNC_SAVE
274274 SLDR len, len_m
172172 section .text
173173
174174 align 16
175 global gf_3vect_dot_prod_avx512:function
175 global gf_3vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
176176 func(gf_3vect_dot_prod_avx512)
177177 FUNC_SAVE
178178 sub len, 64
260260 %endif
261261
262262 align 16
263 global gf_3vect_dot_prod_sse:function
263 global gf_3vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
264264 func(gf_3vect_dot_prod_sse)
265265 FUNC_SAVE
266266 SLDR len, len_m
157157 %define xd3 xtmph1
158158
159159 align 16
160 global gf_3vect_mad_avx:function
160 global gf_3vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
161161 func(gf_3vect_mad_avx)
162162 FUNC_SAVE
163163 sub len, 16
164164 %define xd3 ymm10
165165
166166 align 16
167 global gf_3vect_mad_avx2:function
167 global gf_3vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
168168 func(gf_3vect_mad_avx2)
169169 FUNC_SAVE
170170 sub len, 32
151151 %define xmask0f zmm17
152152
153153 align 16
154 global gf_3vect_mad_avx512:function
154 global gf_3vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
155155 func(gf_3vect_mad_avx512)
156156 FUNC_SAVE
157157 sub len, 64
155155 %define xd3 xtmph1
156156
157157 align 16
158 global gf_3vect_mad_sse:function
158 global gf_3vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
159159 func(gf_3vect_mad_sse)
160160 FUNC_SAVE
161161 sub len, 16
293293 %define xp4 xmm5
294294 %endif
295295 align 16
296 global gf_4vect_dot_prod_avx:function
296 global gf_4vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
297297 func(gf_4vect_dot_prod_avx)
298298 FUNC_SAVE
299299 SLDR len, len_m
301301 %define xp4 ymm5
302302 %endif
303303 align 16
304 global gf_4vect_dot_prod_avx2:function
304 global gf_4vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
305305 func(gf_4vect_dot_prod_avx2)
306306 FUNC_SAVE
307307 SLDR len, len_m
190190 section .text
191191
192192 align 16
193 global gf_4vect_dot_prod_avx512:function
193 global gf_4vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
194194 func(gf_4vect_dot_prod_avx512)
195195 FUNC_SAVE
196196 sub len, 64
293293 %define xp4 xmm5
294294 %endif
295295 align 16
296 global gf_4vect_dot_prod_sse:function
296 global gf_4vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
297297 func(gf_4vect_dot_prod_sse)
298298 FUNC_SAVE
299299 SLDR len, len_m
168168 %define xd4 xtmpl1
169169
170170 align 16
171 global gf_4vect_mad_avx:function
171 global gf_4vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
172172 func(gf_4vect_mad_avx)
173173 FUNC_SAVE
174174 sub len, 16
164164 %define xd4 ymm10
165165
166166 align 16
167 global gf_4vect_mad_avx2:function
167 global gf_4vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
168168 func(gf_4vect_mad_avx2)
169169 FUNC_SAVE
170170 sub len, 32
158158 %define xtmpl5 zmm23
159159
160160 align 16
161 global gf_4vect_mad_avx512:function
161 global gf_4vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
162162 func(gf_4vect_mad_avx512)
163163 FUNC_SAVE
164164 sub len, 64
167167 %define xd4 xtmpl1
168168
169169 align 16
170 global gf_4vect_mad_sse:function
170 global gf_4vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
171171 func(gf_4vect_mad_sse)
172172 FUNC_SAVE
173173 sub len, 16
183183 %define xp5 xmm6
184184
185185 align 16
186 global gf_5vect_dot_prod_avx:function
186 global gf_5vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
187187 func(gf_5vect_dot_prod_avx)
188188 FUNC_SAVE
189189 sub len, 16
188188 %define xp5 ymm6
189189
190190 align 16
191 global gf_5vect_dot_prod_avx2:function
191 global gf_5vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
192192 func(gf_5vect_dot_prod_avx2)
193193 FUNC_SAVE
194194 sub len, 32
183183 %define xp5 xmm14
184184
185185 align 16
186 global gf_5vect_dot_prod_sse:function
186 global gf_5vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
187187 func(gf_5vect_dot_prod_sse)
188188 FUNC_SAVE
189189 sub len, 16
177177
178178
179179 align 16
180 global gf_5vect_mad_avx:function
180 global gf_5vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
181181 func(gf_5vect_mad_avx)
182182 FUNC_SAVE
183183 sub len, 16
165165 %define xd5 ymm9
166166
167167 align 16
168 global gf_5vect_mad_avx2:function
168 global gf_5vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
169169 func(gf_5vect_mad_avx2)
170170 FUNC_SAVE
171171 sub len, 32
176176
177177
178178 align 16
179 global gf_5vect_mad_sse:function
179 global gf_5vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
180180 func(gf_5vect_mad_sse)
181181 FUNC_SAVE
182182 sub len, 16
181181 %define xp6 xmm7
182182
183183 align 16
184 global gf_6vect_dot_prod_avx:function
184 global gf_6vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
185185 func(gf_6vect_dot_prod_avx)
186186 FUNC_SAVE
187187 sub len, 16
186186 %define xp6 ymm7
187187
188188 align 16
189 global gf_6vect_dot_prod_avx2:function
189 global gf_6vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
190190 func(gf_6vect_dot_prod_avx2)
191191 FUNC_SAVE
192192 sub len, 32
181181 %define xp6 xmm13
182182
183183 align 16
184 global gf_6vect_dot_prod_sse:function
184 global gf_6vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
185185 func(gf_6vect_dot_prod_sse)
186186 FUNC_SAVE
187187 sub len, 16
183183
184184
185185 align 16
186 global gf_6vect_mad_avx:function
186 global gf_6vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
187187 func(gf_6vect_mad_avx)
188188 FUNC_SAVE
189189 sub len, 16
176176 %define xd6 xd1
177177
178178 align 16
179 global gf_6vect_mad_avx2:function
179 global gf_6vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
180180 func(gf_6vect_mad_avx2)
181181 FUNC_SAVE
182182 sub len, 32
184184
185185
186186 align 16
187 global gf_6vect_mad_sse:function
187 global gf_6vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
188188 func(gf_6vect_mad_sse)
189189 FUNC_SAVE
190190 sub len, 16
193193 %define xp xmm2
194194
195195 align 16
196 global gf_vect_dot_prod_avx:function
196 global gf_vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
197197 func(gf_vect_dot_prod_avx)
198198 FUNC_SAVE
199199 SLDR len, len_m
201201 %define xp ymm2
202202
203203 align 16
204 global gf_vect_dot_prod_avx2:function
204 global gf_vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
205205 func(gf_vect_dot_prod_avx2)
206206 FUNC_SAVE
207207 SLDR len, len_m
127127 section .text
128128
129129 align 16
130 global gf_vect_dot_prod_avx512:function
130 global gf_vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
131131 func(gf_vect_dot_prod_avx512)
132132 FUNC_SAVE
133133 xor pos, pos
193193 %define xp xmm2
194194
195195 align 16
196 global gf_vect_dot_prod_sse:function
196 global gf_vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
197197 func(gf_vect_dot_prod_sse)
198198 FUNC_SAVE
199199 SLDR len, len_m
130130 %define xtmpd xmm5
131131
132132 align 16
133 global gf_vect_mad_avx:function
133 global gf_vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
134134 func(gf_vect_mad_avx)
135135 FUNC_SAVE
136136 sub len, 16
138138 %define xtmpd ymm5
139139
140140 align 16
141 global gf_vect_mad_avx2:function
141 global gf_vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
142142 func(gf_vect_mad_avx2)
143143 FUNC_SAVE
144144 sub len, 32
126126 %define xmask0f zmm8
127127
128128 align 16
129 global gf_vect_mad_avx512:function
129 global gf_vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
130130 func(gf_vect_mad_avx512)
131131 FUNC_SAVE
132132 sub len, 64
130130
131131
132132 align 16
133 global gf_vect_mad_sse:function
133 global gf_vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
134134 func(gf_vect_mad_sse)
135135 FUNC_SAVE
136136 sub len, 16
110110 %define xtmp2c xmm7
111111
112112 align 16
113 global gf_vect_mul_avx:function
113 global gf_vect_mul_avx:ISAL_SYM_TYPE_FUNCTION
114114 func(gf_vect_mul_avx)
115115 FUNC_SAVE
116116 mov pos, 0
111111
112112
113113 align 16
114 global gf_vect_mul_sse:function
114 global gf_vect_mul_sse:ISAL_SYM_TYPE_FUNCTION
115115 func(gf_vect_mul_sse)
116116 FUNC_SAVE
117117 mov pos, 0
123123 %define yshuf1 ymm7
124124
125125
126 global adler32_avx2_4:function
126 global adler32_avx2_4:ISAL_SYM_TYPE_FUNCTION
127127 func(adler32_avx2_4)
128128 FUNC_SAVE
129129
103103 %define xdata1 xmm3
104104 %define xsa xmm4
105105
106 global adler32_sse:function
106 global adler32_sse:ISAL_SYM_TYPE_FUNCTION
107107 func(adler32_sse)
108108 FUNC_SAVE
109109
4444 ;; uint16_t len_start[32];
4545 ;; };
4646
47 global rfc1951_lookup_table:data internal
47 global rfc1951_lookup_table:ISAL_SYM_TYPE_DATA_INTERNAL
4848 rfc1951_lookup_table:
4949 len_to_code:
5050 db 0x00, 0x00, 0x00
6464 mbin_def_ptr %1_mbinit
6565
6666 section .text
67 global %1:function
67 global %1:ISAL_SYM_TYPE_FUNCTION
6868 %1_mbinit:
6969 ;;; only called the first time to setup hardware match
7070 call %1_dispatch_init
207207 %endif
208208
209209 %ifidn __OUTPUT_FORMAT__, macho64
210 %define elf64 macho64
211 mac_equ equ 1
210 %define elf64 macho64
211 mac_equ equ 1
212 %ifdef __NASM_VER__
213 %define ISAL_SYM_TYPE_FUNCTION
214 %define ISAL_SYM_TYPE_DATA_INTERNAL
215 %else
216 %define ISAL_SYM_TYPE_FUNCTION function
217 %define ISAL_SYM_TYPE_DATA_INTERNAL data internal
218 %endif
219 %else
220 %define ISAL_SYM_TYPE_FUNCTION function
221 %define ISAL_SYM_TYPE_DATA_INTERNAL data internal
212222 %endif
213223
214224 %macro slversion 4
7272 section .text
7373
7474 align 16
75 global mem_zero_detect_avx:function
75 global mem_zero_detect_avx:ISAL_SYM_TYPE_FUNCTION
7676 func(mem_zero_detect_avx)
7777 FUNC_SAVE
7878 mov pos, 0
7272 section .text
7373
7474 align 16
75 global mem_zero_detect_sse:function
75 global mem_zero_detect_sse:ISAL_SYM_TYPE_FUNCTION
7676 func(mem_zero_detect_sse)
7777 FUNC_SAVE
7878 mov pos, 0
121121 section .text
122122
123123 align 16
124 global pq_check_sse:function
124 global pq_check_sse:ISAL_SYM_TYPE_FUNCTION
125125 func(pq_check_sse)
126126 FUNC_SAVE
127127 sub vec, 3 ;Keep as offset to last source
140140 section .text
141141
142142 align 16
143 global pq_check_sse:function
143 global pq_check_sse:ISAL_SYM_TYPE_FUNCTION
144144 func(pq_check_sse)
145145 FUNC_SAVE
146146 sub vec, 3 ;Keep as offset to last source
124124 section .text
125125
126126 align 16
127 global pq_gen_avx:function
127 global pq_gen_avx:ISAL_SYM_TYPE_FUNCTION
128128 func(pq_gen_avx)
129129 FUNC_SAVE
130130 sub vec, 3 ;Keep as offset to last source
125125 section .text
126126
127127 align 16
128 global pq_gen_avx2:function
128 global pq_gen_avx2:ISAL_SYM_TYPE_FUNCTION
129129 func(pq_gen_avx2)
130130 FUNC_SAVE
131131 sub vec, 3 ;Keep as offset to last source
122122 section .text
123123
124124 align 16
125 global pq_gen_avx512:function
125 global pq_gen_avx512:ISAL_SYM_TYPE_FUNCTION
126126 func(pq_gen_avx512)
127127 FUNC_SAVE
128128 sub vec, 3 ;Keep as offset to last source
121121 section .text
122122
123123 align 16
124 global pq_gen_sse:function
124 global pq_gen_sse:ISAL_SYM_TYPE_FUNCTION
125125 func(pq_gen_sse)
126126 FUNC_SAVE
127127 sub vec, 3 ;Keep as offset to last source
139139 section .text
140140
141141 align 16
142 global pq_gen_sse:function
142 global pq_gen_sse:ISAL_SYM_TYPE_FUNCTION
143143 func(pq_gen_sse)
144144 FUNC_SAVE
145145 sub vec, 3 ;Keep as offset to last source
7575 ;;;;
7676 ; pq_check multibinary function
7777 ;;;;
78 global pq_check:function
78 global pq_check:ISAL_SYM_TYPE_FUNCTION
7979 pq_check_mbinit:
8080 call pq_check_dispatch_init
8181 pq_check:
107107 ;;;;
108108 ; xor_check multibinary function
109109 ;;;;
110 global xor_check:function
110 global xor_check:ISAL_SYM_TYPE_FUNCTION
111111 xor_check_mbinit:
112112 call xor_check_dispatch_init
113113 xor_check:
136136 section .text
137137
138138 align 16
139 global xor_check_sse:function
139 global xor_check_sse:ISAL_SYM_TYPE_FUNCTION
140140 func(xor_check_sse)
141141 FUNC_SAVE
142142 %ifidn PS,8 ;64-bit code
9999 section .text
100100
101101 align 16
102 global xor_gen_avx:function
102 global xor_gen_avx:ISAL_SYM_TYPE_FUNCTION
103103 func(xor_gen_avx)
104104
105105 FUNC_SAVE
102102 section .text
103103
104104 align 16
105 global xor_gen_avx512:function
105 global xor_gen_avx512:ISAL_SYM_TYPE_FUNCTION
106106 func(xor_gen_avx512)
107107 FUNC_SAVE
108108 sub vec, 2 ;Keep as offset to last source
136136 section .text
137137
138138 align 16
139 global xor_gen_sse:function
139 global xor_gen_sse:ISAL_SYM_TYPE_FUNCTION
140140 func(xor_gen_sse)
141141 FUNC_SAVE
142142 %ifidn PS,8 ;64-bit code