Changeset 106783 in vbox for trunk/src/VBox/Disassembler
- Timestamp:
- Oct 30, 2024 9:10:18 AM (4 months ago)
- svn:sync-xref-src-repo-rev:
- 165675
- Location:
- trunk/src/VBox/Disassembler
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Disassembler/DisasmTables-armv8-a64-ld-st.cpp.h
r106782 r106783 1126 1126 1127 1127 1128 /* C4.1.94.13 - Loads and Stores - Load/Store ordered */ 1129 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_DECODER(LdStOrdered) 1130 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr32, 0, 5, 0 /*idxParam*/), 1131 DIS_ARMV8_INSN_DECODE(kDisParmParseAddrGprSp, 5, 5, 1 /*idxParam*/), 1132 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_DECODER_ALTERNATIVE(LdStOrdered64) 1133 DIS_ARMV8_INSN_DECODE(kDisParmParseGprZr64, 0, 5, 0 /*idxParam*/), 1134 DIS_ARMV8_INSN_DECODE(kDisParmParseAddrGprSp, 5, 5, 1 /*idxParam*/), 1135 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_BEGIN(LdStOrdered) 1136 DIS_ARMV8_OP( 0x089f7c00, "stllrb", OP_ARMV8_A64_STLLRB, DISOPTYPE_HARMLESS), /* FEAT_LOR */ 1137 DIS_ARMV8_OP( 0x089ffc00, "stlrb", OP_ARMV8_A64_STLRB, DISOPTYPE_HARMLESS), 1138 DIS_ARMV8_OP( 0x08df7c00, "ldlarb", OP_ARMV8_A64_LDLARB, DISOPTYPE_HARMLESS), /* FEAT_LOR */ 1139 DIS_ARMV8_OP( 0x08dffc00, "ldarb", OP_ARMV8_A64_LDARB, DISOPTYPE_HARMLESS), 1140 DIS_ARMV8_OP( 0x489f7c00, "stllrh", OP_ARMV8_A64_STLLRH, DISOPTYPE_HARMLESS), /* FEAT_LOR */ 1141 DIS_ARMV8_OP( 0x489ffc00, "stlrh", OP_ARMV8_A64_STLRH, DISOPTYPE_HARMLESS), 1142 DIS_ARMV8_OP( 0x48df7c00, "ldlarh", OP_ARMV8_A64_LDLARH, DISOPTYPE_HARMLESS), /* FEAT_LOR */ 1143 DIS_ARMV8_OP( 0x48dffc00, "ldarh", OP_ARMV8_A64_LDARH, DISOPTYPE_HARMLESS), 1144 DIS_ARMV8_OP( 0x889f7c00, "stllr", OP_ARMV8_A64_STLLR, DISOPTYPE_HARMLESS), /* FEAT_LOR */ 1145 DIS_ARMV8_OP( 0x889ffc00, "stlr", OP_ARMV8_A64_STLR, DISOPTYPE_HARMLESS), 1146 DIS_ARMV8_OP( 0x88df7c00, "ldlar", OP_ARMV8_A64_LDLAR, DISOPTYPE_HARMLESS), /* FEAT_LOR */ 1147 DIS_ARMV8_OP( 0x88dffc00, "ldar", OP_ARMV8_A64_LDAR, DISOPTYPE_HARMLESS), 1148 DIS_ARMV8_OP_ALT_DECODE(0xc89f7c00, "stllr", OP_ARMV8_A64_STLLR, DISOPTYPE_HARMLESS, LdStOrdered64), /* FEAT_LOR */ 1149 DIS_ARMV8_OP_ALT_DECODE(0xc89ffc00, "stlr", OP_ARMV8_A64_STLR, DISOPTYPE_HARMLESS, LdStOrdered64), 1150 DIS_ARMV8_OP_ALT_DECODE(0xc8df7c00, "ldlar", OP_ARMV8_A64_LDLAR, DISOPTYPE_HARMLESS, LdStOrdered64), /* FEAT_LOR */ 1151 DIS_ARMV8_OP_ALT_DECODE(0xc8dffc00, "ldar", OP_ARMV8_A64_LDAR, DISOPTYPE_HARMLESS, LdStOrdered64), 1152 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_END(LdStOrdered, 0xfffffc00 /*fFixedInsn*/, 1153 kDisArmV8OpcDecodeCollate, 1154 /* o0 */ RT_BIT_32(15) 1155 /* L */ | RT_BIT_32(22) 1156 /* size */ | RT_BIT_32(30) | RT_BIT_32(31), 15); 1157 1158 1128 1159 /* C4.1.94.14 - Loads and Stores - Compare and swap */ 1129 1160 DIS_ARMV8_DECODE_INSN_CLASS_DEFINE_DECODER(LdStCas) … … 1165 1196 */ 1166 1197 DIS_ARMV8_DECODE_MAP_DEFINE_BEGIN(LdStOrdered_Cas) 1167 DIS_ARMV8_DECODE_MAP_ INVALID_ENTRY, /** @todo DIS_ARMV8_DECODE_MAP_ENTRY(LdStOrdered), */1198 DIS_ARMV8_DECODE_MAP_ENTRY(LdStOrdered), 1168 1199 DIS_ARMV8_DECODE_MAP_ENTRY(LdStCas), 1169 1200 DIS_ARMV8_DECODE_MAP_DEFINE_END_SINGLE_BIT(LdStOrdered_Cas, 21); -
trunk/src/VBox/Disassembler/testcase/tstDisasmArmv8-1-asm.S
r106782 r106783 3843 3843 3844 3844 ; 3845 ; Load/store ordered 3846 ; 3847 3848 stllrb w0, [x1] 3849 stllrb wzr, [sp] 3850 3851 stlrb w0, [x1] 3852 stlrb wzr, [sp] 3853 3854 ldlarb w0, [x1] 3855 ldlarb wzr, [sp] 3856 3857 ldarb w0, [x1] 3858 ldarb wzr, [sp] 3859 3860 stllrh w0, [x1] 3861 stllrh wzr, [sp] 3862 3863 stlrh w0, [x1] 3864 stlrh wzr, [sp] 3865 3866 ldlarh w0, [x1] 3867 ldlarh wzr, [sp] 3868 3869 ldarh w0, [x1] 3870 ldarh wzr, [sp] 3871 3872 stllr w0, [x1] 3873 stllr wzr, [sp] 3874 3875 stlr w0, [x1] 3876 stlr wzr, [sp] 3877 3878 ldlar w0, [x1] 3879 ldlar wzr, [sp] 3880 3881 ldar w0, [x1] 3882 ldar wzr, [sp] 3883 3884 stllr x0, [x1] 3885 stllr xzr, [sp] 3886 3887 stlr x0, [x1] 3888 stlr xzr, [sp] 3889 3890 ldlar x0, [x1] 3891 ldlar xzr, [sp] 3892 3893 ldar x0, [x1] 3894 ldar xzr, [sp] 3895 3896 ; 3845 3897 ; Keep last so the testcase can catch errors in 3846 3898 ; the disassembly of the last instruction.
Note:
See TracChangeset
for help on using the changeset viewer.