Home | History | Annotate | Line # | Download | only in powerpc64
ecp_nistp521-ppc64.S revision 1.1
      1 .text
      2 
      3 .globl	p521_felem_mul
      4 .type	p521_felem_mul,@function
      5 .section	".opd","aw"
      6 .align	3
      7 p521_felem_mul:
      8 .quad	.p521_felem_mul,.TOC.@tocbase,0
      9 .previous
     10 .align	5
     11 .p521_felem_mul:
     12 
     13 	mr	12,1
     14 	stdu	1,-16*13(1)
     15 
     16 	stxv	52,-16*12(12)
     17 	stxv	53,-16*11(12)
     18 	stxv	54,-16*10(12)
     19 	stxv	55,-16*9(12)
     20 	stxv	56,-16*8(12)
     21 	stxv	57,-16*7(12)
     22 	stxv	58,-16*6(12)
     23 	stxv	59,-16*5(12)
     24 	stxv	60,-16*4(12)
     25 	stxv	61,-16*3(12)
     26 	stxv	62,-16*2(12)
     27 	stxv	63,-16*1(12)
     28 
     29 	vspltisw	0,0
     30 
     31 	lxsd	13,0(4)
     32 	lxsd	14,8(4)
     33 	lxsd	15,16(4)
     34 	lxsd	16,24(4)
     35 	lxsd	17,32(4)
     36 	lxsd	18,40(4)
     37 	lxsd	19,48(4)
     38 	lxsd	20,56(4)
     39 	lxsd	21,64(4)
     40 
     41 	lxsd	3,0(5)
     42 	lxsd	4,8(5)
     43 	lxsd	5,16(5)
     44 	lxsd	6,24(5)
     45 	lxsd	7,32(5)
     46 	lxsd	8,40(5)
     47 	lxsd	9,48(5)
     48 	lxsd	10,56(5)
     49 	lxsd	11,64(5)
     50 
     51 .long	0x12ED1823
     52 
     53 	xxpermdi	33,45,46,0b00
     54 	xxpermdi	34,36,35,0b00
     55 .long	0x13011023
     56 
     57 	xxpermdi	34,37,36,0b00
     58 .long	0x13211023
     59 .long	0x132F1E63
     60 
     61 	xxpermdi	34,38,37,0b00
     62 .long	0x13411023
     63 	xxpermdi	44,47,48,0b00
     64 	xxpermdi	54,36,35,0b00
     65 .long	0x134CB6A3
     66 
     67 	xxpermdi	34,39,38,0b00
     68 .long	0x13611023
     69 	xxpermdi	54,37,36,0b00
     70 .long	0x136CB6E3
     71 .long	0x13711EE3
     72 
     73 	xxpermdi	34,40,39,0b00
     74 .long	0x13811023
     75 	xxpermdi	54,38,37,0b00
     76 .long	0x138CB723
     77 
     78 	xxpermdi	34,41,40,0b00
     79 .long	0x13A11023
     80 	xxpermdi	54,39,38,0b00
     81 .long	0x13ACB763
     82 
     83 	xxpermdi	34,42,41,0b00
     84 .long	0x13C11023
     85 	xxpermdi	54,40,39,0b00
     86 .long	0x13CCB7A3
     87 
     88 	xxpermdi	34,43,42,0b00
     89 .long	0x13E11023
     90 	xxpermdi	54,41,40,0b00
     91 .long	0x13ECB7E3
     92 
     93 	xxpermdi	33,49,50,0b00
     94 	xxpermdi	34,36,35,0b00
     95 .long	0x13811723
     96 
     97 	xxpermdi	34,37,36,0b00
     98 .long	0x13A11763
     99 .long	0x13B31F63
    100 
    101 	xxpermdi	34,38,37,0b00
    102 .long	0x13C117A3
    103 	xxpermdi	44,51,52,0b00
    104 	xxpermdi	54,36,35,0b00
    105 .long	0x13CCB7A3
    106 
    107 	xxpermdi	34,39,38,0b00
    108 .long	0x13E117E3
    109 	xxpermdi	54,37,36,0b00
    110 .long	0x13ECB7E3
    111 .long	0x13F51FE3
    112 
    113 	li	8,0
    114 	li	9,1
    115 	mtvsrdd	33,9,8
    116 .long	0x10630DC4
    117 .long	0x10840DC4
    118 .long	0x10A50DC4
    119 .long	0x10C60DC4
    120 .long	0x10E70DC4
    121 .long	0x11080DC4
    122 .long	0x11290DC4
    123 .long	0x114A0DC4
    124 .long	0x116B0DC4
    125 
    126 .long	0x13D55FA3
    127 
    128 	xxpermdi	34,43,42,0b00
    129 	xxpermdi	33,52,53,0b00
    130 .long	0x13A11763
    131 
    132 	xxpermdi	33,51,52,0b00
    133 .long	0x13811723
    134 .long	0x13954F23
    135 
    136 	xxpermdi	33,50,51,0b00
    137 .long	0x136116E3
    138 	xxpermdi	54,41,40,0b00
    139 	xxpermdi	44,52,53,0b00
    140 .long	0x136CB6E3
    141 
    142 	xxpermdi	33,49,50,0b00
    143 .long	0x134116A3
    144 	xxpermdi	44,51,52,0b00
    145 .long	0x134CB6A3
    146 .long	0x13553EA3
    147 
    148 	xxpermdi	33,48,49,0b00
    149 .long	0x13211663
    150 	xxpermdi	44,50,51,0b00
    151 .long	0x132CB663
    152 
    153 	xxpermdi	33,47,48,0b00
    154 .long	0x13011623
    155 	xxpermdi	44,49,50,0b00
    156 .long	0x130CB623
    157 
    158 	xxpermdi	33,46,47,0b00
    159 .long	0x12E115E3
    160 	xxpermdi	44,48,49,0b00
    161 .long	0x12ECB5E3
    162 
    163 	xxpermdi	34,39,38,0b00
    164 	xxpermdi	33,52,53,0b00
    165 .long	0x13211663
    166 
    167 	xxpermdi	33,51,52,0b00
    168 .long	0x13011623
    169 .long	0x13152E23
    170 
    171 	xxpermdi	33,50,51,0b00
    172 .long	0x12E115E3
    173 	xxpermdi	54,37,36,0b00
    174 	xxpermdi	44,52,53,0b00
    175 .long	0x12ECB5E3
    176 
    177 	stxv	55,0(3)
    178 	stxv	56,16(3)
    179 	stxv	57,32(3)
    180 	stxv	58,48(3)
    181 	stxv	59,64(3)
    182 	stxv	60,80(3)
    183 	stxv	61,96(3)
    184 	stxv	62,112(3)
    185 	stxv	63,128(3)
    186 
    187 	ld	12,0(1)
    188 	lxv	52,-16*12(12)
    189 	lxv	53,-16*11(12)
    190 	lxv	54,-16*10(12)
    191 	lxv	55,-16*9(12)
    192 	lxv	56,-16*8(12)
    193 	lxv	57,-16*7(12)
    194 	lxv	58,-16*6(12)
    195 	lxv	59,-16*5(12)
    196 	lxv	60,-16*4(12)
    197 	lxv	61,-16*3(12)
    198 	lxv	62,-16*2(12)
    199 	lxv	63,-16*1(12)
    200 	mr	1,12
    201 
    202 	blr
    203 
    204 
    205 .globl	p521_felem_square
    206 .type	p521_felem_square,@function
    207 .section	".opd","aw"
    208 .align	3
    209 p521_felem_square:
    210 .quad	.p521_felem_square,.TOC.@tocbase,0
    211 .previous
    212 .align	5
    213 .p521_felem_square:
    214 
    215 	mr	12,1
    216 	stdu	1,-16*13(1)
    217 
    218 	stxv	52,-16*12(12)
    219 	stxv	53,-16*11(12)
    220 	stxv	54,-16*10(12)
    221 	stxv	55,-16*9(12)
    222 	stxv	56,-16*8(12)
    223 	stxv	57,-16*7(12)
    224 	stxv	58,-16*6(12)
    225 	stxv	59,-16*5(12)
    226 	stxv	60,-16*4(12)
    227 	stxv	61,-16*3(12)
    228 	stxv	62,-16*2(12)
    229 	stxv	63,-16*1(12)
    230 
    231 	vspltisw	0,0
    232 
    233 	lxsd	13,0(4)
    234 	lxsd	14,8(4)
    235 	lxsd	15,16(4)
    236 	lxsd	16,24(4)
    237 	lxsd	17,32(4)
    238 	lxsd	18,40(4)
    239 	lxsd	19,48(4)
    240 	lxsd	20,56(4)
    241 	lxsd	21,64(4)
    242 
    243 	li	8,0
    244 	li	9,1
    245 	mtvsrdd	33,9,8
    246 .long	0x106D0DC4
    247 .long	0x108E0DC4
    248 .long	0x10AF0DC4
    249 .long	0x10D00DC4
    250 .long	0x10F10DC4
    251 .long	0x11120DC4
    252 .long	0x11330DC4
    253 .long	0x11540DC4
    254 .long	0x11750DC4
    255 .long	0x12ED6823
    256 
    257 .long	0x130D2023
    258 
    259 	xxpermdi	33,45,46,0b00
    260 	xxpermdi	34,37,46,0b00
    261 .long	0x13211023
    262 
    263 	xxpermdi	34,38,37,0b00
    264 .long	0x13411023
    265 
    266 	xxpermdi	34,39,38,0b00
    267 .long	0x13611023
    268 .long	0x136F7EE3
    269 
    270 	xxpermdi	34,40,39,0b00
    271 .long	0x13811023
    272 .long	0x138F3723
    273 
    274 	xxpermdi	34,41,40,0b00
    275 .long	0x13A11023
    276 	xxpermdi	44,47,48,0b00
    277 	xxpermdi	54,39,48,0b00
    278 .long	0x13ACB763
    279 
    280 	xxpermdi	34,42,41,0b00
    281 .long	0x13C11023
    282 	xxpermdi	54,40,39,0b00
    283 .long	0x13CCB7A3
    284 
    285 	xxpermdi	34,43,42,0b00
    286 .long	0x13E11023
    287 	xxpermdi	54,41,40,0b00
    288 .long	0x13ECB7E3
    289 .long	0x13F18FE3
    290 
    291 .long	0x13124623
    292 
    293 .long	0x13534EA3
    294 
    295 .long	0x13945723
    296 
    297 .long	0x13D55FA3
    298 
    299 	mtvsrdd	33,9,8
    300 .long	0x11080DC4
    301 .long	0x11290DC4
    302 .long	0x114A0DC4
    303 .long	0x116B0DC4
    304 
    305 .long	0x13B45F63
    306 
    307 .long	0x13935F23
    308 
    309 	xxpermdi	34,43,42,0b00
    310 	xxpermdi	33,50,51,0b00
    311 .long	0x136116E3
    312 
    313 	xxpermdi	33,49,50,0b00
    314 .long	0x134116A3
    315 
    316 	xxpermdi	33,48,49,0b00
    317 .long	0x13211663
    318 .long	0x13324E63
    319 
    320 	xxpermdi	33,47,48,0b00
    321 .long	0x13011623
    322 .long	0x13114E23
    323 
    324 	xxpermdi	33,46,47,0b00
    325 .long	0x12E115E3
    326 	xxpermdi	34,41,40,0b00
    327 	xxpermdi	33,48,49,0b00
    328 .long	0x12E115E3
    329 
    330 	stxv	55,0(3)
    331 	stxv	56,16(3)
    332 	stxv	57,32(3)
    333 	stxv	58,48(3)
    334 	stxv	59,64(3)
    335 	stxv	60,80(3)
    336 	stxv	61,96(3)
    337 	stxv	62,112(3)
    338 	stxv	63,128(3)
    339 
    340 	ld	12,0(1)
    341 	lxv	52,-16*12(12)
    342 	lxv	53,-16*11(12)
    343 	lxv	54,-16*10(12)
    344 	lxv	55,-16*9(12)
    345 	lxv	56,-16*8(12)
    346 	lxv	57,-16*7(12)
    347 	lxv	58,-16*6(12)
    348 	lxv	59,-16*5(12)
    349 	lxv	60,-16*4(12)
    350 	lxv	61,-16*3(12)
    351 	lxv	62,-16*2(12)
    352 	lxv	63,-16*1(12)
    353 	mr	1,12
    354 
    355 	blr
    356 
    357 
    358