| Index: simd/jsimdext.inc
 | 
| diff --git a/simd/jsimdext.inc b/simd/jsimdext.inc
 | 
| index abb686354ba6d2ea29f21f89d87b48f7b8528bec..e1442de16fbf6eeab3fb0d49ce43d6b16568faed 100644
 | 
| --- a/simd/jsimdext.inc
 | 
| +++ b/simd/jsimdext.inc
 | 
| @@ -30,7 +30,7 @@
 | 
|  ; ==========================================================================
 | 
|  ;  System-dependent configurations
 | 
|  
 | 
| -%ifdef WIN32	; ----(nasm -fwin32 -DWIN32 ...)--------
 | 
| +%ifdef WIN32    ; ----(nasm -fwin32 -DWIN32 ...)--------
 | 
|  ; * Microsoft Visual C++
 | 
|  ; * MinGW (Minimalist GNU for Windows)
 | 
|  ; * CygWin
 | 
| @@ -46,7 +46,7 @@
 | 
|  %define SEG_CONST   .rdata align=16 public use32 class=CONST
 | 
|  %endif
 | 
|  
 | 
| -%elifdef WIN64	; ----(nasm -fwin64 -DWIN64 ...)--------
 | 
| +%elifdef WIN64  ; ----(nasm -fwin64 -DWIN64 ...)--------
 | 
|  ; * Microsoft Visual C++
 | 
|  
 | 
|  ; -- segment definition --
 | 
| @@ -58,24 +58,21 @@
 | 
|  %define SEG_TEXT    .text  align=16 public use64 class=CODE
 | 
|  %define SEG_CONST   .rdata align=16 public use64 class=CONST
 | 
|  %endif
 | 
| -%define EXTN(name)  name			; foo() -> foo
 | 
| +%define EXTN(name)  name                        ; foo() -> foo
 | 
|  
 | 
| -%elifdef OBJ32	; ----(nasm -fobj -DOBJ32 ...)----------
 | 
| +%elifdef OBJ32  ; ----(nasm -fobj -DOBJ32 ...)----------
 | 
|  ; * Borland C++ (Win32)
 | 
|  
 | 
|  ; -- segment definition --
 | 
|  ;
 | 
| -%define SEG_TEXT    .text  align=16 public use32 class=CODE
 | 
| -%define SEG_CONST   .data  align=16 public use32 class=DATA
 | 
| +%define SEG_TEXT    _text  align=16 public use32 class=CODE
 | 
| +%define SEG_CONST   _data  align=16 public use32 class=DATA
 | 
|  
 | 
| -%elifdef ELF	; ----(nasm -felf[64] -DELF ...)------------
 | 
| +%elifdef ELF    ; ----(nasm -felf[64] -DELF ...)------------
 | 
|  ; * Linux
 | 
|  ; * *BSD family Unix using elf format
 | 
|  ; * Unix System V, including Solaris x86, UnixWare and SCO Unix
 | 
|  
 | 
| -; PIC is the default on Linux
 | 
| -%define PIC
 | 
| -
 | 
|  ; mark stack as non-executable
 | 
|  section .note.GNU-stack noalloc noexec nowrite progbits
 | 
|  
 | 
| @@ -91,10 +88,10 @@ section .note.GNU-stack noalloc noexec nowrite progbits
 | 
|  
 | 
|  ; To make the code position-independent, append -DPIC to the commandline
 | 
|  ;
 | 
| -%define GOT_SYMBOL  _GLOBAL_OFFSET_TABLE_	; ELF supports PIC
 | 
| -%define EXTN(name)  name			; foo() -> foo
 | 
| +%define GOT_SYMBOL  _GLOBAL_OFFSET_TABLE_       ; ELF supports PIC
 | 
| +%define EXTN(name)  name                        ; foo() -> foo
 | 
|  
 | 
| -%elifdef AOUT	; ----(nasm -faoutb/aout -DAOUT ...)----
 | 
| +%elifdef AOUT   ; ----(nasm -faoutb/aout -DAOUT ...)----
 | 
|  ; * Older Linux using a.out format  (nasm -f aout -DAOUT ...)
 | 
|  ; * *BSD family Unix using a.out format  (nasm -f aoutb -DAOUT ...)
 | 
|  
 | 
| @@ -105,29 +102,29 @@ section .note.GNU-stack noalloc noexec nowrite progbits
 | 
|  
 | 
|  ; To make the code position-independent, append -DPIC to the commandline
 | 
|  ;
 | 
| -%define GOT_SYMBOL  __GLOBAL_OFFSET_TABLE_	; BSD-style a.out supports PIC
 | 
| +%define GOT_SYMBOL  __GLOBAL_OFFSET_TABLE_      ; BSD-style a.out supports PIC
 | 
|  
 | 
| -%elifdef MACHO	; ----(nasm -fmacho -DMACHO ...)--------
 | 
| +%elifdef MACHO  ; ----(nasm -fmacho -DMACHO ...)--------
 | 
|  ; * NeXTstep/OpenStep/Rhapsody/Darwin/MacOS X (Mach-O format)
 | 
|  
 | 
|  ; -- segment definition --
 | 
|  ;
 | 
| -%define SEG_TEXT    .text  ;align=16	; nasm doesn't accept align=16. why?
 | 
| +%define SEG_TEXT    .text  ;align=16    ; nasm doesn't accept align=16. why?
 | 
|  %define SEG_CONST   .rodata align=16
 | 
|  
 | 
|  ; The generation of position-independent code (PIC) is the default on Darwin.
 | 
|  ;
 | 
|  %define PIC
 | 
| -%define GOT_SYMBOL  _MACHO_PIC_		; Mach-O style code-relative addressing
 | 
| +%define GOT_SYMBOL  _MACHO_PIC_         ; Mach-O style code-relative addressing
 | 
|  
 | 
| -%else		; ----(Other case)----------------------
 | 
| +%else           ; ----(Other case)----------------------
 | 
|  
 | 
|  ; -- segment definition --
 | 
|  ;
 | 
|  %define SEG_TEXT    .text
 | 
|  %define SEG_CONST   .data
 | 
|  
 | 
| -%endif	; ----------------------------------------------
 | 
| +%endif  ; ----------------------------------------------
 | 
|  
 | 
|  ; ==========================================================================
 | 
|  
 | 
| @@ -182,7 +179,7 @@ section .note.GNU-stack noalloc noexec nowrite progbits
 | 
|  ;  External Symbol Name
 | 
|  ;
 | 
|  %ifndef EXTN
 | 
| -%define EXTN(name)   _ %+ name		; foo() -> _foo
 | 
| +%define EXTN(name)   _ %+ name          ; foo() -> _foo
 | 
|  %endif
 | 
|  
 | 
|  ; --------------------------------------------------------------------------
 | 
| @@ -199,79 +196,79 @@ section .note.GNU-stack noalloc noexec nowrite progbits
 | 
|  ; At present, nasm doesn't seem to support PIC generation for Mach-O.
 | 
|  ; The PIC support code below is a little tricky.
 | 
|  
 | 
| -	SECTION	SEG_CONST
 | 
| +        SECTION SEG_CONST
 | 
|  const_base:
 | 
|  
 | 
|  %define GOTOFF(got,sym) (got) + (sym) - const_base
 | 
|  
 | 
| -%imacro get_GOT	1
 | 
| -	; NOTE: this macro destroys ecx resister.
 | 
| -	call	%%geteip
 | 
| -	add	ecx, byte (%%ref - $)
 | 
| -	jmp	short %%adjust
 | 
| +%imacro get_GOT 1
 | 
| +        ; NOTE: this macro destroys ecx resister.
 | 
| +        call    %%geteip
 | 
| +        add     ecx, byte (%%ref - $)
 | 
| +        jmp     short %%adjust
 | 
|  %%geteip:
 | 
| -	mov	ecx, POINTER [esp]
 | 
| -	ret
 | 
| +        mov     ecx, POINTER [esp]
 | 
| +        ret
 | 
|  %%adjust:
 | 
| -	push	ebp
 | 
| -	xor	ebp,ebp		; ebp = 0
 | 
| -%ifidni %1,ebx	; (%1 == ebx)
 | 
| -	; db 0x8D,0x9C + jmp near const_base =
 | 
| -	;   lea ebx, [ecx+ebp*8+(const_base-%%ref)] ; 8D,9C,E9,(offset32)
 | 
| -	db	0x8D,0x9C		; 8D,9C
 | 
| -	jmp	near const_base		; E9,(const_base-%%ref)
 | 
| +        push    ebp
 | 
| +        xor     ebp,ebp         ; ebp = 0
 | 
| +%ifidni %1,ebx  ; (%1 == ebx)
 | 
| +        ; db 0x8D,0x9C + jmp near const_base =
 | 
| +        ;   lea ebx, [ecx+ebp*8+(const_base-%%ref)] ; 8D,9C,E9,(offset32)
 | 
| +        db      0x8D,0x9C               ; 8D,9C
 | 
| +        jmp     near const_base         ; E9,(const_base-%%ref)
 | 
|  %%ref:
 | 
|  %else  ; (%1 != ebx)
 | 
| -	; db 0x8D,0x8C + jmp near const_base =
 | 
| -	;   lea ecx, [ecx+ebp*8+(const_base-%%ref)] ; 8D,8C,E9,(offset32)
 | 
| -	db	0x8D,0x8C		; 8D,8C
 | 
| -	jmp	near const_base		; E9,(const_base-%%ref)
 | 
| -%%ref:	mov	%1, ecx
 | 
| +        ; db 0x8D,0x8C + jmp near const_base =
 | 
| +        ;   lea ecx, [ecx+ebp*8+(const_base-%%ref)] ; 8D,8C,E9,(offset32)
 | 
| +        db      0x8D,0x8C               ; 8D,8C
 | 
| +        jmp     near const_base         ; E9,(const_base-%%ref)
 | 
| +%%ref:  mov     %1, ecx
 | 
|  %endif ; (%1 == ebx)
 | 
| -	pop	ebp
 | 
| +        pop     ebp
 | 
|  %endmacro
 | 
|  
 | 
| -%else	; GOT_SYMBOL != _MACHO_PIC_ ----------------
 | 
| +%else   ; GOT_SYMBOL != _MACHO_PIC_ ----------------
 | 
|  
 | 
|  %define GOTOFF(got,sym) (got) + (sym) wrt ..gotoff
 | 
|  
 | 
| -%imacro get_GOT	1
 | 
| -	extern	GOT_SYMBOL
 | 
| -	call	%%geteip
 | 
| -	add	%1, GOT_SYMBOL + $$ - $ wrt ..gotpc
 | 
| -	jmp	short %%done
 | 
| +%imacro get_GOT 1
 | 
| +        extern  GOT_SYMBOL
 | 
| +        call    %%geteip
 | 
| +        add     %1, GOT_SYMBOL + $$ - $ wrt ..gotpc
 | 
| +        jmp     short %%done
 | 
|  %%geteip:
 | 
| -	mov	%1, POINTER [esp]
 | 
| -	ret
 | 
| +        mov     %1, POINTER [esp]
 | 
| +        ret
 | 
|  %%done:
 | 
|  %endmacro
 | 
|  
 | 
| -%endif	; GOT_SYMBOL == _MACHO_PIC_ ----------------
 | 
| +%endif  ; GOT_SYMBOL == _MACHO_PIC_ ----------------
 | 
|  
 | 
| -%imacro pushpic	1.nolist
 | 
| -	push	%1
 | 
| +%imacro pushpic 1.nolist
 | 
| +        push    %1
 | 
|  %endmacro
 | 
| -%imacro poppic	1.nolist
 | 
| -	pop	%1
 | 
| +%imacro poppic  1.nolist
 | 
| +        pop     %1
 | 
|  %endmacro
 | 
| -%imacro movpic	2.nolist
 | 
| -	mov	%1,%2
 | 
| +%imacro movpic  2.nolist
 | 
| +        mov     %1,%2
 | 
|  %endmacro
 | 
|  
 | 
| -%else	; !PIC -----------------------------------------
 | 
| +%else   ; !PIC -----------------------------------------
 | 
|  
 | 
|  %define GOTOFF(got,sym) (sym)
 | 
|  
 | 
| -%imacro get_GOT	1.nolist
 | 
| +%imacro get_GOT 1.nolist
 | 
|  %endmacro
 | 
| -%imacro pushpic	1.nolist
 | 
| +%imacro pushpic 1.nolist
 | 
|  %endmacro
 | 
| -%imacro poppic	1.nolist
 | 
| +%imacro poppic  1.nolist
 | 
|  %endmacro
 | 
| -%imacro movpic	2.nolist
 | 
| +%imacro movpic  2.nolist
 | 
|  %endmacro
 | 
|  
 | 
| -%endif	;  PIC -----------------------------------------
 | 
| +%endif  ;  PIC -----------------------------------------
 | 
|  
 | 
|  ; --------------------------------------------------------------------------
 | 
|  ;  Align the next instruction on {2,4,8,16,..}-byte boundary.
 | 
| @@ -281,28 +278,28 @@ const_base:
 | 
|  %define FILLB(b,n)  (($$-(b)) & ((n)-1))
 | 
|  
 | 
|  %imacro alignx 1-2.nolist 0xFFFF
 | 
| -%%bs:	times MSKLE(FILLB(%%bs,%1),%2) & MSKLE(16,FILLB($,%1)) & FILLB($,%1) \
 | 
| -	       db 0x90                               ; nop
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/9 \
 | 
| -	       db 0x8D,0x9C,0x23,0x00,0x00,0x00,0x00 ; lea ebx,[ebx+0x00000000]
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/7 \
 | 
| -	       db 0x8D,0xAC,0x25,0x00,0x00,0x00,0x00 ; lea ebp,[ebp+0x00000000]
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/6 \
 | 
| -	       db 0x8D,0xAD,0x00,0x00,0x00,0x00      ; lea ebp,[ebp+0x00000000]
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/4 \
 | 
| -	       db 0x8D,0x6C,0x25,0x00                ; lea ebp,[ebp+0x00]
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/3 \
 | 
| -	       db 0x8D,0x6D,0x00                     ; lea ebp,[ebp+0x00]
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/2 \
 | 
| -	       db 0x8B,0xED                          ; mov ebp,ebp
 | 
| -	times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/1 \
 | 
| -	       db 0x90                               ; nop
 | 
| +%%bs:   times MSKLE(FILLB(%%bs,%1),%2) & MSKLE(16,FILLB($,%1)) & FILLB($,%1) \
 | 
| +               db 0x90                               ; nop
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/9 \
 | 
| +               db 0x8D,0x9C,0x23,0x00,0x00,0x00,0x00 ; lea ebx,[ebx+0x00000000]
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/7 \
 | 
| +               db 0x8D,0xAC,0x25,0x00,0x00,0x00,0x00 ; lea ebp,[ebp+0x00000000]
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/6 \
 | 
| +               db 0x8D,0xAD,0x00,0x00,0x00,0x00      ; lea ebp,[ebp+0x00000000]
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/4 \
 | 
| +               db 0x8D,0x6C,0x25,0x00                ; lea ebp,[ebp+0x00]
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/3 \
 | 
| +               db 0x8D,0x6D,0x00                     ; lea ebp,[ebp+0x00]
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/2 \
 | 
| +               db 0x8B,0xED                          ; mov ebp,ebp
 | 
| +        times MSKLE(FILLB(%%bs,%1),%2) & FILLB($,%1)/1 \
 | 
| +               db 0x90                               ; nop
 | 
|  %endmacro
 | 
|  
 | 
|  ; Align the next data on {2,4,8,16,..}-byte boundary.
 | 
|  ;
 | 
|  %imacro alignz 1.nolist
 | 
| -	align %1, db 0		; filling zeros
 | 
| +        align %1, db 0          ; filling zeros
 | 
|  %endmacro
 | 
|  
 | 
|  %ifdef __x86_64__
 | 
| @@ -310,61 +307,61 @@ const_base:
 | 
|  %ifdef WIN64
 | 
|  
 | 
|  %imacro collect_args 0
 | 
| -	push r12
 | 
| -	push r13
 | 
| -	push r14
 | 
| -	push r15
 | 
| -	mov r10, rcx
 | 
| -	mov r11, rdx
 | 
| -	mov r12, r8
 | 
| -	mov r13, r9
 | 
| -	mov r14, [rax+48]
 | 
| -	mov r15, [rax+56]
 | 
| -	push rsi
 | 
| -	push rdi
 | 
| -	sub     rsp, SIZEOF_XMMWORD
 | 
| -	movaps  XMMWORD [rsp], xmm6
 | 
| -	sub     rsp, SIZEOF_XMMWORD
 | 
| -	movaps  XMMWORD [rsp], xmm7
 | 
| +        push r12
 | 
| +        push r13
 | 
| +        push r14
 | 
| +        push r15
 | 
| +        mov r10, rcx
 | 
| +        mov r11, rdx
 | 
| +        mov r12, r8
 | 
| +        mov r13, r9
 | 
| +        mov r14, [rax+48]
 | 
| +        mov r15, [rax+56]
 | 
| +        push rsi
 | 
| +        push rdi
 | 
| +        sub     rsp, SIZEOF_XMMWORD
 | 
| +        movaps  XMMWORD [rsp], xmm6
 | 
| +        sub     rsp, SIZEOF_XMMWORD
 | 
| +        movaps  XMMWORD [rsp], xmm7
 | 
|  %endmacro
 | 
|  
 | 
|  %imacro uncollect_args 0
 | 
| -	movaps  xmm7, XMMWORD [rsp]
 | 
| -	add     rsp, SIZEOF_XMMWORD
 | 
| -	movaps  xmm6, XMMWORD [rsp]
 | 
| -	add     rsp, SIZEOF_XMMWORD
 | 
| -	pop rdi
 | 
| -	pop rsi
 | 
| -	pop r15
 | 
| -	pop r14
 | 
| -	pop r13
 | 
| -	pop r12
 | 
| +        movaps  xmm7, XMMWORD [rsp]
 | 
| +        add     rsp, SIZEOF_XMMWORD
 | 
| +        movaps  xmm6, XMMWORD [rsp]
 | 
| +        add     rsp, SIZEOF_XMMWORD
 | 
| +        pop rdi
 | 
| +        pop rsi
 | 
| +        pop r15
 | 
| +        pop r14
 | 
| +        pop r13
 | 
| +        pop r12
 | 
|  %endmacro
 | 
|  
 | 
|  %else
 | 
|  
 | 
|  %imacro collect_args 0
 | 
| -	push r10
 | 
| -	push r11
 | 
| -	push r12
 | 
| -	push r13
 | 
| -	push r14
 | 
| -	push r15
 | 
| -	mov r10, rdi
 | 
| -	mov r11, rsi
 | 
| -	mov r12, rdx
 | 
| -	mov r13, rcx
 | 
| -	mov r14, r8
 | 
| -	mov r15, r9
 | 
| +        push r10
 | 
| +        push r11
 | 
| +        push r12
 | 
| +        push r13
 | 
| +        push r14
 | 
| +        push r15
 | 
| +        mov r10, rdi
 | 
| +        mov r11, rsi
 | 
| +        mov r12, rdx
 | 
| +        mov r13, rcx
 | 
| +        mov r14, r8
 | 
| +        mov r15, r9
 | 
|  %endmacro
 | 
|  
 | 
|  %imacro uncollect_args 0
 | 
| -	pop r15
 | 
| -	pop r14
 | 
| -	pop r13
 | 
| -	pop r12
 | 
| -	pop r11
 | 
| -	pop r10
 | 
| +        pop r15
 | 
| +        pop r14
 | 
| +        pop r13
 | 
| +        pop r12
 | 
| +        pop r11
 | 
| +        pop r10
 | 
|  %endmacro
 | 
|  
 | 
|  %endif
 | 
| @@ -376,14 +373,4 @@ const_base:
 | 
|  ;
 | 
|  %include "jsimdcfg.inc"
 | 
|  
 | 
| -; Begin chromium edits
 | 
| -%ifdef MACHO ; ----(nasm -fmacho -DMACHO ...)--------
 | 
| -%define PRIVATE :private_extern
 | 
| -%elifdef ELF ; ----(nasm -felf[64] -DELF ...)------------
 | 
| -%define PRIVATE :hidden
 | 
| -%else
 | 
| -%define PRIVATE
 | 
| -%endif
 | 
| -; End chromium edits
 | 
| -
 | 
|  ; --------------------------------------------------------------------------
 | 
| 
 |