github.com/songzhibin97/go-baseutils@v0.0.2-0.20240302024150-487d8ce9c082/sys/xxhash3/sse2_amd64.s (about) 1 2 3 // Code generated by command: go run gen.go -sse2 -out ./sse2.s. DO NOT EDIT. 4 5 #include "textflag.h" 6 7 DATA prime_sse<>+0(SB)/4, $0x9e3779b1 8 DATA prime_sse<>+4(SB)/4, $0x9e3779b1 9 DATA prime_sse<>+8(SB)/4, $0x9e3779b1 10 DATA prime_sse<>+12(SB)/4, $0x9e3779b1 11 GLOBL prime_sse<>(SB), RODATA|NOPTR, $16 12 13 // func accumSSE2(acc *[8]uint64, xinput *byte, xsecret *byte, len uint64) 14 // Requires: SSE2 15 TEXT ·accumSSE2(SB), NOSPLIT, $0-32 16 MOVQ acc+0(FP), AX 17 MOVQ xinput+8(FP), CX 18 MOVQ xsecret+16(FP), DX 19 MOVQ xsecret+16(FP), BX 20 MOVQ len+24(FP), SI 21 MOVOU (AX), X1 22 MOVOU 16(AX), X2 23 MOVOU 32(AX), X3 24 MOVOU 48(AX), X4 25 MOVOU prime_sse<>+0(SB), X0 26 27 accumBlock: 28 CMPQ SI, $0x00000400 29 JLE accumStripe 30 MOVOU (CX), X5 31 MOVOU (DX), X6 32 PXOR X5, X6 33 PSHUFD $0x31, X6, X7 34 PMULULQ X6, X7 35 PSHUFD $0x4e, X5, X5 36 PADDQ X5, X1 37 PADDQ X7, X1 38 MOVOU 16(CX), X5 39 MOVOU 16(DX), X6 40 PXOR X5, X6 41 PSHUFD $0x31, X6, X7 42 PMULULQ X6, X7 43 PSHUFD $0x4e, X5, X5 44 PADDQ X5, X2 45 PADDQ X7, X2 46 MOVOU 32(CX), X5 47 MOVOU 32(DX), X6 48 PXOR X5, X6 49 PSHUFD $0x31, X6, X7 50 PMULULQ X6, X7 51 PSHUFD $0x4e, X5, X5 52 PADDQ X5, X3 53 PADDQ X7, X3 54 MOVOU 48(CX), X5 55 MOVOU 48(DX), X6 56 PXOR X5, X6 57 PSHUFD $0x31, X6, X7 58 PMULULQ X6, X7 59 PSHUFD $0x4e, X5, X5 60 PADDQ X5, X4 61 PADDQ X7, X4 62 MOVOU 64(CX), X5 63 MOVOU 8(DX), X6 64 PXOR X5, X6 65 PSHUFD $0x31, X6, X7 66 PMULULQ X6, X7 67 PSHUFD $0x4e, X5, X5 68 PADDQ X5, X1 69 PADDQ X7, X1 70 MOVOU 80(CX), X5 71 MOVOU 24(DX), X6 72 PXOR X5, X6 73 PSHUFD $0x31, X6, X7 74 PMULULQ X6, X7 75 PSHUFD $0x4e, X5, X5 76 PADDQ X5, X2 77 PADDQ X7, X2 78 MOVOU 96(CX), X5 79 MOVOU 40(DX), X6 80 PXOR X5, X6 81 PSHUFD $0x31, X6, X7 82 PMULULQ X6, X7 83 PSHUFD $0x4e, X5, X5 84 PADDQ X5, X3 85 PADDQ X7, X3 86 MOVOU 112(CX), X5 87 MOVOU 56(DX), X6 88 PXOR X5, X6 89 PSHUFD $0x31, X6, X7 90 PMULULQ X6, X7 91 PSHUFD $0x4e, X5, X5 92 PADDQ X5, X4 93 PADDQ X7, X4 94 MOVOU 128(CX), X5 95 MOVOU 16(DX), X6 96 PXOR X5, X6 97 PSHUFD $0x31, X6, X7 98 PMULULQ X6, X7 99 PSHUFD $0x4e, X5, X5 100 PADDQ X5, X1 101 PADDQ X7, X1 102 MOVOU 144(CX), X5 103 MOVOU 32(DX), X6 104 PXOR X5, X6 105 PSHUFD $0x31, X6, X7 106 PMULULQ X6, X7 107 PSHUFD $0x4e, X5, X5 108 PADDQ X5, X2 109 PADDQ X7, X2 110 MOVOU 160(CX), X5 111 MOVOU 48(DX), X6 112 PXOR X5, X6 113 PSHUFD $0x31, X6, X7 114 PMULULQ X6, X7 115 PSHUFD $0x4e, X5, X5 116 PADDQ X5, X3 117 PADDQ X7, X3 118 MOVOU 176(CX), X5 119 MOVOU 64(DX), X6 120 PXOR X5, X6 121 PSHUFD $0x31, X6, X7 122 PMULULQ X6, X7 123 PSHUFD $0x4e, X5, X5 124 PADDQ X5, X4 125 PADDQ X7, X4 126 MOVOU 192(CX), X5 127 MOVOU 24(DX), X6 128 PXOR X5, X6 129 PSHUFD $0x31, X6, X7 130 PMULULQ X6, X7 131 PSHUFD $0x4e, X5, X5 132 PADDQ X5, X1 133 PADDQ X7, X1 134 MOVOU 208(CX), X5 135 MOVOU 40(DX), X6 136 PXOR X5, X6 137 PSHUFD $0x31, X6, X7 138 PMULULQ X6, X7 139 PSHUFD $0x4e, X5, X5 140 PADDQ X5, X2 141 PADDQ X7, X2 142 MOVOU 224(CX), X5 143 MOVOU 56(DX), X6 144 PXOR X5, X6 145 PSHUFD $0x31, X6, X7 146 PMULULQ X6, X7 147 PSHUFD $0x4e, X5, X5 148 PADDQ X5, X3 149 PADDQ X7, X3 150 MOVOU 240(CX), X5 151 MOVOU 72(DX), X6 152 PXOR X5, X6 153 PSHUFD $0x31, X6, X7 154 PMULULQ X6, X7 155 PSHUFD $0x4e, X5, X5 156 PADDQ X5, X4 157 PADDQ X7, X4 158 MOVOU 256(CX), X5 159 MOVOU 32(DX), X6 160 PXOR X5, X6 161 PSHUFD $0x31, X6, X7 162 PMULULQ X6, X7 163 PSHUFD $0x4e, X5, X5 164 PADDQ X5, X1 165 PADDQ X7, X1 166 MOVOU 272(CX), X5 167 MOVOU 48(DX), X6 168 PXOR X5, X6 169 PSHUFD $0x31, X6, X7 170 PMULULQ X6, X7 171 PSHUFD $0x4e, X5, X5 172 PADDQ X5, X2 173 PADDQ X7, X2 174 MOVOU 288(CX), X5 175 MOVOU 64(DX), X6 176 PXOR X5, X6 177 PSHUFD $0x31, X6, X7 178 PMULULQ X6, X7 179 PSHUFD $0x4e, X5, X5 180 PADDQ X5, X3 181 PADDQ X7, X3 182 MOVOU 304(CX), X5 183 MOVOU 80(DX), X6 184 PXOR X5, X6 185 PSHUFD $0x31, X6, X7 186 PMULULQ X6, X7 187 PSHUFD $0x4e, X5, X5 188 PADDQ X5, X4 189 PADDQ X7, X4 190 MOVOU 320(CX), X5 191 MOVOU 40(DX), X6 192 PXOR X5, X6 193 PSHUFD $0x31, X6, X7 194 PMULULQ X6, X7 195 PSHUFD $0x4e, X5, X5 196 PADDQ X5, X1 197 PADDQ X7, X1 198 MOVOU 336(CX), X5 199 MOVOU 56(DX), X6 200 PXOR X5, X6 201 PSHUFD $0x31, X6, X7 202 PMULULQ X6, X7 203 PSHUFD $0x4e, X5, X5 204 PADDQ X5, X2 205 PADDQ X7, X2 206 MOVOU 352(CX), X5 207 MOVOU 72(DX), X6 208 PXOR X5, X6 209 PSHUFD $0x31, X6, X7 210 PMULULQ X6, X7 211 PSHUFD $0x4e, X5, X5 212 PADDQ X5, X3 213 PADDQ X7, X3 214 MOVOU 368(CX), X5 215 MOVOU 88(DX), X6 216 PXOR X5, X6 217 PSHUFD $0x31, X6, X7 218 PMULULQ X6, X7 219 PSHUFD $0x4e, X5, X5 220 PADDQ X5, X4 221 PADDQ X7, X4 222 MOVOU 384(CX), X5 223 MOVOU 48(DX), X6 224 PXOR X5, X6 225 PSHUFD $0x31, X6, X7 226 PMULULQ X6, X7 227 PSHUFD $0x4e, X5, X5 228 PADDQ X5, X1 229 PADDQ X7, X1 230 MOVOU 400(CX), X5 231 MOVOU 64(DX), X6 232 PXOR X5, X6 233 PSHUFD $0x31, X6, X7 234 PMULULQ X6, X7 235 PSHUFD $0x4e, X5, X5 236 PADDQ X5, X2 237 PADDQ X7, X2 238 MOVOU 416(CX), X5 239 MOVOU 80(DX), X6 240 PXOR X5, X6 241 PSHUFD $0x31, X6, X7 242 PMULULQ X6, X7 243 PSHUFD $0x4e, X5, X5 244 PADDQ X5, X3 245 PADDQ X7, X3 246 MOVOU 432(CX), X5 247 MOVOU 96(DX), X6 248 PXOR X5, X6 249 PSHUFD $0x31, X6, X7 250 PMULULQ X6, X7 251 PSHUFD $0x4e, X5, X5 252 PADDQ X5, X4 253 PADDQ X7, X4 254 MOVOU 448(CX), X5 255 MOVOU 56(DX), X6 256 PXOR X5, X6 257 PSHUFD $0x31, X6, X7 258 PMULULQ X6, X7 259 PSHUFD $0x4e, X5, X5 260 PADDQ X5, X1 261 PADDQ X7, X1 262 MOVOU 464(CX), X5 263 MOVOU 72(DX), X6 264 PXOR X5, X6 265 PSHUFD $0x31, X6, X7 266 PMULULQ X6, X7 267 PSHUFD $0x4e, X5, X5 268 PADDQ X5, X2 269 PADDQ X7, X2 270 MOVOU 480(CX), X5 271 MOVOU 88(DX), X6 272 PXOR X5, X6 273 PSHUFD $0x31, X6, X7 274 PMULULQ X6, X7 275 PSHUFD $0x4e, X5, X5 276 PADDQ X5, X3 277 PADDQ X7, X3 278 MOVOU 496(CX), X5 279 MOVOU 104(DX), X6 280 PXOR X5, X6 281 PSHUFD $0x31, X6, X7 282 PMULULQ X6, X7 283 PSHUFD $0x4e, X5, X5 284 PADDQ X5, X4 285 PADDQ X7, X4 286 MOVOU 512(CX), X5 287 MOVOU 64(DX), X6 288 PXOR X5, X6 289 PSHUFD $0x31, X6, X7 290 PMULULQ X6, X7 291 PSHUFD $0x4e, X5, X5 292 PADDQ X5, X1 293 PADDQ X7, X1 294 MOVOU 528(CX), X5 295 MOVOU 80(DX), X6 296 PXOR X5, X6 297 PSHUFD $0x31, X6, X7 298 PMULULQ X6, X7 299 PSHUFD $0x4e, X5, X5 300 PADDQ X5, X2 301 PADDQ X7, X2 302 MOVOU 544(CX), X5 303 MOVOU 96(DX), X6 304 PXOR X5, X6 305 PSHUFD $0x31, X6, X7 306 PMULULQ X6, X7 307 PSHUFD $0x4e, X5, X5 308 PADDQ X5, X3 309 PADDQ X7, X3 310 MOVOU 560(CX), X5 311 MOVOU 112(DX), X6 312 PXOR X5, X6 313 PSHUFD $0x31, X6, X7 314 PMULULQ X6, X7 315 PSHUFD $0x4e, X5, X5 316 PADDQ X5, X4 317 PADDQ X7, X4 318 MOVOU 576(CX), X5 319 MOVOU 72(DX), X6 320 PXOR X5, X6 321 PSHUFD $0x31, X6, X7 322 PMULULQ X6, X7 323 PSHUFD $0x4e, X5, X5 324 PADDQ X5, X1 325 PADDQ X7, X1 326 MOVOU 592(CX), X5 327 MOVOU 88(DX), X6 328 PXOR X5, X6 329 PSHUFD $0x31, X6, X7 330 PMULULQ X6, X7 331 PSHUFD $0x4e, X5, X5 332 PADDQ X5, X2 333 PADDQ X7, X2 334 MOVOU 608(CX), X5 335 MOVOU 104(DX), X6 336 PXOR X5, X6 337 PSHUFD $0x31, X6, X7 338 PMULULQ X6, X7 339 PSHUFD $0x4e, X5, X5 340 PADDQ X5, X3 341 PADDQ X7, X3 342 MOVOU 624(CX), X5 343 MOVOU 120(DX), X6 344 PXOR X5, X6 345 PSHUFD $0x31, X6, X7 346 PMULULQ X6, X7 347 PSHUFD $0x4e, X5, X5 348 PADDQ X5, X4 349 PADDQ X7, X4 350 MOVOU 640(CX), X5 351 MOVOU 80(DX), X6 352 PXOR X5, X6 353 PSHUFD $0x31, X6, X7 354 PMULULQ X6, X7 355 PSHUFD $0x4e, X5, X5 356 PADDQ X5, X1 357 PADDQ X7, X1 358 MOVOU 656(CX), X5 359 MOVOU 96(DX), X6 360 PXOR X5, X6 361 PSHUFD $0x31, X6, X7 362 PMULULQ X6, X7 363 PSHUFD $0x4e, X5, X5 364 PADDQ X5, X2 365 PADDQ X7, X2 366 MOVOU 672(CX), X5 367 MOVOU 112(DX), X6 368 PXOR X5, X6 369 PSHUFD $0x31, X6, X7 370 PMULULQ X6, X7 371 PSHUFD $0x4e, X5, X5 372 PADDQ X5, X3 373 PADDQ X7, X3 374 MOVOU 688(CX), X5 375 MOVOU 128(DX), X6 376 PXOR X5, X6 377 PSHUFD $0x31, X6, X7 378 PMULULQ X6, X7 379 PSHUFD $0x4e, X5, X5 380 PADDQ X5, X4 381 PADDQ X7, X4 382 MOVOU 704(CX), X5 383 MOVOU 88(DX), X6 384 PXOR X5, X6 385 PSHUFD $0x31, X6, X7 386 PMULULQ X6, X7 387 PSHUFD $0x4e, X5, X5 388 PADDQ X5, X1 389 PADDQ X7, X1 390 MOVOU 720(CX), X5 391 MOVOU 104(DX), X6 392 PXOR X5, X6 393 PSHUFD $0x31, X6, X7 394 PMULULQ X6, X7 395 PSHUFD $0x4e, X5, X5 396 PADDQ X5, X2 397 PADDQ X7, X2 398 MOVOU 736(CX), X5 399 MOVOU 120(DX), X6 400 PXOR X5, X6 401 PSHUFD $0x31, X6, X7 402 PMULULQ X6, X7 403 PSHUFD $0x4e, X5, X5 404 PADDQ X5, X3 405 PADDQ X7, X3 406 MOVOU 752(CX), X5 407 MOVOU 136(DX), X6 408 PXOR X5, X6 409 PSHUFD $0x31, X6, X7 410 PMULULQ X6, X7 411 PSHUFD $0x4e, X5, X5 412 PADDQ X5, X4 413 PADDQ X7, X4 414 MOVOU 768(CX), X5 415 MOVOU 96(DX), X6 416 PXOR X5, X6 417 PSHUFD $0x31, X6, X7 418 PMULULQ X6, X7 419 PSHUFD $0x4e, X5, X5 420 PADDQ X5, X1 421 PADDQ X7, X1 422 MOVOU 784(CX), X5 423 MOVOU 112(DX), X6 424 PXOR X5, X6 425 PSHUFD $0x31, X6, X7 426 PMULULQ X6, X7 427 PSHUFD $0x4e, X5, X5 428 PADDQ X5, X2 429 PADDQ X7, X2 430 MOVOU 800(CX), X5 431 MOVOU 128(DX), X6 432 PXOR X5, X6 433 PSHUFD $0x31, X6, X7 434 PMULULQ X6, X7 435 PSHUFD $0x4e, X5, X5 436 PADDQ X5, X3 437 PADDQ X7, X3 438 MOVOU 816(CX), X5 439 MOVOU 144(DX), X6 440 PXOR X5, X6 441 PSHUFD $0x31, X6, X7 442 PMULULQ X6, X7 443 PSHUFD $0x4e, X5, X5 444 PADDQ X5, X4 445 PADDQ X7, X4 446 MOVOU 832(CX), X5 447 MOVOU 104(DX), X6 448 PXOR X5, X6 449 PSHUFD $0x31, X6, X7 450 PMULULQ X6, X7 451 PSHUFD $0x4e, X5, X5 452 PADDQ X5, X1 453 PADDQ X7, X1 454 MOVOU 848(CX), X5 455 MOVOU 120(DX), X6 456 PXOR X5, X6 457 PSHUFD $0x31, X6, X7 458 PMULULQ X6, X7 459 PSHUFD $0x4e, X5, X5 460 PADDQ X5, X2 461 PADDQ X7, X2 462 MOVOU 864(CX), X5 463 MOVOU 136(DX), X6 464 PXOR X5, X6 465 PSHUFD $0x31, X6, X7 466 PMULULQ X6, X7 467 PSHUFD $0x4e, X5, X5 468 PADDQ X5, X3 469 PADDQ X7, X3 470 MOVOU 880(CX), X5 471 MOVOU 152(DX), X6 472 PXOR X5, X6 473 PSHUFD $0x31, X6, X7 474 PMULULQ X6, X7 475 PSHUFD $0x4e, X5, X5 476 PADDQ X5, X4 477 PADDQ X7, X4 478 MOVOU 896(CX), X5 479 MOVOU 112(DX), X6 480 PXOR X5, X6 481 PSHUFD $0x31, X6, X7 482 PMULULQ X6, X7 483 PSHUFD $0x4e, X5, X5 484 PADDQ X5, X1 485 PADDQ X7, X1 486 MOVOU 912(CX), X5 487 MOVOU 128(DX), X6 488 PXOR X5, X6 489 PSHUFD $0x31, X6, X7 490 PMULULQ X6, X7 491 PSHUFD $0x4e, X5, X5 492 PADDQ X5, X2 493 PADDQ X7, X2 494 MOVOU 928(CX), X5 495 MOVOU 144(DX), X6 496 PXOR X5, X6 497 PSHUFD $0x31, X6, X7 498 PMULULQ X6, X7 499 PSHUFD $0x4e, X5, X5 500 PADDQ X5, X3 501 PADDQ X7, X3 502 MOVOU 944(CX), X5 503 MOVOU 160(DX), X6 504 PXOR X5, X6 505 PSHUFD $0x31, X6, X7 506 PMULULQ X6, X7 507 PSHUFD $0x4e, X5, X5 508 PADDQ X5, X4 509 PADDQ X7, X4 510 MOVOU 960(CX), X5 511 MOVOU 120(DX), X6 512 PXOR X5, X6 513 PSHUFD $0x31, X6, X7 514 PMULULQ X6, X7 515 PSHUFD $0x4e, X5, X5 516 PADDQ X5, X1 517 PADDQ X7, X1 518 MOVOU 976(CX), X5 519 MOVOU 136(DX), X6 520 PXOR X5, X6 521 PSHUFD $0x31, X6, X7 522 PMULULQ X6, X7 523 PSHUFD $0x4e, X5, X5 524 PADDQ X5, X2 525 PADDQ X7, X2 526 MOVOU 992(CX), X5 527 MOVOU 152(DX), X6 528 PXOR X5, X6 529 PSHUFD $0x31, X6, X7 530 PMULULQ X6, X7 531 PSHUFD $0x4e, X5, X5 532 PADDQ X5, X3 533 PADDQ X7, X3 534 MOVOU 1008(CX), X5 535 MOVOU 168(DX), X6 536 PXOR X5, X6 537 PSHUFD $0x31, X6, X7 538 PMULULQ X6, X7 539 PSHUFD $0x4e, X5, X5 540 PADDQ X5, X4 541 PADDQ X7, X4 542 ADDQ $0x00000400, CX 543 SUBQ $0x00000400, SI 544 MOVOU X1, X5 545 PSRLQ $0x2f, X1 546 PXOR X5, X1 547 PXOR 128(DX), X1 548 PSHUFD $0xf5, X1, X5 549 PMULULQ X0, X5 550 PSLLQ $0x20, X5 551 PMULULQ X0, X1 552 PADDQ X5, X1 553 MOVOU X2, X5 554 PSRLQ $0x2f, X2 555 PXOR X5, X2 556 PXOR 144(DX), X2 557 PSHUFD $0xf5, X2, X5 558 PMULULQ X0, X5 559 PSLLQ $0x20, X5 560 PMULULQ X0, X2 561 PADDQ X5, X2 562 MOVOU X3, X5 563 PSRLQ $0x2f, X3 564 PXOR X5, X3 565 PXOR 160(DX), X3 566 PSHUFD $0xf5, X3, X5 567 PMULULQ X0, X5 568 PSLLQ $0x20, X5 569 PMULULQ X0, X3 570 PADDQ X5, X3 571 MOVOU X4, X5 572 PSRLQ $0x2f, X4 573 PXOR X5, X4 574 PXOR 176(DX), X4 575 PSHUFD $0xf5, X4, X5 576 PMULULQ X0, X5 577 PSLLQ $0x20, X5 578 PMULULQ X0, X4 579 PADDQ X5, X4 580 JMP accumBlock 581 582 accumStripe: 583 CMPQ SI, $0x40 584 JLE accumLastStripe 585 MOVOU (CX), X0 586 MOVOU (BX), X5 587 PXOR X0, X5 588 PSHUFD $0x31, X5, X6 589 PMULULQ X5, X6 590 PSHUFD $0x4e, X0, X0 591 PADDQ X0, X1 592 PADDQ X6, X1 593 MOVOU 16(CX), X0 594 MOVOU 16(BX), X5 595 PXOR X0, X5 596 PSHUFD $0x31, X5, X6 597 PMULULQ X5, X6 598 PSHUFD $0x4e, X0, X0 599 PADDQ X0, X2 600 PADDQ X6, X2 601 MOVOU 32(CX), X0 602 MOVOU 32(BX), X5 603 PXOR X0, X5 604 PSHUFD $0x31, X5, X6 605 PMULULQ X5, X6 606 PSHUFD $0x4e, X0, X0 607 PADDQ X0, X3 608 PADDQ X6, X3 609 MOVOU 48(CX), X0 610 MOVOU 48(BX), X5 611 PXOR X0, X5 612 PSHUFD $0x31, X5, X6 613 PMULULQ X5, X6 614 PSHUFD $0x4e, X0, X0 615 PADDQ X0, X4 616 PADDQ X6, X4 617 ADDQ $0x00000040, CX 618 SUBQ $0x00000040, SI 619 ADDQ $0x00000008, BX 620 JMP accumStripe 621 622 accumLastStripe: 623 CMPQ SI, $0x00 624 JE return 625 SUBQ $0x40, CX 626 ADDQ SI, CX 627 MOVOU (CX), X0 628 MOVOU 121(DX), X5 629 PXOR X0, X5 630 PSHUFD $0x31, X5, X6 631 PMULULQ X5, X6 632 PSHUFD $0x4e, X0, X0 633 PADDQ X0, X1 634 PADDQ X6, X1 635 MOVOU 16(CX), X0 636 MOVOU 137(DX), X5 637 PXOR X0, X5 638 PSHUFD $0x31, X5, X6 639 PMULULQ X5, X6 640 PSHUFD $0x4e, X0, X0 641 PADDQ X0, X2 642 PADDQ X6, X2 643 MOVOU 32(CX), X0 644 MOVOU 153(DX), X5 645 PXOR X0, X5 646 PSHUFD $0x31, X5, X6 647 PMULULQ X5, X6 648 PSHUFD $0x4e, X0, X0 649 PADDQ X0, X3 650 PADDQ X6, X3 651 MOVOU 48(CX), X0 652 MOVOU 169(DX), X5 653 PXOR X0, X5 654 PSHUFD $0x31, X5, X6 655 PMULULQ X5, X6 656 PSHUFD $0x4e, X0, X0 657 PADDQ X0, X4 658 PADDQ X6, X4 659 660 return: 661 MOVOU X1, (AX) 662 MOVOU X2, 16(AX) 663 MOVOU X3, 32(AX) 664 MOVOU X4, 48(AX) 665 RET