Changeset 250005 in webkit for trunk/Source/JavaScriptCore/disassembler
- Timestamp:
- Sep 17, 2019, 5:36:19 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h
r248546 r250005 1 1 /* 2 * Copyright (C) 2012 , 2016Apple Inc. All rights reserved.2 * Copyright (C) 2012-2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 196 196 } 197 197 198 static const int bufferSize = 81;198 static constexpr int bufferSize = 81; 199 199 200 200 char m_formatBuffer[bufferSize]; … … 228 228 class A64DOpcodeAddSubtractImmediate : public A64DOpcodeAddSubtract { 229 229 public: 230 static const uint32_t mask = 0x1f000000;231 static const uint32_t pattern = 0x11000000;230 static constexpr uint32_t mask = 0x1f000000; 231 static constexpr uint32_t pattern = 0x11000000; 232 232 233 233 DEFINE_STATIC_FORMAT(A64DOpcodeAddSubtractImmediate, thisObj); … … 242 242 class A64DOpcodeAddSubtractExtendedRegister : public A64DOpcodeAddSubtract { 243 243 public: 244 static const uint32_t mask = 0x1fe00000;245 static const uint32_t pattern = 0x0b200000;244 static constexpr uint32_t mask = 0x1fe00000; 245 static constexpr uint32_t pattern = 0x0b200000; 246 246 247 247 DEFINE_STATIC_FORMAT(A64DOpcodeAddSubtractExtendedRegister, thisObj); … … 254 254 class A64DOpcodeAddSubtractShiftedRegister : public A64DOpcodeAddSubtract { 255 255 public: 256 static const uint32_t mask = 0x1f200000;257 static const uint32_t pattern = 0x0b000000;256 static constexpr uint32_t mask = 0x1f200000; 257 static constexpr uint32_t pattern = 0x0b000000; 258 258 259 259 DEFINE_STATIC_FORMAT(A64DOpcodeAddSubtractShiftedRegister, thisObj); … … 275 275 276 276 public: 277 static const uint32_t mask = 0x1f800000;278 static const uint32_t pattern = 0x13000000;277 static constexpr uint32_t mask = 0x1f800000; 278 static constexpr uint32_t pattern = 0x13000000; 279 279 280 280 DEFINE_STATIC_FORMAT(A64DOpcodeBitfield, thisObj); … … 295 295 class A64DOpcodeCompareAndBranchImmediate : public A64DOpcode { 296 296 public: 297 static const uint32_t mask = 0x7e000000;298 static const uint32_t pattern = 0x34000000;297 static constexpr uint32_t mask = 0x7e000000; 298 static constexpr uint32_t pattern = 0x34000000; 299 299 300 300 DEFINE_STATIC_FORMAT(A64DOpcodeCompareAndBranchImmediate, thisObj); … … 308 308 class A64DOpcodeConditionalBranchImmediate : public A64DOpcode { 309 309 public: 310 static const uint32_t mask = 0xff000010;311 static const uint32_t pattern = 0x54000000;310 static constexpr uint32_t mask = 0xff000010; 311 static constexpr uint32_t pattern = 0x54000000; 312 312 313 313 DEFINE_STATIC_FORMAT(A64DOpcodeConditionalBranchImmediate, thisObj); … … 324 324 325 325 public: 326 static const uint32_t mask = 0x1fe00000;327 static const uint32_t pattern = 0x1a800000;326 static constexpr uint32_t mask = 0x1fe00000; 327 static constexpr uint32_t pattern = 0x1a800000; 328 328 329 329 DEFINE_STATIC_FORMAT(A64DOpcodeConditionalSelect, thisObj); … … 345 345 346 346 public: 347 static const uint32_t mask = 0x5fe00000;348 static const uint32_t pattern = 0x5ac00000;347 static constexpr uint32_t mask = 0x5fe00000; 348 static constexpr uint32_t pattern = 0x5ac00000; 349 349 350 350 DEFINE_STATIC_FORMAT(A64DOpcodeDataProcessing1Source, thisObj); … … 364 364 365 365 public: 366 static const uint32_t mask = 0x5fe00000;367 static const uint32_t pattern = 0x1ac00000;366 static constexpr uint32_t mask = 0x5fe00000; 367 static constexpr uint32_t pattern = 0x1ac00000; 368 368 369 369 DEFINE_STATIC_FORMAT(A64DOpcodeDataProcessing2Source, thisObj); … … 383 383 384 384 public: 385 static const uint32_t mask = 0x1f000000;386 static const uint32_t pattern = 0x1b000000;385 static constexpr uint32_t mask = 0x1f000000; 386 static constexpr uint32_t pattern = 0x1b000000; 387 387 388 388 DEFINE_STATIC_FORMAT(A64DOpcodeDataProcessing3Source, thisObj); … … 400 400 class A64OpcodeExceptionGeneration : public A64DOpcode { 401 401 public: 402 static const uint32_t mask = 0xff000000;403 static const uint32_t pattern = 0xd4000000;402 static constexpr uint32_t mask = 0xff000000; 403 static constexpr uint32_t pattern = 0xd4000000; 404 404 405 405 DEFINE_STATIC_FORMAT(A64OpcodeExceptionGeneration, thisObj); … … 415 415 class A64DOpcodeExtract : public A64DOpcode { 416 416 public: 417 static const uint32_t mask = 0x1f800000;418 static const uint32_t pattern = 0x13800000;417 static constexpr uint32_t mask = 0x1f800000; 418 static constexpr uint32_t pattern = 0x13800000; 419 419 420 420 DEFINE_STATIC_FORMAT(A64DOpcodeExtract, thisObj); … … 440 440 441 441 public: 442 static const uint32_t mask = 0x5f203c00;443 static const uint32_t pattern = 0x1e202000;442 static constexpr uint32_t mask = 0x5f203c00; 443 static constexpr uint32_t pattern = 0x1e202000; 444 444 445 445 DEFINE_STATIC_FORMAT(A64DOpcodeFloatingPointCompare, thisObj); … … 456 456 class A64DOpcodeFloatingPointConditionalSelect : public A64DOpcodeFloatingPointOps { 457 457 public: 458 static const uint32_t mask = 0x5f200c00;459 static const uint32_t pattern = 0x1e200c00;458 static constexpr uint32_t mask = 0x5f200c00; 459 static constexpr uint32_t pattern = 0x1e200c00; 460 460 461 461 DEFINE_STATIC_FORMAT(A64DOpcodeFloatingPointConditionalSelect, thisObj); … … 473 473 474 474 public: 475 static const uint32_t mask = 0x5f207c00;476 static const uint32_t pattern = 0x1e204000;475 static constexpr uint32_t mask = 0x5f207c00; 476 static constexpr uint32_t pattern = 0x1e204000; 477 477 478 478 DEFINE_STATIC_FORMAT(A64DOpcodeFloatingPointDataProcessing1Source, thisObj); … … 490 490 491 491 public: 492 static const uint32_t mask = 0x5f200800;493 static const uint32_t pattern = 0x1e200800;492 static constexpr uint32_t mask = 0x5f200800; 493 static constexpr uint32_t pattern = 0x1e200800; 494 494 495 495 DEFINE_STATIC_FORMAT(A64DOpcodeFloatingPointDataProcessing2Source, thisObj); … … 507 507 508 508 public: 509 static const uint32_t mask = 0x5f200000;510 static const uint32_t pattern = 0x1e000000;509 static constexpr uint32_t mask = 0x5f200000; 510 static constexpr uint32_t pattern = 0x1e000000; 511 511 512 512 DEFINE_STATIC_FORMAT(A64DOpcodeFloatingFixedPointConversions, thisObj); … … 526 526 527 527 public: 528 static const uint32_t mask = 0x5f20fc00;529 static const uint32_t pattern = 0x1e200000;528 static constexpr uint32_t mask = 0x5f20fc00; 529 static constexpr uint32_t pattern = 0x1e200000; 530 530 531 531 DEFINE_STATIC_FORMAT(A64DOpcodeFloatingPointIntegerConversions, thisObj); … … 551 551 class A64DOpcodeMSRImmediate : public A64DOpcodeSystem { 552 552 public: 553 static const uint32_t mask = 0xfff8f01f;554 static const uint32_t pattern = 0xd500401f;553 static constexpr uint32_t mask = 0xfff8f01f; 554 static constexpr uint32_t pattern = 0xd500401f; 555 555 556 556 DEFINE_STATIC_FORMAT(A64DOpcodeMSRImmediate, thisObj); … … 561 561 class A64DOpcodeMSROrMRSRegister : public A64DOpcodeSystem { 562 562 public: 563 static const uint32_t mask = 0xffd00000;564 static const uint32_t pattern = 0xd5100000;563 static constexpr uint32_t mask = 0xffd00000; 564 static constexpr uint32_t pattern = 0xd5100000; 565 565 566 566 DEFINE_STATIC_FORMAT(A64DOpcodeMSROrMRSRegister, thisObj); … … 577 577 578 578 public: 579 static const uint32_t mask = 0xfffff01f;580 static const uint32_t pattern = 0xd503201f;579 static constexpr uint32_t mask = 0xfffff01f; 580 static constexpr uint32_t pattern = 0xd503201f; 581 581 582 582 DEFINE_STATIC_FORMAT(A64DOpcodeHint, thisObj); … … 593 593 594 594 public: 595 static const uint32_t mask = 0xfffff01f;596 static const uint32_t pattern = 0xd503301f;595 static constexpr uint32_t mask = 0xfffff01f; 596 static constexpr uint32_t pattern = 0xd503301f; 597 597 598 598 DEFINE_STATIC_FORMAT(A64DOpcodeSystemSync, thisObj); … … 626 626 627 627 public: 628 static const uint32_t mask = 0x3f000000;629 static const uint32_t pattern = 0x08000000;628 static constexpr uint32_t mask = 0x3f000000; 629 static constexpr uint32_t pattern = 0x08000000; 630 630 631 631 DEFINE_STATIC_FORMAT(A64DOpcodeLoadStoreExclusive, thisObj); … … 654 654 655 655 public: 656 static const uint32_t mask = 0x3b200000;657 static const uint32_t pattern = 0x38000000;656 static constexpr uint32_t mask = 0x3b200000; 657 static constexpr uint32_t pattern = 0x38000000; 658 658 659 659 DEFINE_STATIC_FORMAT(A64DOpcodeLoadStoreImmediate, thisObj); … … 675 675 class A64DOpcodeLoadStoreRegisterOffset : public A64DOpcodeLoadStore { 676 676 public: 677 static const uint32_t mask = 0x3b200c00;678 static const uint32_t pattern = 0x38200800;677 static constexpr uint32_t mask = 0x3b200c00; 678 static constexpr uint32_t pattern = 0x38200800; 679 679 680 680 DEFINE_STATIC_FORMAT(A64DOpcodeLoadStoreRegisterOffset, thisObj); … … 697 697 698 698 public: 699 static const uint32_t mask = 0xff200400;700 static const uint32_t pattern = 0xf8200400;699 static constexpr uint32_t mask = 0xff200400; 700 static constexpr uint32_t pattern = 0xf8200400; 701 701 702 702 DEFINE_STATIC_FORMAT(A64DOpcodeLoadStoreAuthenticated, thisObj); … … 714 714 class A64DOpcodeLoadStoreRegisterPair : public A64DOpcodeLoadStore { 715 715 public: 716 static const uint32_t mask = 0x3a000000;717 static const uint32_t pattern = 0x28000000;716 static constexpr uint32_t mask = 0x3a000000; 717 static constexpr uint32_t pattern = 0x28000000; 718 718 719 719 DEFINE_STATIC_FORMAT(A64DOpcodeLoadStoreRegisterPair, thisObj); … … 730 730 class A64DOpcodeLoadStoreUnsignedImmediate : public A64DOpcodeLoadStore { 731 731 public: 732 static const uint32_t mask = 0x3b000000;733 static const uint32_t pattern = 0x39000000;732 static constexpr uint32_t mask = 0x3b000000; 733 static constexpr uint32_t pattern = 0x39000000; 734 734 735 735 DEFINE_STATIC_FORMAT(A64DOpcodeLoadStoreUnsignedImmediate, thisObj); … … 756 756 class A64DOpcodeLogicalImmediate : public A64DOpcodeLogical { 757 757 public: 758 static const uint32_t mask = 0x1f800000;759 static const uint32_t pattern = 0x12000000;758 static constexpr uint32_t mask = 0x1f800000; 759 static constexpr uint32_t pattern = 0x12000000; 760 760 761 761 DEFINE_STATIC_FORMAT(A64DOpcodeLogicalImmediate, thisObj); … … 773 773 class A64DOpcodeLogicalShiftedRegister : public A64DOpcodeLogical { 774 774 public: 775 static const uint32_t mask = 0x1f000000;776 static const uint32_t pattern = 0x0a000000;775 static constexpr uint32_t mask = 0x1f000000; 776 static constexpr uint32_t pattern = 0x0a000000; 777 777 778 778 DEFINE_STATIC_FORMAT(A64DOpcodeLogicalShiftedRegister, thisObj); … … 792 792 793 793 public: 794 static const uint32_t mask = 0x1f800000;795 static const uint32_t pattern = 0x12800000;794 static constexpr uint32_t mask = 0x1f800000; 795 static constexpr uint32_t pattern = 0x12800000; 796 796 797 797 DEFINE_STATIC_FORMAT(A64DOpcodeMoveWide, thisObj); … … 807 807 class A64DOpcodeTestAndBranchImmediate : public A64DOpcode { 808 808 public: 809 static const uint32_t mask = 0x7e000000;810 static const uint32_t pattern = 0x36000000;809 static constexpr uint32_t mask = 0x7e000000; 810 static constexpr uint32_t pattern = 0x36000000; 811 811 812 812 DEFINE_STATIC_FORMAT(A64DOpcodeTestAndBranchImmediate, thisObj); … … 821 821 class A64DOpcodeUnconditionalBranchImmediate : public A64DOpcode { 822 822 public: 823 static const uint32_t mask = 0x7c000000;824 static const uint32_t pattern = 0x14000000;823 static constexpr uint32_t mask = 0x7c000000; 824 static constexpr uint32_t pattern = 0x14000000; 825 825 826 826 DEFINE_STATIC_FORMAT(A64DOpcodeUnconditionalBranchImmediate, thisObj); … … 838 838 839 839 public: 840 static const uint32_t mask = 0xfe1f0000;841 static const uint32_t pattern = 0xd61f0000;840 static constexpr uint32_t mask = 0xfe1f0000; 841 static constexpr uint32_t pattern = 0xd61f0000; 842 842 843 843 DEFINE_STATIC_FORMAT(A64DOpcodeUnconditionalBranchRegister, thisObj);
Note:
See TracChangeset
for help on using the changeset viewer.