Changeset 106760 in vbox for trunk/src/VBox/Disassembler
- Timestamp:
- Oct 28, 2024 6:00:32 PM (3 months ago)
- Location:
- trunk/src/VBox/Disassembler
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Disassembler/DisasmCore-armv8.cpp
r106758 r106760 739 739 740 740 Assert( pParam->armv8.enmExtend == kDisArmv8OpParmExtendNone 741 && (pParam->fUse & DISUSE_INDEX));741 /*&& (pParam->fUse & DISUSE_INDEX)*/); /* For add/sub extended register. */ 742 742 switch (u32Opt) 743 743 { … … 754 754 } 755 755 756 /* When option<0> is set to 0, the 32-bit name of the GPR is used, 64-bit when option<0> is set to 1. */ 757 pParam->armv8.GprIndex.enmRegType = RT_BOOL(u32Opt & 0x1) 758 ? kDisOpParamArmV8RegType_Gpr_64Bit 759 : kDisOpParamArmV8RegType_Gpr_32Bit; 756 /* When option<1:0> is b11, the 64-bit name of the GPR is used, 32-bit otherwise. */ 757 if (pParam->fUse & DISUSE_INDEX) 758 pParam->armv8.GprIndex.enmRegType = (u32Opt & 0x3) == 0x3 759 ? kDisOpParamArmV8RegType_Gpr_64Bit 760 : kDisOpParamArmV8RegType_Gpr_32Bit; 761 else 762 { 763 Assert(pParam->armv8.enmType == kDisArmv8OpParmReg); 764 pParam->armv8.Op.Reg.enmRegType = ((u32Opt & 0x3) == 0x3 && *pf64Bit) 765 ? kDisOpParamArmV8RegType_Gpr_64Bit 766 : kDisOpParamArmV8RegType_Gpr_32Bit; 767 } 760 768 return VINF_SUCCESS; 761 769 } -
trunk/src/VBox/Disassembler/DisasmFormatArmV8.cpp
r106746 r106760 920 920 PUT_SZ("ROR #"); 921 921 break; 922 case kDisArmv8OpParmExtendUxtB: 923 PUT_SZ("UXTB #"); 924 break; 925 case kDisArmv8OpParmExtendUxtH: 926 PUT_SZ("UXTH #"); 927 break; 928 case kDisArmv8OpParmExtendUxtW: 929 PUT_SZ("UXTW #"); 930 break; 931 case kDisArmv8OpParmExtendUxtX: 932 PUT_SZ("UXTX #"); 933 break; 934 case kDisArmv8OpParmExtendSxtB: 935 PUT_SZ("SXTB #"); 936 break; 937 case kDisArmv8OpParmExtendSxtH: 938 PUT_SZ("SXTH #"); 939 break; 940 case kDisArmv8OpParmExtendSxtW: 941 PUT_SZ("SXTW #"); 942 break; 943 case kDisArmv8OpParmExtendSxtX: 944 PUT_SZ("SXTX #"); 945 break; 922 946 default: 923 947 AssertFailed(); -
trunk/src/VBox/Disassembler/DisasmTables-armv8-a64.cpp
r106742 r106760 613 613 614 614 615 DIS_ARMV8_DECODE_MAP_DEFINE_BEGIN(AddSubExtReg) 616 DIS_ARMV8_DECODE_MAP_INVALID_ENTRY, /** @todo */ 617 DIS_ARMV8_DECODE_MAP_DEFINE_END(AddSubExtReg, RT_BIT_32(24), 24); 615 /* ADD/ADDS/SUB/SUBS */ 616 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_DECODER(AddSubExtReg) 617 DIS_ARMV8_INSN_DECODE(kDisParmParseSf, 31, 1, DIS_ARMV8_INSN_PARAM_UNSET), 618 DIS_ARMV8_INSN_DECODE(kDisParmParseGprSp, 0, 5, 0 /*idxParam*/), 619 DIS_ARMV8_INSN_DECODE(kDisParmParseGprSp, 5, 5, 1 /*idxParam*/), 620 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr, 16, 5, 2 /*idxParam*/), 621 DIS_ARMV8_INSN_DECODE(kDisParmParseOption, 13, 3, 2 /*idxParam*/), 622 DIS_ARMV8_INSN_DECODE(kDisParmParseShiftAmount, 10, 3, 2 /*idxParam*/), 623 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_DECODER_ALTERNATIVE(AddSubExtRegS) 624 DIS_ARMV8_INSN_DECODE(kDisParmParseSf, 31, 1, DIS_ARMV8_INSN_PARAM_UNSET), 625 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr, 0, 5, 0 /*idxParam*/), 626 DIS_ARMV8_INSN_DECODE(kDisParmParseGprSp, 5, 5, 1 /*idxParam*/), 627 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr, 16, 5, 2 /*idxParam*/), 628 DIS_ARMV8_INSN_DECODE(kDisParmParseOption, 13, 3, 2 /*idxParam*/), 629 DIS_ARMV8_INSN_DECODE(kDisParmParseShiftAmount, 10, 3, 2 /*idxParam*/), 630 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_BEGIN(AddSubExtReg) 631 DIS_ARMV8_OP( 0x0b200000, "add", OP_ARMV8_A64_ADD, DISOPTYPE_HARMLESS), 632 DIS_ARMV8_OP_ALT_DECODE(0x2b200000, "adds", OP_ARMV8_A64_ADDS, DISOPTYPE_HARMLESS, AddSubExtRegS), 633 DIS_ARMV8_OP( 0x4b200000, "sub", OP_ARMV8_A64_SUB, DISOPTYPE_HARMLESS), 634 DIS_ARMV8_OP_ALT_DECODE(0x6b200000, "subs", OP_ARMV8_A64_SUBS, DISOPTYPE_HARMLESS, AddSubExtRegS), 635 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_END(AddSubExtReg, 0x7fe00000 /*fFixedInsn*/, 636 kDisArmV8OpcDecodeNop, RT_BIT_32(29) | RT_BIT_32(30), 29); 618 637 619 638 -
trunk/src/VBox/Disassembler/testcase/tstDisasmArmv8-1-asm.S
r106758 r106760 238 238 cmp w0, w1, LSL #1 239 239 240 ; Add/Sub extended register 241 add w0, w1, w2 242 243 add x0, x1, x2 244 add sp, sp, xzr 245 246 add w0, w1, w2, UXTB #1 247 add w0, w1, w2, UXTB #2 248 add w0, w1, w2, UXTB #3 249 add w0, w1, w2, UXTB #4 250 add w28, w29, wzr, UXTB #1 251 add w28, w29, wzr, UXTB #2 252 add w28, w29, wzr, UXTB #3 253 add w28, w29, wzr, UXTB #4 254 255 add x0, x1, w2, UXTB #1 256 add x0, x1, w2, UXTB #2 257 add x0, x1, w2, UXTB #3 258 add x0, x1, w2, UXTB #4 259 add sp, sp, wzr, UXTB #1 260 add sp, sp, wzr, UXTB #2 261 add sp, sp, wzr, UXTB #3 262 add sp, sp, wzr, UXTB #4 263 264 add w0, w1, w2, UXTH #1 265 add w0, w1, w2, UXTH #2 266 add w0, w1, w2, UXTH #3 267 add w0, w1, w2, UXTH #4 268 add w28, w29, wzr, UXTH #1 269 add w28, w29, wzr, UXTH #2 270 add w28, w29, wzr, UXTH #3 271 add w28, w29, wzr, UXTH #4 272 273 add x0, x1, w2, UXTH #1 274 add x0, x1, w2, UXTH #2 275 add x0, x1, w2, UXTH #3 276 add x0, x1, w2, UXTH #4 277 add sp, sp, wzr, UXTH #1 278 add sp, sp, wzr, UXTH #2 279 add sp, sp, wzr, UXTH #3 280 add sp, sp, wzr, UXTH #4 281 282 add w0, w1, w2, UXTW #1 283 add w0, w1, w2, UXTW #2 284 add w0, w1, w2, UXTW #3 285 add w0, w1, w2, UXTW #4 286 add w28, w29, wzr, UXTW #1 287 add w28, w29, wzr, UXTW #2 288 add w28, w29, wzr, UXTW #3 289 add w28, w29, wzr, UXTW #4 290 291 add x0, x1, w2, UXTW #1 292 add x0, x1, w2, UXTW #2 293 add x0, x1, w2, UXTW #3 294 add x0, x1, w2, UXTW #4 295 add sp, sp, wzr, UXTW #1 296 add sp, sp, wzr, UXTW #2 297 add sp, sp, wzr, UXTW #3 298 add sp, sp, wzr, UXTW #4 299 300 add w0, w1, w2, UXTX #1 301 add w0, w1, w2, UXTX #2 302 add w0, w1, w2, UXTX #3 303 add w0, w1, w2, UXTX #4 304 add w28, w29, wzr, UXTX #1 305 add w28, w29, wzr, UXTX #2 306 add w28, w29, wzr, UXTX #3 307 add w28, w29, wzr, UXTX #4 308 309 add x0, x1, x2, UXTX #1 310 add x0, x1, x2, UXTX #2 311 add x0, x1, x2, UXTX #3 312 add x0, x1, x2, UXTX #4 313 add sp, sp, xzr, UXTX #1 314 add sp, sp, xzr, UXTX #2 315 add sp, sp, xzr, UXTX #3 316 add sp, sp, xzr, UXTX #4 317 318 add w0, w1, w2, SXTB #1 319 add w0, w1, w2, SXTB #2 320 add w0, w1, w2, SXTB #3 321 add w0, w1, w2, SXTB #4 322 add w28, w29, wzr, SXTB #1 323 add w28, w29, wzr, SXTB #2 324 add w28, w29, wzr, SXTB #3 325 add w28, w29, wzr, SXTB #4 326 327 add x0, x1, w2, SXTB #1 328 add x0, x1, w2, SXTB #2 329 add x0, x1, w2, SXTB #3 330 add x0, x1, w2, SXTB #4 331 add sp, sp, wzr, SXTB #1 332 add sp, sp, wzr, SXTB #2 333 add sp, sp, wzr, SXTB #3 334 add sp, sp, wzr, SXTB #4 335 336 add w0, w1, w2, SXTH #1 337 add w0, w1, w2, SXTH #2 338 add w0, w1, w2, SXTH #3 339 add w0, w1, w2, SXTH #4 340 add w28, w29, wzr, SXTH #1 341 add w28, w29, wzr, SXTH #2 342 add w28, w29, wzr, SXTH #3 343 add w28, w29, wzr, SXTH #4 344 345 add x0, x1, w2, SXTH #1 346 add x0, x1, w2, SXTH #2 347 add x0, x1, w2, SXTH #3 348 add x0, x1, w2, SXTH #4 349 add sp, sp, wzr, SXTH #1 350 add sp, sp, wzr, SXTH #2 351 add sp, sp, wzr, SXTH #3 352 add sp, sp, wzr, SXTH #4 353 354 add w0, w1, w2, SXTW #1 355 add w0, w1, w2, SXTW #2 356 add w0, w1, w2, SXTW #3 357 add w0, w1, w2, SXTW #4 358 add w28, w29, wzr, SXTW #1 359 add w28, w29, wzr, SXTW #2 360 add w28, w29, wzr, SXTW #3 361 add w28, w29, wzr, SXTW #4 362 363 add x0, x1, w2, SXTW #1 364 add x0, x1, w2, SXTW #2 365 add x0, x1, w2, SXTW #3 366 add x0, x1, w2, SXTW #4 367 add sp, sp, wzr, SXTW #1 368 add sp, sp, wzr, SXTW #2 369 add sp, sp, wzr, SXTW #3 370 add sp, sp, wzr, SXTW #4 371 372 add w0, w1, w2, SXTX #1 373 add w0, w1, w2, SXTX #2 374 add w0, w1, w2, SXTX #3 375 add w0, w1, w2, SXTX #4 376 add w28, w29, wzr, SXTX #1 377 add w28, w29, wzr, SXTX #2 378 add w28, w29, wzr, SXTX #3 379 add w28, w29, wzr, SXTX #4 380 381 add x0, x1, x2, SXTX #1 382 add x0, x1, x2, SXTX #2 383 add x0, x1, x2, SXTX #3 384 add x0, x1, x2, SXTX #4 385 add sp, sp, xzr, SXTX #1 386 add sp, sp, xzr, SXTX #2 387 add sp, sp, xzr, SXTX #3 388 add sp, sp, xzr, SXTX #4 389 390 391 adds w0, w1, w2 392 adds x0, x1, x2 393 adds xzr, sp, x2 394 395 adds w0, w1, w2, UXTB #1 396 adds w0, w1, w2, UXTB #2 397 adds w0, w1, w2, UXTB #3 398 adds w0, w1, w2, UXTB #4 399 adds w28, w29, wzr, UXTB #1 400 adds w28, w29, wzr, UXTB #2 401 adds w28, w29, wzr, UXTB #3 402 adds w28, w29, wzr, UXTB #4 403 404 adds x0, x1, w2, UXTB #1 405 adds x0, x1, w2, UXTB #2 406 adds x0, x1, w2, UXTB #3 407 adds x0, x1, w2, UXTB #4 408 adds xzr, sp, wzr, UXTB #1 409 adds xzr, sp, wzr, UXTB #2 410 adds xzr, sp, wzr, UXTB #3 411 adds xzr, sp, wzr, UXTB #4 412 413 adds w0, w1, w2, UXTH #1 414 adds w0, w1, w2, UXTH #2 415 adds w0, w1, w2, UXTH #3 416 adds w0, w1, w2, UXTH #4 417 adds w28, w29, wzr, UXTH #1 418 adds w28, w29, wzr, UXTH #2 419 adds w28, w29, wzr, UXTH #3 420 adds w28, w29, wzr, UXTH #4 421 422 adds x0, x1, w2, UXTH #1 423 adds x0, x1, w2, UXTH #2 424 adds x0, x1, w2, UXTH #3 425 adds x0, x1, w2, UXTH #4 426 adds xzr, sp, wzr, UXTH #1 427 adds xzr, sp, wzr, UXTH #2 428 adds xzr, sp, wzr, UXTH #3 429 adds xzr, sp, wzr, UXTH #4 430 431 adds w0, w1, w2, UXTW #1 432 adds w0, w1, w2, UXTW #2 433 adds w0, w1, w2, UXTW #3 434 adds w0, w1, w2, UXTW #4 435 adds w28, w29, wzr, UXTW #1 436 adds w28, w29, wzr, UXTW #2 437 adds w28, w29, wzr, UXTW #3 438 adds w28, w29, wzr, UXTW #4 439 440 adds x0, x1, w2, UXTW #1 441 adds x0, x1, w2, UXTW #2 442 adds x0, x1, w2, UXTW #3 443 adds x0, x1, w2, UXTW #4 444 adds xzr, sp, wzr, UXTW #1 445 adds xzr, sp, wzr, UXTW #2 446 adds xzr, sp, wzr, UXTW #3 447 adds xzr, sp, wzr, UXTW #4 448 449 adds w0, w1, w2, UXTX #1 450 adds w0, w1, w2, UXTX #2 451 adds w0, w1, w2, UXTX #3 452 adds w0, w1, w2, UXTX #4 453 adds w28, w29, wzr, UXTX #1 454 adds w28, w29, wzr, UXTX #2 455 adds w28, w29, wzr, UXTX #3 456 adds w28, w29, wzr, UXTX #4 457 458 adds x0, x1, x2, UXTX #1 459 adds x0, x1, x2, UXTX #2 460 adds x0, x1, x2, UXTX #3 461 adds x0, x1, x2, UXTX #4 462 adds xzr, sp, xzr, UXTX #1 463 adds xzr, sp, xzr, UXTX #2 464 adds xzr, sp, xzr, UXTX #3 465 adds xzr, sp, xzr, UXTX #4 466 467 adds w0, w1, w2, SXTB #1 468 adds w0, w1, w2, SXTB #2 469 adds w0, w1, w2, SXTB #3 470 adds w0, w1, w2, SXTB #4 471 adds w28, w29, wzr, SXTB #1 472 adds w28, w29, wzr, SXTB #2 473 adds w28, w29, wzr, SXTB #3 474 adds w28, w29, wzr, SXTB #4 475 476 adds x0, x1, w2, SXTB #1 477 adds x0, x1, w2, SXTB #2 478 adds x0, x1, w2, SXTB #3 479 adds x0, x1, w2, SXTB #4 480 adds xzr, sp, wzr, SXTB #1 481 adds xzr, sp, wzr, SXTB #2 482 adds xzr, sp, wzr, SXTB #3 483 adds xzr, sp, wzr, SXTB #4 484 485 adds w0, w1, w2, SXTH #1 486 adds w0, w1, w2, SXTH #2 487 adds w0, w1, w2, SXTH #3 488 adds w0, w1, w2, SXTH #4 489 adds w28, w29, wzr, SXTH #1 490 adds w28, w29, wzr, SXTH #2 491 adds w28, w29, wzr, SXTH #3 492 adds w28, w29, wzr, SXTH #4 493 494 adds x0, x1, w2, SXTH #1 495 adds x0, x1, w2, SXTH #2 496 adds x0, x1, w2, SXTH #3 497 adds x0, x1, w2, SXTH #4 498 adds xzr, sp, wzr, SXTH #1 499 adds xzr, sp, wzr, SXTH #2 500 adds xzr, sp, wzr, SXTH #3 501 adds xzr, sp, wzr, SXTH #4 502 503 adds w0, w1, w2, SXTW #1 504 adds w0, w1, w2, SXTW #2 505 adds w0, w1, w2, SXTW #3 506 adds w0, w1, w2, SXTW #4 507 adds w28, w29, wzr, SXTW #1 508 adds w28, w29, wzr, SXTW #2 509 adds w28, w29, wzr, SXTW #3 510 adds w28, w29, wzr, SXTW #4 511 512 adds x0, x1, w2, SXTW #1 513 adds x0, x1, w2, SXTW #2 514 adds x0, x1, w2, SXTW #3 515 adds x0, x1, w2, SXTW #4 516 adds xzr, sp, wzr, SXTW #1 517 adds xzr, sp, wzr, SXTW #2 518 adds xzr, sp, wzr, SXTW #3 519 adds xzr, sp, wzr, SXTW #4 520 521 adds w0, w1, w2, SXTX #1 522 adds w0, w1, w2, SXTX #2 523 adds w0, w1, w2, SXTX #3 524 adds w0, w1, w2, SXTX #4 525 adds w28, w29, wzr, SXTX #1 526 adds w28, w29, wzr, SXTX #2 527 adds w28, w29, wzr, SXTX #3 528 adds w28, w29, wzr, SXTX #4 529 530 adds x0, x1, x2, SXTX #1 531 adds x0, x1, x2, SXTX #2 532 adds x0, x1, x2, SXTX #3 533 adds x0, x1, x2, SXTX #4 534 adds xzr, sp, xzr, SXTX #1 535 adds xzr, sp, xzr, SXTX #2 536 adds xzr, sp, xzr, SXTX #3 537 adds xzr, sp, xzr, SXTX #4 538 539 540 sub w0, w1, w2 541 542 sub w0, w1, w2, UXTB #1 543 sub w0, w1, w2, UXTB #2 544 sub w0, w1, w2, UXTB #3 545 sub w0, w1, w2, UXTB #4 546 sub w28, w29, wzr, UXTB #1 547 sub w28, w29, wzr, UXTB #2 548 sub w28, w29, wzr, UXTB #3 549 sub w28, w29, wzr, UXTB #4 550 551 sub x0, x1, w2, UXTB #1 552 sub x0, x1, w2, UXTB #2 553 sub x0, x1, w2, UXTB #3 554 sub x0, x1, w2, UXTB #4 555 sub sp, sp, wzr, UXTB #1 556 sub sp, sp, wzr, UXTB #2 557 sub sp, sp, wzr, UXTB #3 558 sub sp, sp, wzr, UXTB #4 559 560 sub w0, w1, w2, UXTH #1 561 sub w0, w1, w2, UXTH #2 562 sub w0, w1, w2, UXTH #3 563 sub w0, w1, w2, UXTH #4 564 sub w28, w29, wzr, UXTH #1 565 sub w28, w29, wzr, UXTH #2 566 sub w28, w29, wzr, UXTH #3 567 sub w28, w29, wzr, UXTH #4 568 569 sub x0, x1, w2, UXTH #1 570 sub x0, x1, w2, UXTH #2 571 sub x0, x1, w2, UXTH #3 572 sub x0, x1, w2, UXTH #4 573 sub sp, sp, wzr, UXTH #1 574 sub sp, sp, wzr, UXTH #2 575 sub sp, sp, wzr, UXTH #3 576 sub sp, sp, wzr, UXTH #4 577 578 sub w0, w1, w2, UXTW #1 579 sub w0, w1, w2, UXTW #2 580 sub w0, w1, w2, UXTW #3 581 sub w0, w1, w2, UXTW #4 582 sub w28, w29, wzr, UXTW #1 583 sub w28, w29, wzr, UXTW #2 584 sub w28, w29, wzr, UXTW #3 585 sub w28, w29, wzr, UXTW #4 586 587 sub x0, x1, w2, UXTW #1 588 sub x0, x1, w2, UXTW #2 589 sub x0, x1, w2, UXTW #3 590 sub x0, x1, w2, UXTW #4 591 sub sp, sp, wzr, UXTW #1 592 sub sp, sp, wzr, UXTW #2 593 sub sp, sp, wzr, UXTW #3 594 sub sp, sp, wzr, UXTW #4 595 596 sub w0, w1, w2, UXTX #1 597 sub w0, w1, w2, UXTX #2 598 sub w0, w1, w2, UXTX #3 599 sub w0, w1, w2, UXTX #4 600 sub w28, w29, wzr, UXTX #1 601 sub w28, w29, wzr, UXTX #2 602 sub w28, w29, wzr, UXTX #3 603 sub w28, w29, wzr, UXTX #4 604 605 sub x0, x1, x2, UXTX #1 606 sub x0, x1, x2, UXTX #2 607 sub x0, x1, x2, UXTX #3 608 sub x0, x1, x2, UXTX #4 609 sub sp, sp, xzr, UXTX #1 610 sub sp, sp, xzr, UXTX #2 611 sub sp, sp, xzr, UXTX #3 612 sub sp, sp, xzr, UXTX #4 613 614 sub w0, w1, w2, SXTB #1 615 sub w0, w1, w2, SXTB #2 616 sub w0, w1, w2, SXTB #3 617 sub w0, w1, w2, SXTB #4 618 sub w28, w29, wzr, SXTB #1 619 sub w28, w29, wzr, SXTB #2 620 sub w28, w29, wzr, SXTB #3 621 sub w28, w29, wzr, SXTB #4 622 623 sub x0, x1, w2, SXTB #1 624 sub x0, x1, w2, SXTB #2 625 sub x0, x1, w2, SXTB #3 626 sub x0, x1, w2, SXTB #4 627 sub sp, sp, wzr, SXTB #1 628 sub sp, sp, wzr, SXTB #2 629 sub sp, sp, wzr, SXTB #3 630 sub sp, sp, wzr, SXTB #4 631 632 sub w0, w1, w2, SXTH #1 633 sub w0, w1, w2, SXTH #2 634 sub w0, w1, w2, SXTH #3 635 sub w0, w1, w2, SXTH #4 636 sub w28, w29, wzr, SXTH #1 637 sub w28, w29, wzr, SXTH #2 638 sub w28, w29, wzr, SXTH #3 639 sub w28, w29, wzr, SXTH #4 640 641 sub x0, x1, w2, SXTH #1 642 sub x0, x1, w2, SXTH #2 643 sub x0, x1, w2, SXTH #3 644 sub x0, x1, w2, SXTH #4 645 sub sp, sp, wzr, SXTH #1 646 sub sp, sp, wzr, SXTH #2 647 sub sp, sp, wzr, SXTH #3 648 sub sp, sp, wzr, SXTH #4 649 650 sub w0, w1, w2, SXTW #1 651 sub w0, w1, w2, SXTW #2 652 sub w0, w1, w2, SXTW #3 653 sub w0, w1, w2, SXTW #4 654 sub w28, w29, wzr, SXTW #1 655 sub w28, w29, wzr, SXTW #2 656 sub w28, w29, wzr, SXTW #3 657 sub w28, w29, wzr, SXTW #4 658 659 sub x0, x1, w2, SXTW #1 660 sub x0, x1, w2, SXTW #2 661 sub x0, x1, w2, SXTW #3 662 sub x0, x1, w2, SXTW #4 663 sub sp, sp, wzr, SXTW #1 664 sub sp, sp, wzr, SXTW #2 665 sub sp, sp, wzr, SXTW #3 666 sub sp, sp, wzr, SXTW #4 667 668 sub w0, w1, w2, SXTX #1 669 sub w0, w1, w2, SXTX #2 670 sub w0, w1, w2, SXTX #3 671 sub w0, w1, w2, SXTX #4 672 sub w28, w29, wzr, SXTX #1 673 sub w28, w29, wzr, SXTX #2 674 sub w28, w29, wzr, SXTX #3 675 sub w28, w29, wzr, SXTX #4 676 677 sub x0, x1, x2, SXTX #1 678 sub x0, x1, x2, SXTX #2 679 sub x0, x1, x2, SXTX #3 680 sub x0, x1, x2, SXTX #4 681 sub sp, sp, xzr, SXTX #1 682 sub sp, sp, xzr, SXTX #2 683 sub sp, sp, xzr, SXTX #3 684 sub sp, sp, xzr, SXTX #4 685 686 687 subs w0, w1, w2 688 subs x0, sp, xzr 689 690 subs w0, w1, w2, UXTB #1 691 subs w0, w1, w2, UXTB #2 692 subs w0, w1, w2, UXTB #3 693 subs w0, w1, w2, UXTB #4 694 subs w28, w29, wzr, UXTB #1 695 subs w28, w29, wzr, UXTB #2 696 subs w28, w29, wzr, UXTB #3 697 subs w28, w29, wzr, UXTB #4 698 699 subs x0, x1, w2, UXTB #1 700 subs x0, x1, w2, UXTB #2 701 subs x0, x1, w2, UXTB #3 702 subs x0, x1, w2, UXTB #4 703 subs x28, sp, wzr, UXTB #1 ; targetting xzr would produce an cmp alias instruction 704 subs x28, sp, wzr, UXTB #2 705 subs x28, sp, wzr, UXTB #3 706 subs x28, sp, wzr, UXTB #4 707 708 subs w0, w1, w2, UXTH #1 709 subs w0, w1, w2, UXTH #2 710 subs w0, w1, w2, UXTH #3 711 subs w0, w1, w2, UXTH #4 712 subs w28, w29, wzr, UXTH #1 713 subs w28, w29, wzr, UXTH #2 714 subs w28, w29, wzr, UXTH #3 715 subs w28, w29, wzr, UXTH #4 716 717 subs x0, x1, w2, UXTH #1 718 subs x0, x1, w2, UXTH #2 719 subs x0, x1, w2, UXTH #3 720 subs x0, x1, w2, UXTH #4 721 subs x28, sp, wzr, UXTH #1 722 subs x28, sp, wzr, UXTH #2 723 subs x28, sp, wzr, UXTH #3 724 subs x28, sp, wzr, UXTH #4 725 726 subs w0, w1, w2, UXTW #1 727 subs w0, w1, w2, UXTW #2 728 subs w0, w1, w2, UXTW #3 729 subs w0, w1, w2, UXTW #4 730 subs w28, w29, wzr, UXTW #1 731 subs w28, w29, wzr, UXTW #2 732 subs w28, w29, wzr, UXTW #3 733 subs w28, w29, wzr, UXTW #4 734 735 subs x0, x1, w2, UXTW #1 736 subs x0, x1, w2, UXTW #2 737 subs x0, x1, w2, UXTW #3 738 subs x0, x1, w2, UXTW #4 739 subs x28, sp, wzr, UXTW #1 740 subs x28, sp, wzr, UXTW #2 741 subs x28, sp, wzr, UXTW #3 742 subs x28, sp, wzr, UXTW #4 743 744 subs w0, w1, w2, UXTX #1 745 subs w0, w1, w2, UXTX #2 746 subs w0, w1, w2, UXTX #3 747 subs w0, w1, w2, UXTX #4 748 subs w28, w29, wzr, UXTX #1 749 subs w28, w29, wzr, UXTX #2 750 subs w28, w29, wzr, UXTX #3 751 subs w28, w29, wzr, UXTX #4 752 753 subs x0, x1, x2, UXTX #1 754 subs x0, x1, x2, UXTX #2 755 subs x0, x1, x2, UXTX #3 756 subs x0, x1, x2, UXTX #4 757 subs x28, sp, xzr, UXTX #1 758 subs x28, sp, xzr, UXTX #2 759 subs x28, sp, xzr, UXTX #3 760 subs x28, sp, xzr, UXTX #4 761 762 subs w0, w1, w2, SXTB #1 763 subs w0, w1, w2, SXTB #2 764 subs w0, w1, w2, SXTB #3 765 subs w0, w1, w2, SXTB #4 766 subs w28, w29, wzr, SXTB #1 767 subs w28, w29, wzr, SXTB #2 768 subs w28, w29, wzr, SXTB #3 769 subs w28, w29, wzr, SXTB #4 770 771 subs x0, x1, w2, SXTB #1 772 subs x0, x1, w2, SXTB #2 773 subs x0, x1, w2, SXTB #3 774 subs x0, x1, w2, SXTB #4 775 subs x28, sp, wzr, SXTB #1 776 subs x28, sp, wzr, SXTB #2 777 subs x28, sp, wzr, SXTB #3 778 subs x28, sp, wzr, SXTB #4 779 780 subs w0, w1, w2, SXTH #1 781 subs w0, w1, w2, SXTH #2 782 subs w0, w1, w2, SXTH #3 783 subs w0, w1, w2, SXTH #4 784 subs w28, w29, wzr, SXTH #1 785 subs w28, w29, wzr, SXTH #2 786 subs w28, w29, wzr, SXTH #3 787 subs w28, w29, wzr, SXTH #4 788 789 subs x0, x1, w2, SXTH #1 790 subs x0, x1, w2, SXTH #2 791 subs x0, x1, w2, SXTH #3 792 subs x0, x1, w2, SXTH #4 793 subs x28, sp, wzr, SXTH #1 794 subs x28, sp, wzr, SXTH #2 795 subs x28, sp, wzr, SXTH #3 796 subs x28, sp, wzr, SXTH #4 797 798 subs w0, w1, w2, SXTW #1 799 subs w0, w1, w2, SXTW #2 800 subs w0, w1, w2, SXTW #3 801 subs w0, w1, w2, SXTW #4 802 subs w28, w29, wzr, SXTW #1 803 subs w28, w29, wzr, SXTW #2 804 subs w28, w29, wzr, SXTW #3 805 subs w28, w29, wzr, SXTW #4 806 807 subs x0, x1, w2, SXTW #1 808 subs x0, x1, w2, SXTW #2 809 subs x0, x1, w2, SXTW #3 810 subs x0, x1, w2, SXTW #4 811 subs x28, sp, wzr, SXTW #1 812 subs x28, sp, wzr, SXTW #2 813 subs x28, sp, wzr, SXTW #3 814 subs x28, sp, wzr, SXTW #4 815 816 subs w0, w1, w2, SXTX #1 817 subs w0, w1, w2, SXTX #2 818 subs w0, w1, w2, SXTX #3 819 subs w0, w1, w2, SXTX #4 820 subs w28, w29, wzr, SXTX #1 821 subs w28, w29, wzr, SXTX #2 822 subs w28, w29, wzr, SXTX #3 823 subs w28, w29, wzr, SXTX #4 824 825 subs x0, x1, x2, SXTX #1 826 subs x0, x1, x2, SXTX #2 827 subs x0, x1, x2, SXTX #3 828 subs x0, x1, x2, SXTX #4 829 subs x28, sp, xzr, SXTX #1 830 subs x28, sp, xzr, SXTX #2 831 subs x28, sp, xzr, SXTX #3 832 subs x28, sp, xzr, SXTX #4 833 834 240 835 ; Logical instructions 241 836 and x0, x0, #0xffff
Note:
See TracChangeset
for help on using the changeset viewer.