1 # Copyright (c) 2011-2012, Andy Polyakov <appro@openssl.org>
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions
8 # * Redistributions of source code must retain copyright notices,
9 # this list of conditions and the following disclaimer.
11 # * Redistributions in binary form must reproduce the above
12 # copyright notice, this list of conditions and the following
13 # disclaimer in the documentation and/or other materials
14 # provided with the distribution.
16 # * Neither the name of the Andy Polyakov nor the names of its
17 # copyright holder and contributors may be used to endorse or
18 # promote products derived from this software without specific
19 # prior written permission.
21 # ALTERNATIVELY, provided that this notice is retained in full, this
22 # product may be distributed under the terms of the GNU General Public
23 # License (GPL), in which case the provisions of the GPL apply INSTEAD OF
26 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
27 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
28 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
29 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
32 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
33 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
34 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
35 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
36 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
38 # *** This file is auto-generated ***
43 .globl sha256_block_data_order
44 .def sha256_block_data_order; .scl 2; .type 32; .endef
46 sha256_block_data_order:
50 .LSEH_begin_sha256_block_data_order:
55 leaq _gnutls_x86_cpuid_s(%rip),%r11
70 leaq (%rsi,%rdx,4),%rdx
1714 movq 64+0(%rsp),%rdi
1727 cmpq 64+16(%rsp),%rsi
1739 movq 64+24(%rsp),%rsi
1751 .LSEH_end_sha256_block_data_order:
1755 .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
1756 .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5
1757 .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
1758 .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5
1759 .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
1760 .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3
1761 .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
1762 .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174
1763 .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
1764 .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc
1765 .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
1766 .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da
1767 .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
1768 .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7
1769 .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
1770 .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967
1771 .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
1772 .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13
1773 .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
1774 .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85
1775 .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
1776 .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3
1777 .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070
1778 .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070
1779 .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
1780 .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5
1781 .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
1782 .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3
1783 .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
1784 .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
1785 .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
1786 .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
1788 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
1789 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
1790 .long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff
1791 .long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff
1792 .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908
1793 .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908
1794 .byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
1795 .def sha256_block_data_order_ssse3; .scl 3; .type 32; .endef
1797 sha256_block_data_order_ssse3:
1801 .LSEH_begin_sha256_block_data_order_ssse3:
1816 leaq (%rsi,%rdx,4),%rdx
1818 movq %rdi,64+0(%rsp)
1819 movq %rsi,64+8(%rsp)
1820 movq %rdx,64+16(%rsp)
1821 movq %r11,64+24(%rsp)
1822 movaps %xmm6,64+32(%rsp)
1823 movaps %xmm7,64+48(%rsp)
1824 movaps %xmm8,64+64(%rsp)
1825 movaps %xmm9,64+80(%rsp)
1841 movdqa K256+512(%rip),%xmm7
1842 movdqu 0(%rsi),%xmm0
1843 movdqu 16(%rsi),%xmm1
1844 movdqu 32(%rsi),%xmm2
1845 movdqu 48(%rsi),%xmm3
1846 .byte 102,15,56,0,199
1847 leaq K256(%rip),%rbp
1848 .byte 102,15,56,0,207
1849 movdqa 0(%rbp),%xmm4
1850 .byte 102,15,56,0,215
1851 movdqa 32(%rbp),%xmm5
1853 movdqa 64(%rbp),%xmm6
1854 .byte 102,15,56,0,223
1855 movdqa 96(%rbp),%xmm7
1859 movdqa %xmm4,0(%rsp)
1861 movdqa %xmm5,16(%rsp)
1863 movdqa %xmm6,32(%rsp)
1865 movdqa %xmm7,48(%rsp)
1882 .byte 102,15,58,15,224,4
1885 .byte 102,15,58,15,250,4
1906 pshufd $250,%xmm3,%xmm7
1957 pshufd $128,%xmm7,%xmm7
1971 pshufd $80,%xmm0,%xmm7
1998 pshufd $8,%xmm7,%xmm7
2001 movdqa 0(%rbp),%xmm6
2015 movdqa %xmm6,0(%rsp)
2026 .byte 102,15,58,15,225,4
2029 .byte 102,15,58,15,251,4
2050 pshufd $250,%xmm0,%xmm7
2101 pshufd $128,%xmm7,%xmm7
2115 pshufd $80,%xmm1,%xmm7
2142 pshufd $8,%xmm7,%xmm7
2145 movdqa 32(%rbp),%xmm6
2159 movdqa %xmm6,16(%rsp)
2170 .byte 102,15,58,15,226,4
2173 .byte 102,15,58,15,248,4
2194 pshufd $250,%xmm1,%xmm7
2245 pshufd $128,%xmm7,%xmm7
2259 pshufd $80,%xmm2,%xmm7
2286 pshufd $8,%xmm7,%xmm7
2289 movdqa 64(%rbp),%xmm6
2303 movdqa %xmm6,32(%rsp)
2314 .byte 102,15,58,15,227,4
2317 .byte 102,15,58,15,249,4
2338 pshufd $250,%xmm2,%xmm7
2389 pshufd $128,%xmm7,%xmm7
2403 pshufd $80,%xmm3,%xmm7
2430 pshufd $8,%xmm7,%xmm7
2433 movdqa 96(%rbp),%xmm6
2447 movdqa %xmm6,48(%rsp)