1/* $FreeBSD$ */ 2/* Do not modify. This file is auto-generated from poly1305-ppc.pl. */ 3.machine "any" 4.text 5.globl poly1305_init_int 6.type poly1305_init_int,@function 7.align 4 8poly1305_init_int: 9 xor 0,0,0 10 stw 0,0(3) 11 stw 0,4(3) 12 stw 0,8(3) 13 stw 0,12(3) 14 stw 0,16(3) 15 16 .long 0x7c040040 17 beq- .Lno_key 18 li 8,4 19 lwbrx 7,0,4 20 li 9,8 21 lwbrx 8,8,4 22 li 10,12 23 lwbrx 9,9,4 24 lwbrx 10,10,4 25 lis 0,0xf000 26 li 12,-4 27 andc 12,12,0 28 29 andc 7,7,0 30 and 8,8,12 31 and 9,9,12 32 and 10,10,12 33 34 stw 7,32(3) 35 stw 8,36(3) 36 stw 9,40(3) 37 stw 10,44(3) 38 39.Lno_key: 40 xor 3,3,3 41 blr 42.long 0 43.byte 0,12,0x14,0,0,0,2,0 44.size poly1305_init_int,.-poly1305_init_int 45 46.globl poly1305_blocks 47.type poly1305_blocks,@function 48.align 4 49poly1305_blocks: 50 srwi. 5,5,4 51 beq- .Labort 52 53 stwu 1,-96(1) 54 mflr 0 55 stw 14,24(1) 56 stw 15,28(1) 57 stw 16,32(1) 58 stw 17,36(1) 59 stw 18,40(1) 60 stw 19,44(1) 61 stw 20,48(1) 62 stw 21,52(1) 63 stw 22,56(1) 64 stw 23,60(1) 65 stw 24,64(1) 66 stw 25,68(1) 67 stw 26,72(1) 68 stw 27,76(1) 69 stw 28,80(1) 70 stw 29,84(1) 71 stw 30,88(1) 72 stw 31,92(1) 73 stw 0,100(1) 74 75 lwz 12,32(3) 76 lwz 14,36(3) 77 lwz 15,40(3) 78 lwz 16,44(3) 79 80 lwz 7,0(3) 81 lwz 8,4(3) 82 lwz 9,8(3) 83 lwz 10,12(3) 84 lwz 11,16(3) 85 86 srwi 17,14,2 87 srwi 18,15,2 88 srwi 19,16,2 89 add 17,17,14 90 add 18,18,15 91 add 19,19,16 92 mtctr 5 93 li 0,3 94 b .Loop 95 96.align 4 97.Loop: 98 li 29,4 99 lwbrx 28,0,4 100 li 30,8 101 lwbrx 29,29,4 102 li 31,12 103 lwbrx 30,30,4 104 lwbrx 31,31,4 105 addi 4,4,16 106 107 addc 7,7,28 108 adde 8,8,29 109 adde 9,9,30 110 111 mullw 28,7,12 112 mulhwu 24,7,12 113 114 mullw 29,7,14 115 mulhwu 25,7,14 116 117 mullw 30,7,15 118 mulhwu 26,7,15 119 120 adde 10,10,31 121 adde 11,11,6 122 123 mullw 31,7,16 124 mulhwu 27,7,16 125 126 mullw 20,8,19 127 mulhwu 21,8,19 128 129 mullw 22,8,12 130 mulhwu 23,8,12 131 addc 28,28,20 132 adde 24,24,21 133 134 mullw 20,8,14 135 mulhwu 21,8,14 136 addc 29,29,22 137 adde 25,25,23 138 139 mullw 22,8,15 140 mulhwu 23,8,15 141 addc 30,30,20 142 adde 26,26,21 143 144 mullw 20,9,18 145 mulhwu 21,9,18 146 addc 31,31,22 147 adde 27,27,23 148 149 mullw 22,9,19 150 mulhwu 23,9,19 151 addc 28,28,20 152 adde 24,24,21 153 154 mullw 20,9,12 155 mulhwu 21,9,12 156 addc 29,29,22 157 adde 25,25,23 158 159 mullw 22,9,14 160 mulhwu 23,9,14 161 addc 30,30,20 162 adde 26,26,21 163 164 mullw 20,10,17 165 mulhwu 21,10,17 166 addc 31,31,22 167 adde 27,27,23 168 169 mullw 22,10,18 170 mulhwu 23,10,18 171 addc 28,28,20 172 adde 24,24,21 173 174 mullw 20,10,19 175 mulhwu 21,10,19 176 addc 29,29,22 177 adde 25,25,23 178 179 mullw 22,10,12 180 mulhwu 23,10,12 181 addc 30,30,20 182 adde 26,26,21 183 184 mullw 20,11,17 185 addc 31,31,22 186 adde 27,27,23 187 addc 29,29,20 188 189 mullw 21,11,18 190 addze 25,25 191 addc 30,30,21 192 addze 26,26 193 194 mullw 22,11,19 195 addc 31,31,22 196 addze 27,27 197 198 mullw 11,11,12 199 200 addc 8,29,24 201 adde 9,30,25 202 adde 10,31,26 203 adde 11,11,27 204 205 andc 24,11,0 206 and 11,11,0 207 srwi 25,24,2 208 add 24,24,25 209 addc 7,28,24 210 addze 8,8 211 addze 9,9 212 addze 10,10 213 addze 11,11 214 215 bdnz .Loop 216 217 stw 7,0(3) 218 stw 8,4(3) 219 stw 9,8(3) 220 stw 10,12(3) 221 stw 11,16(3) 222 223 lwz 14,24(1) 224 lwz 15,28(1) 225 lwz 16,32(1) 226 lwz 17,36(1) 227 lwz 18,40(1) 228 lwz 19,44(1) 229 lwz 20,48(1) 230 lwz 21,52(1) 231 lwz 22,56(1) 232 lwz 23,60(1) 233 lwz 24,64(1) 234 lwz 25,68(1) 235 lwz 26,72(1) 236 lwz 27,76(1) 237 lwz 28,80(1) 238 lwz 29,84(1) 239 lwz 30,88(1) 240 lwz 31,92(1) 241 addi 1,1,96 242.Labort: 243 blr 244.long 0 245.byte 0,12,4,1,0x80,18,4,0 246.size poly1305_blocks,.-poly1305_blocks 247 248.globl poly1305_emit 249.type poly1305_emit,@function 250.align 4 251poly1305_emit: 252 stwu 1,-96(1) 253 mflr 0 254 stw 28,80(1) 255 stw 29,84(1) 256 stw 30,88(1) 257 stw 31,92(1) 258 stw 0,100(1) 259 260 lwz 7,0(3) 261 lwz 8,4(3) 262 lwz 9,8(3) 263 lwz 10,12(3) 264 lwz 11,16(3) 265 266 addic 28,7,5 267 addze 29,8 268 addze 30,9 269 addze 31,10 270 addze 0,11 271 272 srwi 0,0,2 273 neg 0,0 274 275 andc 7,7,0 276 and 28,28,0 277 andc 8,8,0 278 and 29,29,0 279 or 7,7,28 280 lwz 28,0(5) 281 andc 9,9,0 282 and 30,30,0 283 or 8,8,29 284 lwz 29,4(5) 285 andc 10,10,0 286 and 31,31,0 287 or 9,9,30 288 lwz 30,8(5) 289 or 10,10,31 290 lwz 31,12(5) 291 292 addc 7,7,28 293 adde 8,8,29 294 adde 9,9,30 295 adde 10,10,31 296 li 29,4 297 stwbrx 7,0,4 298 li 30,8 299 stwbrx 8,29,4 300 li 31,12 301 stwbrx 9,30,4 302 stwbrx 10,31,4 303 lwz 28,80(1) 304 lwz 29,84(1) 305 lwz 30,88(1) 306 lwz 31,92(1) 307 addi 1,1,96 308 blr 309.long 0 310.byte 0,12,4,1,0x80,4,3,0 311.size poly1305_emit,.-poly1305_emit 312.byte 80,111,108,121,49,51,48,53,32,102,111,114,32,80,80,67,44,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 313.align 2 314