build: Fix for mac nasm lack of symbol types

Change-Id: I9ee86a3e32876d3860477c8365fc459d94a8920e
Signed-off-by: Greg Tucker <greg.b.tucker@intel.com>
This commit is contained in:
Greg Tucker 2018-11-27 14:41:24 -07:00
parent 86c865b784
commit 2e212f28fa
80 changed files with 94 additions and 84 deletions

View File

@ -73,7 +73,7 @@ section .text
%endif
align 16
global crc16_t10dif_01:function
global crc16_t10dif_01:ISAL_SYM_TYPE_FUNCTION
crc16_t10dif_01:
; adjust the 16-bit initial_crc value, scale it to 32 bits

View File

@ -66,7 +66,7 @@ section .text
%endif
align 16
global crc16_t10dif_by4:function
global crc16_t10dif_by4:ISAL_SYM_TYPE_FUNCTION
crc16_t10dif_by4:
; adjust the 16-bit initial_crc value, scale it to 32 bits

View File

@ -69,7 +69,7 @@ section .text
%endif
align 16
global crc16_t10dif_copy_by4:function
global crc16_t10dif_copy_by4:ISAL_SYM_TYPE_FUNCTION
crc16_t10dif_copy_by4:
; adjust the 16-bit initial_crc value, scale it to 32 bits

View File

@ -86,7 +86,7 @@ section .text
%endif
align 16
global crc32_gzip_refl_by8:function
global crc32_gzip_refl_by8:ISAL_SYM_TYPE_FUNCTION
crc32_gzip_refl_by8:
; unsigned long c = crc ^ 0xffffffffL;

View File

@ -72,7 +72,7 @@ section .text
%define VARIABLE_OFFSET 16*2+8
%endif
align 16
global crc32_ieee_01:function
global crc32_ieee_01:ISAL_SYM_TYPE_FUNCTION
crc32_ieee_01:
not arg1_low32 ;~init_crc

View File

@ -74,7 +74,7 @@ section .text
%endif
align 16
global crc32_ieee_by4:function
global crc32_ieee_by4:ISAL_SYM_TYPE_FUNCTION
crc32_ieee_by4:
not arg1_low32

View File

@ -153,7 +153,7 @@ default rel
;;; crc_init = r8
;;;
global crc32_iscsi_00:function
global crc32_iscsi_00:ISAL_SYM_TYPE_FUNCTION
crc32_iscsi_00:
%ifidn __OUTPUT_FORMAT__, elf64

View File

@ -50,7 +50,7 @@ default rel
;;; len = rdx
;;; crc_init = r8
global crc32_iscsi_01:function
global crc32_iscsi_01:ISAL_SYM_TYPE_FUNCTION
crc32_iscsi_01:
%ifidn __OUTPUT_FORMAT__, elf64

View File

@ -62,7 +62,7 @@ section .text
%define VARIABLE_OFFSET 16*2+8
%endif
align 16
global crc64_ecma_norm_by8:function
global crc64_ecma_norm_by8:ISAL_SYM_TYPE_FUNCTION
crc64_ecma_norm_by8:
not arg1 ;~init_crc

View File

@ -68,7 +68,7 @@ section .text
align 16
global crc64_ecma_refl_by8:function
global crc64_ecma_refl_by8:ISAL_SYM_TYPE_FUNCTION
crc64_ecma_refl_by8:
; uint64_t c = crc ^ 0xffffffff,ffffffffL;
not arg1

View File

@ -61,7 +61,7 @@ section .text
%define VARIABLE_OFFSET 16*2+8
%endif
align 16
global crc64_iso_norm_by8:function
global crc64_iso_norm_by8:ISAL_SYM_TYPE_FUNCTION
crc64_iso_norm_by8:
not arg1 ;~init_crc

View File

@ -65,7 +65,7 @@ section .text
align 16
global crc64_iso_refl_by8:function
global crc64_iso_refl_by8:ISAL_SYM_TYPE_FUNCTION
crc64_iso_refl_by8:
; uint64_t c = crc ^ 0xffffffff,ffffffffL;
not arg1

View File

@ -61,7 +61,7 @@ section .text
%define VARIABLE_OFFSET 16*2+8
%endif
align 16
global crc64_jones_norm_by8:function
global crc64_jones_norm_by8:ISAL_SYM_TYPE_FUNCTION
crc64_jones_norm_by8:
not arg1 ;~init_crc

View File

@ -65,7 +65,7 @@ section .text
align 16
global crc64_jones_refl_by8:function
global crc64_jones_refl_by8:ISAL_SYM_TYPE_FUNCTION
crc64_jones_refl_by8:
; uint64_t c = crc ^ 0xffffffff,ffffffffL;
not arg1

View File

@ -69,7 +69,7 @@ section .text
;;;;
; crc32_iscsi multibinary function
;;;;
global crc32_iscsi:function
global crc32_iscsi:ISAL_SYM_TYPE_FUNCTION
crc32_iscsi_mbinit:
call crc32_iscsi_dispatch_init
crc32_iscsi:
@ -103,7 +103,7 @@ crc32_iscsi_dispatch_init:
;;;;
; crc32_ieee multibinary function
;;;;
global crc32_ieee:function
global crc32_ieee:ISAL_SYM_TYPE_FUNCTION
crc32_ieee_mbinit:
call crc32_ieee_dispatch_init
crc32_ieee:
@ -141,7 +141,7 @@ use_ieee_base:
;;;;
; crc16_t10dif multibinary function
;;;;
global crc16_t10dif:function
global crc16_t10dif:ISAL_SYM_TYPE_FUNCTION
crc16_t10dif_mbinit:
call crc16_t10dif_dispatch_init
crc16_t10dif:

View File

@ -238,7 +238,7 @@ section .text
%endif
align 16
global gf_2vect_dot_prod_avx:function
global gf_2vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_dot_prod_avx)
FUNC_SAVE

View File

@ -248,7 +248,7 @@ section .text
%endif
align 16
global gf_2vect_dot_prod_avx2:function
global gf_2vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_dot_prod_avx2)
FUNC_SAVE

View File

@ -160,7 +160,7 @@ default rel
section .text
align 16
global gf_2vect_dot_prod_avx512:function
global gf_2vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_dot_prod_avx512)
FUNC_SAVE
sub len, 64

View File

@ -238,7 +238,7 @@ section .text
%endif
align 16
global gf_2vect_dot_prod_sse:function
global gf_2vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_dot_prod_sse)
FUNC_SAVE

View File

@ -155,7 +155,7 @@ section .text
align 16
global gf_2vect_mad_avx:function
global gf_2vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_mad_avx)
FUNC_SAVE

View File

@ -163,7 +163,7 @@ section .text
%define xtmpd2 ymm9
align 16
global gf_2vect_mad_avx2:function
global gf_2vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_mad_avx2)
FUNC_SAVE

View File

@ -149,7 +149,7 @@ section .text
%define xmask0f zmm14
align 16
global gf_2vect_mad_avx512:function
global gf_2vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_mad_avx512)
FUNC_SAVE
sub len, 64

View File

@ -154,7 +154,7 @@ section .text
align 16
global gf_2vect_mad_sse:function
global gf_2vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_2vect_mad_sse)
FUNC_SAVE
sub len, 16

View File

@ -261,7 +261,7 @@ section .text
%endif
align 16
global gf_3vect_dot_prod_avx:function
global gf_3vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_dot_prod_avx)
FUNC_SAVE
SLDR len, len_m

View File

@ -269,7 +269,7 @@ section .text
%endif
align 16
global gf_3vect_dot_prod_avx2:function
global gf_3vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_dot_prod_avx2)
FUNC_SAVE
SLDR len, len_m

View File

@ -173,7 +173,7 @@ default rel
section .text
align 16
global gf_3vect_dot_prod_avx512:function
global gf_3vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_dot_prod_avx512)
FUNC_SAVE
sub len, 64

View File

@ -261,7 +261,7 @@ section .text
%endif
align 16
global gf_3vect_dot_prod_sse:function
global gf_3vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_dot_prod_sse)
FUNC_SAVE
SLDR len, len_m

View File

@ -158,7 +158,7 @@ section .text
%define xd3 xtmph1
align 16
global gf_3vect_mad_avx:function
global gf_3vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_mad_avx)
FUNC_SAVE
sub len, 16

View File

@ -165,7 +165,7 @@ section .text
%define xd3 ymm10
align 16
global gf_3vect_mad_avx2:function
global gf_3vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_mad_avx2)
FUNC_SAVE
sub len, 32

View File

@ -152,7 +152,7 @@ section .text
%define xmask0f zmm17
align 16
global gf_3vect_mad_avx512:function
global gf_3vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_mad_avx512)
FUNC_SAVE
sub len, 64

View File

@ -156,7 +156,7 @@ section .text
%define xd3 xtmph1
align 16
global gf_3vect_mad_sse:function
global gf_3vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_3vect_mad_sse)
FUNC_SAVE
sub len, 16

View File

@ -294,7 +294,7 @@ section .text
%define xp4 xmm5
%endif
align 16
global gf_4vect_dot_prod_avx:function
global gf_4vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_dot_prod_avx)
FUNC_SAVE
SLDR len, len_m

View File

@ -302,7 +302,7 @@ section .text
%define xp4 ymm5
%endif
align 16
global gf_4vect_dot_prod_avx2:function
global gf_4vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_dot_prod_avx2)
FUNC_SAVE
SLDR len, len_m

View File

@ -191,7 +191,7 @@ default rel
section .text
align 16
global gf_4vect_dot_prod_avx512:function
global gf_4vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_dot_prod_avx512)
FUNC_SAVE
sub len, 64

View File

@ -294,7 +294,7 @@ section .text
%define xp4 xmm5
%endif
align 16
global gf_4vect_dot_prod_sse:function
global gf_4vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_dot_prod_sse)
FUNC_SAVE
SLDR len, len_m

View File

@ -169,7 +169,7 @@ section .text
%define xd4 xtmpl1
align 16
global gf_4vect_mad_avx:function
global gf_4vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_mad_avx)
FUNC_SAVE
sub len, 16

View File

@ -165,7 +165,7 @@ section .text
%define xd4 ymm10
align 16
global gf_4vect_mad_avx2:function
global gf_4vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_mad_avx2)
FUNC_SAVE
sub len, 32

View File

@ -159,7 +159,7 @@ section .text
%define xtmpl5 zmm23
align 16
global gf_4vect_mad_avx512:function
global gf_4vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_mad_avx512)
FUNC_SAVE
sub len, 64

View File

@ -168,7 +168,7 @@ section .text
%define xd4 xtmpl1
align 16
global gf_4vect_mad_sse:function
global gf_4vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_4vect_mad_sse)
FUNC_SAVE
sub len, 16

View File

@ -184,7 +184,7 @@ section .text
%define xp5 xmm6
align 16
global gf_5vect_dot_prod_avx:function
global gf_5vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_5vect_dot_prod_avx)
FUNC_SAVE
sub len, 16

View File

@ -189,7 +189,7 @@ section .text
%define xp5 ymm6
align 16
global gf_5vect_dot_prod_avx2:function
global gf_5vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_5vect_dot_prod_avx2)
FUNC_SAVE
sub len, 32

View File

@ -184,7 +184,7 @@ section .text
%define xp5 xmm14
align 16
global gf_5vect_dot_prod_sse:function
global gf_5vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_5vect_dot_prod_sse)
FUNC_SAVE
sub len, 16

View File

@ -178,7 +178,7 @@ section .text
align 16
global gf_5vect_mad_avx:function
global gf_5vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_5vect_mad_avx)
FUNC_SAVE
sub len, 16

View File

@ -166,7 +166,7 @@ section .text
%define xd5 ymm9
align 16
global gf_5vect_mad_avx2:function
global gf_5vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_5vect_mad_avx2)
FUNC_SAVE
sub len, 32

View File

@ -177,7 +177,7 @@ section .text
align 16
global gf_5vect_mad_sse:function
global gf_5vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_5vect_mad_sse)
FUNC_SAVE
sub len, 16

View File

@ -182,7 +182,7 @@ section .text
%define xp6 xmm7
align 16
global gf_6vect_dot_prod_avx:function
global gf_6vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_6vect_dot_prod_avx)
FUNC_SAVE
sub len, 16

View File

@ -187,7 +187,7 @@ section .text
%define xp6 ymm7
align 16
global gf_6vect_dot_prod_avx2:function
global gf_6vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_6vect_dot_prod_avx2)
FUNC_SAVE
sub len, 32

View File

@ -182,7 +182,7 @@ section .text
%define xp6 xmm13
align 16
global gf_6vect_dot_prod_sse:function
global gf_6vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_6vect_dot_prod_sse)
FUNC_SAVE
sub len, 16

View File

@ -184,7 +184,7 @@ section .text
align 16
global gf_6vect_mad_avx:function
global gf_6vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_6vect_mad_avx)
FUNC_SAVE
sub len, 16

View File

@ -177,7 +177,7 @@ section .text
%define xd6 xd1
align 16
global gf_6vect_mad_avx2:function
global gf_6vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_6vect_mad_avx2)
FUNC_SAVE
sub len, 32

View File

@ -185,7 +185,7 @@ section .text
align 16
global gf_6vect_mad_sse:function
global gf_6vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_6vect_mad_sse)
FUNC_SAVE
sub len, 16

View File

@ -194,7 +194,7 @@ section .text
%define xp xmm2
align 16
global gf_vect_dot_prod_avx:function
global gf_vect_dot_prod_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_dot_prod_avx)
FUNC_SAVE
SLDR len, len_m

View File

@ -202,7 +202,7 @@ section .text
%define xp ymm2
align 16
global gf_vect_dot_prod_avx2:function
global gf_vect_dot_prod_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_dot_prod_avx2)
FUNC_SAVE
SLDR len, len_m

View File

@ -128,7 +128,7 @@ default rel
section .text
align 16
global gf_vect_dot_prod_avx512:function
global gf_vect_dot_prod_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_dot_prod_avx512)
FUNC_SAVE
xor pos, pos

View File

@ -194,7 +194,7 @@ section .text
%define xp xmm2
align 16
global gf_vect_dot_prod_sse:function
global gf_vect_dot_prod_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_dot_prod_sse)
FUNC_SAVE
SLDR len, len_m

View File

@ -131,7 +131,7 @@ section .text
%define xtmpd xmm5
align 16
global gf_vect_mad_avx:function
global gf_vect_mad_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_mad_avx)
FUNC_SAVE
sub len, 16

View File

@ -139,7 +139,7 @@ section .text
%define xtmpd ymm5
align 16
global gf_vect_mad_avx2:function
global gf_vect_mad_avx2:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_mad_avx2)
FUNC_SAVE
sub len, 32

View File

@ -127,7 +127,7 @@ section .text
%define xmask0f zmm8
align 16
global gf_vect_mad_avx512:function
global gf_vect_mad_avx512:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_mad_avx512)
FUNC_SAVE
sub len, 64

View File

@ -131,7 +131,7 @@ section .text
align 16
global gf_vect_mad_sse:function
global gf_vect_mad_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_mad_sse)
FUNC_SAVE
sub len, 16

View File

@ -111,7 +111,7 @@ section .text
%define xtmp2c xmm7
align 16
global gf_vect_mul_avx:function
global gf_vect_mul_avx:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_mul_avx)
FUNC_SAVE
mov pos, 0

View File

@ -112,7 +112,7 @@ section .text
align 16
global gf_vect_mul_sse:function
global gf_vect_mul_sse:ISAL_SYM_TYPE_FUNCTION
func(gf_vect_mul_sse)
FUNC_SAVE
mov pos, 0

View File

@ -124,7 +124,7 @@ default rel
%define yshuf1 ymm7
global adler32_avx2_4:function
global adler32_avx2_4:ISAL_SYM_TYPE_FUNCTION
func(adler32_avx2_4)
FUNC_SAVE

View File

@ -104,7 +104,7 @@ default rel
%define xdata1 xmm3
%define xsa xmm4
global adler32_sse:function
global adler32_sse:ISAL_SYM_TYPE_FUNCTION
func(adler32_sse)
FUNC_SAVE

View File

@ -45,7 +45,7 @@ section .data
;; uint16_t len_start[32];
;; };
global rfc1951_lookup_table:data internal
global rfc1951_lookup_table:ISAL_SYM_TYPE_DATA_INTERNAL
rfc1951_lookup_table:
len_to_code:
db 0x00, 0x00, 0x00

View File

@ -65,7 +65,7 @@
mbin_def_ptr %1_mbinit
section .text
global %1:function
global %1:ISAL_SYM_TYPE_FUNCTION
%1_mbinit:
;;; only called the first time to setup hardware match
call %1_dispatch_init

View File

@ -208,8 +208,18 @@ section .text
%endif
%ifidn __OUTPUT_FORMAT__, macho64
%define elf64 macho64
mac_equ equ 1
%define elf64 macho64
mac_equ equ 1
%ifdef __NASM_VER__
%define ISAL_SYM_TYPE_FUNCTION
%define ISAL_SYM_TYPE_DATA_INTERNAL
%else
%define ISAL_SYM_TYPE_FUNCTION function
%define ISAL_SYM_TYPE_DATA_INTERNAL data internal
%endif
%else
%define ISAL_SYM_TYPE_FUNCTION function
%define ISAL_SYM_TYPE_DATA_INTERNAL data internal
%endif
%macro slversion 4

View File

@ -73,7 +73,7 @@ default rel
section .text
align 16
global mem_zero_detect_avx:function
global mem_zero_detect_avx:ISAL_SYM_TYPE_FUNCTION
func(mem_zero_detect_avx)
FUNC_SAVE
mov pos, 0

View File

@ -73,7 +73,7 @@ default rel
section .text
align 16
global mem_zero_detect_sse:function
global mem_zero_detect_sse:ISAL_SYM_TYPE_FUNCTION
func(mem_zero_detect_sse)
FUNC_SAVE
mov pos, 0

View File

@ -122,7 +122,7 @@ default rel
section .text
align 16
global pq_check_sse:function
global pq_check_sse:ISAL_SYM_TYPE_FUNCTION
func(pq_check_sse)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -141,7 +141,7 @@
section .text
align 16
global pq_check_sse:function
global pq_check_sse:ISAL_SYM_TYPE_FUNCTION
func(pq_check_sse)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -125,7 +125,7 @@ default rel
section .text
align 16
global pq_gen_avx:function
global pq_gen_avx:ISAL_SYM_TYPE_FUNCTION
func(pq_gen_avx)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -126,7 +126,7 @@ default rel
section .text
align 16
global pq_gen_avx2:function
global pq_gen_avx2:ISAL_SYM_TYPE_FUNCTION
func(pq_gen_avx2)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -123,7 +123,7 @@ default rel
section .text
align 16
global pq_gen_avx512:function
global pq_gen_avx512:ISAL_SYM_TYPE_FUNCTION
func(pq_gen_avx512)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -122,7 +122,7 @@ default rel
section .text
align 16
global pq_gen_sse:function
global pq_gen_sse:ISAL_SYM_TYPE_FUNCTION
func(pq_gen_sse)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -140,7 +140,7 @@
section .text
align 16
global pq_gen_sse:function
global pq_gen_sse:ISAL_SYM_TYPE_FUNCTION
func(pq_gen_sse)
FUNC_SAVE
sub vec, 3 ;Keep as offset to last source

View File

@ -76,7 +76,7 @@ section .text
;;;;
; pq_check multibinary function
;;;;
global pq_check:function
global pq_check:ISAL_SYM_TYPE_FUNCTION
pq_check_mbinit:
call pq_check_dispatch_init
pq_check:
@ -108,7 +108,7 @@ pq_check_dispatch_init:
;;;;
; xor_check multibinary function
;;;;
global xor_check:function
global xor_check:ISAL_SYM_TYPE_FUNCTION
xor_check_mbinit:
call xor_check_dispatch_init
xor_check:

View File

@ -137,7 +137,7 @@
section .text
align 16
global xor_check_sse:function
global xor_check_sse:ISAL_SYM_TYPE_FUNCTION
func(xor_check_sse)
FUNC_SAVE
%ifidn PS,8 ;64-bit code

View File

@ -100,7 +100,7 @@ default rel
section .text
align 16
global xor_gen_avx:function
global xor_gen_avx:ISAL_SYM_TYPE_FUNCTION
func(xor_gen_avx)
FUNC_SAVE

View File

@ -103,7 +103,7 @@ default rel
section .text
align 16
global xor_gen_avx512:function
global xor_gen_avx512:ISAL_SYM_TYPE_FUNCTION
func(xor_gen_avx512)
FUNC_SAVE
sub vec, 2 ;Keep as offset to last source

View File

@ -137,7 +137,7 @@
section .text
align 16
global xor_gen_sse:function
global xor_gen_sse:ISAL_SYM_TYPE_FUNCTION
func(xor_gen_sse)
FUNC_SAVE
%ifidn PS,8 ;64-bit code