diff --git a/include/Zydis/FormatterBuffer.h b/include/Zydis/FormatterBuffer.h index 3a397e5e..5f3bcfac 100644 --- a/include/Zydis/FormatterBuffer.h +++ b/include/Zydis/FormatterBuffer.h @@ -182,6 +182,18 @@ typedef struct ZydisFormatterBuffer_ ZyanString string; } ZydisFormatterBuffer; +/** + * Defines the `ZydisFormatterBufferState` struct. + * + * All fields in this struct should be considered as "private". Any changes may + * lead to unexpected behavior. + */ +typedef struct ZydisFormatterBufferState_ +{ + ZyanUPointer data; + ZyanUSize size; +} ZydisFormatterBufferState; + /* ---------------------------------------------------------------------------------------------- */ /* ============================================================================================== */ @@ -276,7 +288,7 @@ ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferAppend(ZydisFormatterBuffer* buffer, * as the buffer gets overwritten or destroyed. */ ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferRemember(const ZydisFormatterBuffer* buffer, - ZyanUPointer* state); + ZydisFormatterBufferState* state); /** * Restores a previously saved buffer-state. @@ -293,7 +305,7 @@ ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferRemember(const ZydisFormatterBuffer* * automatically be updated by calling this function. */ ZYDIS_EXPORT ZyanStatus ZydisFormatterBufferRestore(ZydisFormatterBuffer* buffer, - ZyanUPointer state); + ZydisFormatterBufferState* state); /* ---------------------------------------------------------------------------------------------- */ diff --git a/include/Zydis/Internal/FormatterBase.h b/include/Zydis/Internal/FormatterBase.h index a6587267..a8180f3a 100644 --- a/include/Zydis/Internal/FormatterBase.h +++ b/include/Zydis/Internal/FormatterBase.h @@ -138,13 +138,11 @@ extern "C" { * performance for non-tokenizing passes. */ #define ZYDIS_BUFFER_REMEMBER(buffer, state) \ - if ((buffer)->is_token_list) \ - { \ - (state) = (ZyanUPointer)(buffer)->string.vector.data; \ - } else \ + do \ { \ - (state) = (ZyanUPointer)(buffer)->string.vector.size; \ - } + (state).data = (ZyanUPointer)(buffer)->string.vector.data; \ + (state).size = (buffer)->string.vector.size; \ + } while (0) /** * Appends a string (`STR_`-prefix) or a predefined token-list (`TOK_`-prefix). diff --git a/include/Zydis/Internal/FormatterIntel.h b/include/Zydis/Internal/FormatterIntel.h index aa06d33f..25fa4f45 100644 --- a/include/Zydis/Internal/FormatterIntel.h +++ b/include/Zydis/Internal/FormatterIntel.h @@ -76,6 +76,15 @@ ZyanStatus ZydisFormatterIntelFormatInstructionMASM(const ZydisFormatter* format ZyanStatus ZydisFormatterIntelPrintAddressMASM(const ZydisFormatter* formatter, ZydisFormatterBuffer* buffer, ZydisFormatterContext* context); +ZyanStatus ZydisFormatterIntelFormatOperandREGMASM(const ZydisFormatter* formatter, + ZydisFormatterBuffer* buffer, ZydisFormatterContext* context); + +ZyanStatus ZydisFormatterIntelPrintMnemonicMASM(const ZydisFormatter* formatter, + ZydisFormatterBuffer* buffer, ZydisFormatterContext* context); + +ZyanStatus ZydisFormatterIntelPrintRegisterMASM(const ZydisFormatter* formatter, + ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg); + /* ---------------------------------------------------------------------------------------------- */ /* ============================================================================================== */ @@ -244,12 +253,12 @@ static const ZydisFormatter FORMATTER_INTEL_MASM = /* func_format_instruction */ &ZydisFormatterIntelFormatInstructionMASM, /* func_pre_operand */ ZYAN_NULL, /* func_post_operand */ ZYAN_NULL, - /* func_format_operand_reg */ &ZydisFormatterBaseFormatOperandREG, + /* func_format_operand_reg */ &ZydisFormatterIntelFormatOperandREGMASM, /* func_format_operand_mem */ &ZydisFormatterIntelFormatOperandMEM, /* func_format_operand_ptr */ &ZydisFormatterBaseFormatOperandPTR, /* func_format_operand_imm */ &ZydisFormatterBaseFormatOperandIMM, - /* func_print_mnemonic */ &ZydisFormatterIntelPrintMnemonic, - /* func_print_register */ &ZydisFormatterIntelPrintRegister, + /* func_print_mnemonic */ &ZydisFormatterIntelPrintMnemonicMASM, + /* func_print_register */ &ZydisFormatterIntelPrintRegisterMASM, /* func_print_address_abs */ &ZydisFormatterIntelPrintAddressMASM, /* func_print_address_rel */ &ZydisFormatterIntelPrintAddressMASM, /* func_print_disp */ &ZydisFormatterIntelPrintDISP, diff --git a/src/FormatterATT.c b/src/FormatterATT.c index 462ba449..34c3d994 100644 --- a/src/FormatterATT.c +++ b/src/FormatterATT.c @@ -52,7 +52,7 @@ ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter, ZYAN_CHECK(formatter->func_print_prefixes(formatter, buffer, context)); ZYAN_CHECK(formatter->func_print_mnemonic(formatter, buffer, context)); - ZyanUPointer state_mnemonic; + ZydisFormatterBufferState state_mnemonic; ZYDIS_BUFFER_REMEMBER(buffer, state_mnemonic); const ZyanI8 c = (ZyanI8)context->instruction->operand_count_visible - 1; @@ -67,10 +67,11 @@ ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter, continue; } - ZyanUPointer buffer_state; + ZydisFormatterBufferState buffer_state; ZYDIS_BUFFER_REMEMBER(buffer, buffer_state); - if (buffer_state != state_mnemonic) + if ((buffer_state.data != state_mnemonic.data) || + (buffer_state.size != state_mnemonic.size)) { ZYDIS_BUFFER_APPEND(buffer, DELIM_OPERAND); } else @@ -87,7 +88,7 @@ ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter, status = formatter->func_pre_operand(formatter, buffer, context); if (status == ZYDIS_STATUS_SKIP_TOKEN) { - ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state)); + ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, &buffer_state)); continue; } if (!ZYAN_SUCCESS(status)) @@ -115,7 +116,7 @@ ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter, } if (status == ZYDIS_STATUS_SKIP_TOKEN) { - ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state)); + ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, &buffer_state)); continue; } if (!ZYAN_SUCCESS(status)) @@ -128,10 +129,10 @@ ZyanStatus ZydisFormatterATTFormatInstruction(const ZydisFormatter* formatter, status = formatter->func_post_operand(formatter, buffer, context); if (status == ZYDIS_STATUS_SKIP_TOKEN) { - ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state)); + ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, &buffer_state)); continue; } - if (ZYAN_SUCCESS(status)) + if (!ZYAN_SUCCESS(status)) { return status; } diff --git a/src/FormatterBuffer.c b/src/FormatterBuffer.c index 8781a899..4324f6f8 100644 --- a/src/FormatterBuffer.c +++ b/src/FormatterBuffer.c @@ -144,25 +144,22 @@ ZyanStatus ZydisFormatterBufferAppend(ZydisFormatterBuffer* buffer, ZydisTokenTy return ZYAN_STATUS_SUCCESS; } -ZyanStatus ZydisFormatterBufferRemember(const ZydisFormatterBuffer* buffer, ZyanUPointer* state) +ZyanStatus ZydisFormatterBufferRemember(const ZydisFormatterBuffer* buffer, + ZydisFormatterBufferState* state) { if (!buffer || !state) { return ZYAN_STATUS_INVALID_ARGUMENT; } - if (buffer->is_token_list) - { - *state = (ZyanUPointer)buffer->string.vector.data; - } else - { - *state = (ZyanUPointer)buffer->string.vector.size; - } + state->data = (ZyanUPointer)buffer->string.vector.data; + state->size = buffer->string.vector.size; return ZYAN_STATUS_SUCCESS; } -ZyanStatus ZydisFormatterBufferRestore(ZydisFormatterBuffer* buffer, ZyanUPointer state) +ZyanStatus ZydisFormatterBufferRestore(ZydisFormatterBuffer* buffer, + ZydisFormatterBufferState* state) { if (!buffer) { @@ -171,18 +168,15 @@ ZyanStatus ZydisFormatterBufferRestore(ZydisFormatterBuffer* buffer, ZyanUPointe if (buffer->is_token_list) { - const ZyanUSize delta = (ZyanUPointer)buffer->string.vector.data - state; + const ZyanUSize delta = (ZyanUPointer)buffer->string.vector.data - state->data; buffer->capacity += delta; - buffer->string.vector.data = (void*)state; - buffer->string.vector.size = 1; // TODO: Restore size? + buffer->string.vector.data = (void*)state->data; buffer->string.vector.capacity = ZYAN_MIN(buffer->capacity, 255); - *(char*)buffer->string.vector.data = '\0'; - } else - { - buffer->string.vector.size = (ZyanUSize)state; - ZYDIS_STRING_NULLTERMINATE(&buffer->string); } + buffer->string.vector.size = state->size; + ZYDIS_STRING_NULLTERMINATE(&buffer->string); + return ZYAN_STATUS_SUCCESS; } diff --git a/src/FormatterIntel.c b/src/FormatterIntel.c index 77144e82..db62da6e 100644 --- a/src/FormatterIntel.c +++ b/src/FormatterIntel.c @@ -54,7 +54,7 @@ ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter, ZYAN_CHECK(formatter->func_print_prefixes(formatter, buffer, context)); ZYAN_CHECK(formatter->func_print_mnemonic(formatter, buffer, context)); - ZyanUPointer state_mnemonic; + ZydisFormatterBufferState state_mnemonic; ZYDIS_BUFFER_REMEMBER(buffer, state_mnemonic); for (ZyanU8 i = 0; i < context->instruction->operand_count_visible; ++i) { @@ -67,10 +67,11 @@ ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter, continue; } - ZyanUPointer buffer_state; + ZydisFormatterBufferState buffer_state; ZYDIS_BUFFER_REMEMBER(buffer, buffer_state); - if (buffer_state != state_mnemonic) + if ((buffer_state.data != state_mnemonic.data) || + (buffer_state.size != state_mnemonic.size)) { ZYDIS_BUFFER_APPEND(buffer, DELIM_OPERAND); } else @@ -87,7 +88,7 @@ ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter, status = formatter->func_pre_operand(formatter, buffer, context); if (status == ZYDIS_STATUS_SKIP_TOKEN) { - ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state)); + ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, &buffer_state)); continue; } if (!ZYAN_SUCCESS(status)) @@ -115,7 +116,7 @@ ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter, } if (status == ZYDIS_STATUS_SKIP_TOKEN) { - ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state)); + ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, &buffer_state)); continue; } if (!ZYAN_SUCCESS(status)) @@ -128,10 +129,10 @@ ZyanStatus ZydisFormatterIntelFormatInstruction(const ZydisFormatter* formatter, status = formatter->func_post_operand(formatter, buffer, context); if (status == ZYDIS_STATUS_SKIP_TOKEN) { - ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, buffer_state)); + ZYAN_CHECK(ZydisFormatterBufferRestore(buffer, &buffer_state)); continue; } - if (ZYAN_SUCCESS(status)) + if (!ZYAN_SUCCESS(status)) { return status; } @@ -408,6 +409,26 @@ ZyanStatus ZydisFormatterIntelFormatInstructionMASM(const ZydisFormatter* format // memory operands context->runtime_address = 0; + if (context->instruction->mnemonic == ZYDIS_MNEMONIC_INT3) + { + ZydisFormatterContext context_copy = *context; + ZydisDecodedInstruction instruction; + ZydisDecodedOperand operands[1]; + instruction = *context->instruction; + instruction.mnemonic = ZYDIS_MNEMONIC_INT; + instruction.operand_count = 1; + instruction.operand_count_visible = 1; + context_copy.instruction = &instruction; + operands[0].type = ZYDIS_OPERAND_TYPE_IMMEDIATE; + operands[0].visibility = ZYDIS_OPERAND_VISIBILITY_IMPLICIT; + operands[0].imm.is_relative = ZYAN_FALSE; + operands[0].imm.is_signed = ZYAN_FALSE; + operands[0].imm.value.u = 3; + operands[0].imm.size = 8; + context_copy.operands = operands; + return ZydisFormatterIntelFormatInstruction(formatter, buffer, &context_copy); + } + return ZydisFormatterIntelFormatInstruction(formatter, buffer, context); } @@ -451,6 +472,58 @@ ZyanStatus ZydisFormatterIntelPrintAddressMASM(const ZydisFormatter* formatter, return ZYAN_STATUS_SUCCESS; } +ZyanStatus ZydisFormatterIntelFormatOperandREGMASM(const ZydisFormatter* formatter, + ZydisFormatterBuffer* buffer, ZydisFormatterContext* context) +{ + ZYAN_ASSERT(formatter); + ZYAN_ASSERT(buffer); + ZYAN_ASSERT(context); + + if ((context->instruction->mnemonic == ZYDIS_MNEMONIC_FUCOMP) && (context->operand->id == 0)) + { + return ZYDIS_STATUS_SKIP_TOKEN; + } + + return ZydisFormatterBaseFormatOperandREG(formatter, buffer, context); +} + +ZyanStatus ZydisFormatterIntelPrintMnemonicMASM(const ZydisFormatter* formatter, + ZydisFormatterBuffer* buffer, ZydisFormatterContext* context) +{ + ZYAN_ASSERT(formatter); + ZYAN_ASSERT(buffer); + ZYAN_ASSERT(context); + + if (context->instruction->mnemonic == ZYDIS_MNEMONIC_INT1) + { + ZYDIS_BUFFER_APPEND_CASE(buffer, INVALID_MNEMONIC, formatter->case_mnemonic); + return ZYAN_STATUS_SUCCESS; + } + + return ZydisFormatterIntelPrintMnemonic(formatter, buffer, context); +} + +ZyanStatus ZydisFormatterIntelPrintRegisterMASM(const ZydisFormatter* formatter, + ZydisFormatterBuffer* buffer, ZydisFormatterContext* context, ZydisRegister reg) +{ + ZYAN_ASSERT(formatter); + ZYAN_ASSERT(buffer); + ZYAN_ASSERT(context); + + if ((reg >= ZYDIS_REGISTER_ST0) && (reg <= ZYDIS_REGISTER_ST7)) + { + static const ZydisShortString STR_ST_PREFIX = ZYDIS_MAKE_SHORTSTRING("st("); + static const ZyanStringView STR_ST_SUFFIX = ZYAN_DEFINE_STRING_VIEW(")"); + ZYDIS_BUFFER_APPEND_TOKEN(buffer, ZYDIS_TOKEN_REGISTER); + ZYAN_CHECK(ZydisStringAppendShortCase(&buffer->string, &STR_ST_PREFIX, + formatter->case_registers)); + return ZydisStringAppendDecU(&buffer->string, reg - ZYDIS_REGISTER_ST0, 0, ZYAN_NULL, + &STR_ST_SUFFIX); + } + + return ZydisFormatterIntelPrintRegister(formatter, buffer, context, reg); +} + /* ---------------------------------------------------------------------------------------------- */ /* ============================================================================================== */ diff --git a/tests/cases/3dnow_000.out b/tests/cases/3dnow_000.out index 17c64f64..79fbf9c6 100644 --- a/tests/cases/3dnow_000.out +++ b/tests/cases/3dnow_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfsqrt [ENC: 3DNOW, MAP: 0F0F, OPC: 0x97] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 37 97 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm6 @@ -23,15 +23,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfsqrt (%rdi), %mm6 RELATIVE: pfsqrt (%rdi), %mm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfsqrt mm6, qword ptr ds:[rdi] RELATIVE: pfsqrt mm6, qword ptr ds:[rdi] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfsqrt mm6, qword ptr ds:[rdi] + RELATIVE: pfsqrt mm6, qword ptr ds:[rdi] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 37 97 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_001.out b/tests/cases/3dnow_001.out index 7962a7c0..b088b57a 100644 --- a/tests/cases/3dnow_001.out +++ b/tests/cases/3dnow_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcmpge [ENC: 3DNOW, MAP: 0F0F, OPC: 0x90] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 93 B3 EE 99 F1 90 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm2 @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFFF199EEB3 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcmpge -0xE66114D(%rbx), %mm2 RELATIVE: pfcmpge -0xE66114D(%rbx), %mm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcmpge mm2, qword ptr ds:[rbx-0xE66114D] RELATIVE: pfcmpge mm2, qword ptr ds:[rbx-0xE66114D] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcmpge mm2, qword ptr ds:[rbx-0E66114Dh] + RELATIVE: pfcmpge mm2, qword ptr ds:[rbx-0E66114Dh] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 93 B3 EE 99 F1 90 : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_002.out b/tests/cases/3dnow_002.out index 0e24daf0..fe142494 100644 --- a/tests/cases/3dnow_002.out +++ b/tests/cases/3dnow_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcmpgt [ENC: 3DNOW, MAP: 0F0F, OPC: 0xA0] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 12 A0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm2 @@ -23,15 +23,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcmpgt (%rdx), %mm2 RELATIVE: pfcmpgt (%rdx), %mm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcmpgt mm2, qword ptr ds:[rdx] RELATIVE: pfcmpgt mm2, qword ptr ds:[rdx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcmpgt mm2, qword ptr ds:[rdx] + RELATIVE: pfcmpgt mm2, qword ptr ds:[rdx] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 12 A0 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_003.out b/tests/cases/3dnow_003.out index 86c5e6b1..e16e0fe2 100644 --- a/tests/cases/3dnow_003.out +++ b/tests/cases/3dnow_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfmax [ENC: 3DNOW, MAP: 0F0F, OPC: 0xA4] LENGTH: 4 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_MODRM OPTIMIZED: 0F 0F E2 A4 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm4 1 REGISTER EXPLICIT R MODRM_RM 64 1 64 INT mm2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfmax %mm2, %mm4 RELATIVE: pfmax %mm2, %mm4 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfmax mm4, mm2 RELATIVE: pfmax mm4, mm2 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfmax mm4, mm2 + RELATIVE: pfmax mm4, mm2 + +== [ SEGMENTS ] ========================================================================================== 0F 0F E2 A4 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_004.out b/tests/cases/3dnow_004.out index 631638f4..d1204e75 100644 --- a/tests/cases/3dnow_004.out +++ b/tests/cases/3dnow_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pmulhrw [ENC: 3DNOW, MAP: 0F0F, OPC: 0xB7] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_REX ACCEPTS_SEGMENT OPTIMIZED: 41 0F 0F 6F 7A B7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm5 @@ -23,15 +23,19 @@ DISP = 0x000000000000007A -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pmulhrw 0x7A(%r15), %mm5 RELATIVE: pmulhrw 0x7A(%r15), %mm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pmulhrw mm5, qword ptr ds:[r15+0x7A] RELATIVE: pmulhrw mm5, qword ptr ds:[r15+0x7A] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pmulhrw mm5, qword ptr ds:[r15+7Ah] + RELATIVE: pmulhrw mm5, qword ptr ds:[r15+7Ah] + +== [ SEGMENTS ] ========================================================================================== 4F 0F 0F 6F 7A B7 : : : : :..OPCODE : : : :..DISP diff --git a/tests/cases/3dnow_005.out b/tests/cases/3dnow_005.out index 7bd9afcf..4f42f656 100644 --- a/tests/cases/3dnow_005.out +++ b/tests/cases/3dnow_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pmulhrw [ENC: 3DNOW, MAP: 0F0F, OPC: 0xB7] LENGTH: 4 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_MODRM OPTIMIZED: 0F 0F CD B7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm1 1 REGISTER EXPLICIT R MODRM_RM 64 1 64 INT mm5 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pmulhrw %mm5, %mm1 RELATIVE: pmulhrw %mm5, %mm1 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pmulhrw mm1, mm5 RELATIVE: pmulhrw mm1, mm5 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pmulhrw mm1, mm5 + RELATIVE: pmulhrw mm1, mm5 + +== [ SEGMENTS ] ========================================================================================== 0F 0F CD B7 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_006.out b/tests/cases/3dnow_006.out index 113f6e90..9bbc5cd3 100644 --- a/tests/cases/3dnow_006.out +++ b/tests/cases/3dnow_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcmpge [ENC: 3DNOW, MAP: 0F0F, OPC: 0x90] LENGTH: 4 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_MODRM OPTIMIZED: 0F 0F F5 90 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm6 1 REGISTER EXPLICIT R MODRM_RM 64 1 64 INT mm5 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcmpge %mm5, %mm6 RELATIVE: pfcmpge %mm5, %mm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcmpge mm6, mm5 RELATIVE: pfcmpge mm6, mm5 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcmpge mm6, mm5 + RELATIVE: pfcmpge mm6, mm5 + +== [ SEGMENTS ] ========================================================================================== 0F 0F F5 90 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_007.out b/tests/cases/3dnow_007.out index 647736ca..3fc9a1ef 100644 --- a/tests/cases/3dnow_007.out +++ b/tests/cases/3dnow_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfrcp [ENC: 3DNOW, MAP: 0F0F, OPC: 0x96] LENGTH: 4 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_MODRM OPTIMIZED: 0F 0F E9 96 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm5 1 REGISTER EXPLICIT R MODRM_RM 64 1 64 INT mm1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfrcp %mm1, %mm5 RELATIVE: pfrcp %mm1, %mm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfrcp mm5, mm1 RELATIVE: pfrcp mm5, mm1 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfrcp mm5, mm1 + RELATIVE: pfrcp mm5, mm1 + +== [ SEGMENTS ] ========================================================================================== 0F 0F E9 96 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_008.out b/tests/cases/3dnow_008.out index 707a7638..3b398c67 100644 --- a/tests/cases/3dnow_008.out +++ b/tests/cases/3dnow_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pi2fd [ENC: 3DNOW, MAP: 0F0F, OPC: 0x0D] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT HAS_SEGMENT HAS_SEGMENT_GS OPTIMIZED: 65 0F 0F A8 4C C3 AB BF 0D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm5 @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFFBFABC34C -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pi2fd %gs:-0x40543CB4(%rax), %mm5 RELATIVE: pi2fd %gs:-0x40543CB4(%rax), %mm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pi2fd mm5, qword ptr gs:[rax-0x40543CB4] RELATIVE: pi2fd mm5, qword ptr gs:[rax-0x40543CB4] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pi2fd mm5, qword ptr gs:[rax-40543CB4h] + RELATIVE: pi2fd mm5, qword ptr gs:[rax-40543CB4h] + +== [ SEGMENTS ] ========================================================================================== 65 0F 0F A8 4C C3 AB BF 0D : : : : :..OPCODE : : : :..DISP diff --git a/tests/cases/3dnow_009.out b/tests/cases/3dnow_009.out index a281b9f8..c7b75006 100644 --- a/tests/cases/3dnow_009.out +++ b/tests/cases/3dnow_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfmul [ENC: 3DNOW, MAP: 0F0F, OPC: 0xB4] LENGTH: 4 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_MODRM OPTIMIZED: 0F 0F E1 B4 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm4 1 REGISTER EXPLICIT R MODRM_RM 64 1 64 INT mm1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfmul %mm1, %mm4 RELATIVE: pfmul %mm1, %mm4 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfmul mm4, mm1 RELATIVE: pfmul mm4, mm1 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfmul mm4, mm1 + RELATIVE: pfmul mm4, mm1 + +== [ SEGMENTS ] ========================================================================================== 0F 0F E1 B4 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_010.out b/tests/cases/3dnow_010.out index 04128614..473c3d82 100644 --- a/tests/cases/3dnow_010.out +++ b/tests/cases/3dnow_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfrcpit2 [ENC: 3DNOW, MAP: 0F0F, OPC: 0xB6] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 66 C5 B6 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm4 @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFFFFFFFFC5 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfrcpit2 -0x3B(%rsi), %mm4 RELATIVE: pfrcpit2 -0x3B(%rsi), %mm4 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfrcpit2 mm4, qword ptr ds:[rsi-0x3B] RELATIVE: pfrcpit2 mm4, qword ptr ds:[rsi-0x3B] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfrcpit2 mm4, qword ptr ds:[rsi-3Bh] + RELATIVE: pfrcpit2 mm4, qword ptr ds:[rsi-3Bh] + +== [ SEGMENTS ] ========================================================================================== 4D F2 0F 0F 66 C5 B6 : : : : :..OPCODE : : : :..DISP diff --git a/tests/cases/3dnow_011.out b/tests/cases/3dnow_011.out index 4c61b9ae..aa6c00bb 100644 --- a/tests/cases/3dnow_011.out +++ b/tests/cases/3dnow_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfnacc [ENC: 3DNOW, MAP: 0F0F, OPC: 0x8A] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F AA 0D FB 21 51 8A -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm5 @@ -23,15 +23,19 @@ DISP = 0x000000005121FB0D -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfnacc 0x5121FB0D(%rdx), %mm5 RELATIVE: pfnacc 0x5121FB0D(%rdx), %mm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfnacc mm5, qword ptr ds:[rdx+0x5121FB0D] RELATIVE: pfnacc mm5, qword ptr ds:[rdx+0x5121FB0D] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfnacc mm5, qword ptr ds:[rdx+5121FB0Dh] + RELATIVE: pfnacc mm5, qword ptr ds:[rdx+5121FB0Dh] + +== [ SEGMENTS ] ========================================================================================== 0F 0F AA 0D FB 21 51 8A : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_012.out b/tests/cases/3dnow_012.out index 6e767f56..602f19b6 100644 --- a/tests/cases/3dnow_012.out +++ b/tests/cases/3dnow_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfmax [ENC: 3DNOW, MAP: 0F0F, OPC: 0xA4] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F B7 9A 3E 9B 15 A4 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm6 @@ -23,15 +23,19 @@ DISP = 0x00000000159B3E9A -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfmax 0x159B3E9A(%rdi), %mm6 RELATIVE: pfmax 0x159B3E9A(%rdi), %mm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfmax mm6, qword ptr ds:[rdi+0x159B3E9A] RELATIVE: pfmax mm6, qword ptr ds:[rdi+0x159B3E9A] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfmax mm6, qword ptr ds:[rdi+159B3E9Ah] + RELATIVE: pfmax mm6, qword ptr ds:[rdi+159B3E9Ah] + +== [ SEGMENTS ] ========================================================================================== 0F 0F B7 9A 3E 9B 15 A4 : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_013.out b/tests/cases/3dnow_013.out index a49d956a..f8796bf7 100644 --- a/tests/cases/3dnow_013.out +++ b/tests/cases/3dnow_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfpnacc [ENC: 3DNOW, MAP: 0F0F, OPC: 0x8E] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 02 8E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm0 @@ -23,15 +23,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfpnacc (%rdx), %mm0 RELATIVE: pfpnacc (%rdx), %mm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfpnacc mm0, qword ptr ds:[rdx] RELATIVE: pfpnacc mm0, qword ptr ds:[rdx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfpnacc mm0, qword ptr ds:[rdx] + RELATIVE: pfpnacc mm0, qword ptr ds:[rdx] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 02 8E : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_014.out b/tests/cases/3dnow_014.out index 1d0b750b..bd0b6ab1 100644 --- a/tests/cases/3dnow_014.out +++ b/tests/cases/3dnow_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcmpeq [ENC: 3DNOW, MAP: 0F0F, OPC: 0xB0] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 78 66 B0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm7 @@ -23,15 +23,19 @@ DISP = 0x0000000000000066 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcmpeq 0x66(%rax), %mm7 RELATIVE: pfcmpeq 0x66(%rax), %mm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcmpeq mm7, qword ptr ds:[rax+0x66] RELATIVE: pfcmpeq mm7, qword ptr ds:[rax+0x66] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcmpeq mm7, qword ptr ds:[rax+66h] + RELATIVE: pfcmpeq mm7, qword ptr ds:[rax+66h] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 78 66 B0 : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_015.out b/tests/cases/3dnow_015.out index 8c407b6d..7f229d58 100644 --- a/tests/cases/3dnow_015.out +++ b/tests/cases/3dnow_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfsub [ENC: 3DNOW, MAP: 0F0F, OPC: 0x9A] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 84 31 81 BC F6 36 9A -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm0 @@ -23,15 +23,19 @@ DISP = 0x0000000036F6BC81 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfsub 0x36F6BC81(%rcx,%rsi,1), %mm0 RELATIVE: pfsub 0x36F6BC81(%rcx,%rsi,1), %mm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfsub mm0, qword ptr ds:[rcx+rsi*1+0x36F6BC81] RELATIVE: pfsub mm0, qword ptr ds:[rcx+rsi*1+0x36F6BC81] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfsub mm0, qword ptr ds:[rcx+rsi*1+36F6BC81h] + RELATIVE: pfsub mm0, qword ptr ds:[rcx+rsi*1+36F6BC81h] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 84 31 81 BC F6 36 9A : : : : :..OPCODE : : : :..DISP diff --git a/tests/cases/3dnow_016.out b/tests/cases/3dnow_016.out index b3bd89cd..233a1b4b 100644 --- a/tests/cases/3dnow_016.out +++ b/tests/cases/3dnow_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pavgusb [ENC: 3DNOW, MAP: 0F0F, OPC: 0xBF] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 03 BF -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm0 @@ -23,15 +23,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pavgusb (%rbx), %mm0 RELATIVE: pavgusb (%rbx), %mm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pavgusb mm0, qword ptr ds:[rbx] RELATIVE: pavgusb mm0, qword ptr ds:[rbx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pavgusb mm0, qword ptr ds:[rbx] + RELATIVE: pavgusb mm0, qword ptr ds:[rbx] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 03 BF : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_017.out b/tests/cases/3dnow_017.out index 0c680cc4..ba9f35a1 100644 --- a/tests/cases/3dnow_017.out +++ b/tests/cases/3dnow_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcmpge [ENC: 3DNOW, MAP: 0F0F, OPC: 0x90] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 13 90 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm2 @@ -23,15 +23,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcmpge (%rbx), %mm2 RELATIVE: pfcmpge (%rbx), %mm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcmpge mm2, qword ptr ds:[rbx] RELATIVE: pfcmpge mm2, qword ptr ds:[rbx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcmpge mm2, qword ptr ds:[rbx] + RELATIVE: pfcmpge mm2, qword ptr ds:[rbx] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 13 90 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_018.out b/tests/cases/3dnow_018.out index bbcba506..f57d3b9c 100644 --- a/tests/cases/3dnow_018.out +++ b/tests/cases/3dnow_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfrcpit2 [ENC: 3DNOW, MAP: 0F0F, OPC: 0xB6] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_REX ACCEPTS_SEGMENT OPTIMIZED: 41 0F 0F 17 B6 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm2 @@ -23,15 +23,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfrcpit2 (%r15), %mm2 RELATIVE: pfrcpit2 (%r15), %mm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfrcpit2 mm2, qword ptr ds:[r15] RELATIVE: pfrcpit2 mm2, qword ptr ds:[r15] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfrcpit2 mm2, qword ptr ds:[r15] + RELATIVE: pfrcpit2 mm2, qword ptr ds:[r15] + +== [ SEGMENTS ] ========================================================================================== F3 41 0F 0F 17 B6 : : : : :..OPCODE : : : :..MODRM diff --git a/tests/cases/3dnow_019.out b/tests/cases/3dnow_019.out index cb661474..bcc0ed4c 100644 --- a/tests/cases/3dnow_019.out +++ b/tests/cases/3dnow_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfmin [ENC: 3DNOW, MAP: 0F0F, OPC: 0x94] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F BB DF 7C B7 43 94 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm7 @@ -23,15 +23,19 @@ DISP = 0x0000000043B77CDF -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfmin 0x43B77CDF(%rbx), %mm7 RELATIVE: pfmin 0x43B77CDF(%rbx), %mm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfmin mm7, qword ptr ds:[rbx+0x43B77CDF] RELATIVE: pfmin mm7, qword ptr ds:[rbx+0x43B77CDF] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfmin mm7, qword ptr ds:[rbx+43B77CDFh] + RELATIVE: pfmin mm7, qword ptr ds:[rbx+43B77CDFh] + +== [ SEGMENTS ] ========================================================================================== 0F 0F BB DF 7C B7 43 94 : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_020.out b/tests/cases/3dnow_020.out index e523c737..3fbb692c 100644 --- a/tests/cases/3dnow_020.out +++ b/tests/cases/3dnow_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfrcp [ENC: 3DNOW, MAP: 0F0F, OPC: 0x96] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 8F C1 BB 4C 8F 96 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm1 @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF8F4CBBC1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfrcp -0x70B3443F(%rdi), %mm1 RELATIVE: pfrcp -0x70B3443F(%rdi), %mm1 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfrcp mm1, qword ptr ds:[rdi-0x70B3443F] RELATIVE: pfrcp mm1, qword ptr ds:[rdi-0x70B3443F] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfrcp mm1, qword ptr ds:[rdi-70B3443Fh] + RELATIVE: pfrcp mm1, qword ptr ds:[rdi-70B3443Fh] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 8F C1 BB 4C 8F 96 : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_021.out b/tests/cases/3dnow_021.out index d74481b8..487f1dc0 100644 --- a/tests/cases/3dnow_021.out +++ b/tests/cases/3dnow_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcpit1 [ENC: 3DNOW, MAP: 0F0F, OPC: 0xA6] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 97 D4 FD 14 8A A6 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm2 @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF8A14FDD4 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcpit1 -0x75EB022C(%rdi), %mm2 RELATIVE: pfcpit1 -0x75EB022C(%rdi), %mm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcpit1 mm2, qword ptr ds:[rdi-0x75EB022C] RELATIVE: pfcpit1 mm2, qword ptr ds:[rdi-0x75EB022C] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcpit1 mm2, qword ptr ds:[rdi-75EB022Ch] + RELATIVE: pfcpit1 mm2, qword ptr ds:[rdi-75EB022Ch] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 97 D4 FD 14 8A A6 : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_022.out b/tests/cases/3dnow_022.out index 98c57970..b9a829e2 100644 --- a/tests/cases/3dnow_022.out +++ b/tests/cases/3dnow_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfcmpgt [ENC: 3DNOW, MAP: 0F0F, OPC: 0xA0] LENGTH: 4 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_MODRM OPTIMIZED: 0F 0F EC A0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm5 1 REGISTER EXPLICIT R MODRM_RM 64 1 64 INT mm4 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfcmpgt %mm4, %mm5 RELATIVE: pfcmpgt %mm4, %mm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfcmpgt mm5, mm4 RELATIVE: pfcmpgt mm5, mm4 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfcmpgt mm5, mm4 + RELATIVE: pfcmpgt mm5, mm4 + +== [ SEGMENTS ] ========================================================================================== 0F 0F EC A0 : : :..OPCODE : :..MODRM diff --git a/tests/cases/3dnow_023.out b/tests/cases/3dnow_023.out index 66abd309..1cd2cb9b 100644 --- a/tests/cases/3dnow_023.out +++ b/tests/cases/3dnow_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pf2iw [ENC: 3DNOW, MAP: 0F0F, OPC: 0x1C] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 0F 0F 92 BA C8 41 5E 1C -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm2 @@ -23,15 +23,19 @@ DISP = 0x000000005E41C8BA -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pf2iw 0x5E41C8BA(%rdx), %mm2 RELATIVE: pf2iw 0x5E41C8BA(%rdx), %mm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pf2iw mm2, qword ptr ds:[rdx+0x5E41C8BA] RELATIVE: pf2iw mm2, qword ptr ds:[rdx+0x5E41C8BA] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pf2iw mm2, qword ptr ds:[rdx+5E41C8BAh] + RELATIVE: pf2iw mm2, qword ptr ds:[rdx+5E41C8BAh] + +== [ SEGMENTS ] ========================================================================================== 0F 0F 92 BA C8 41 5E 1C : : : :..OPCODE : : :..DISP diff --git a/tests/cases/3dnow_024.out b/tests/cases/3dnow_024.out index f5a6a18d..d58aa8ec 100644 --- a/tests/cases/3dnow_024.out +++ b/tests/cases/3dnow_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pfsubr [ENC: 3DNOW, MAP: 0F0F, OPC: 0xAA] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB ACCEPTS_SEGMENT OPTIMIZED: 0F 0F AC 4A 7F E3 1A FE AA -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 64 1 64 INT mm5 @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFFFE1AE37F -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pfsubr -0x1E51C81(%rdx,%rcx,2), %mm5 RELATIVE: pfsubr -0x1E51C81(%rdx,%rcx,2), %mm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pfsubr mm5, qword ptr ds:[rdx+rcx*2-0x1E51C81] RELATIVE: pfsubr mm5, qword ptr ds:[rdx+rcx*2-0x1E51C81] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pfsubr mm5, qword ptr ds:[rdx+rcx*2-1E51C81h] + RELATIVE: pfsubr mm5, qword ptr ds:[rdx+rcx*2-1E51C81h] + +== [ SEGMENTS ] ========================================================================================== 0F 0F AC 4A 7F E3 1A FE AA : : : : :..OPCODE : : : :..DISP diff --git a/tests/cases/default_000.out b/tests/cases/default_000.out index 9a4b58c2..0260aec9 100644 --- a/tests/cases/default_000.out +++ b/tests/cases/default_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: leave [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xC9] LENGTH: 2 SSZ: 64 @@ -10,7 +10,7 @@ EXCEPTIONS: NONE OPTIMIZED: C9 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY HIDDEN R NONE 64 1 64 INT TYPE = MEM @@ -23,15 +23,19 @@ 2 REGISTER HIDDEN RW NONE 64 1 64 INT rsp -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: leave RELATIVE: leave -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: leave RELATIVE: leave -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: leave + RELATIVE: leave + +== [ SEGMENTS ] ========================================================================================== 26 C9 : :..OPCODE :..PREFIXES diff --git a/tests/cases/default_001.out b/tests/cases/default_001.out index fbec3fa9..0773d5fa 100644 --- a/tests/cases/default_001.out +++ b/tests/cases/default_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: test [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xA9] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: CPUFLAG_ACCESS OPTIMIZED: A9 A1 EF 16 5E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER IMPLICIT R NONE 32 1 32 INT eax @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN W NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [CF : 0 ] [PF : M ] [AF : U ] [ZF : M ] [SF : M ] [OF : 0 ] READ: 0x00000000 WRITTEN: 0x000008D5 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: test $0x5E16EFA1, %eax RELATIVE: test $0x5E16EFA1, %eax -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: test eax, 0x5E16EFA1 RELATIVE: test eax, 0x5E16EFA1 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: test eax, 5E16EFA1h + RELATIVE: test eax, 5E16EFA1h + +== [ SEGMENTS ] ========================================================================================== A9 A1 EF 16 5E : :..IMM :..OPCODE diff --git a/tests/cases/default_002.out b/tests/cases/default_002.out index 270f95b6..6df7e7a6 100644 --- a/tests/cases/default_002.out +++ b/tests/cases/default_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: xor [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x31] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM CPUFLAG_ACCESS ACCEPTS_LOCK ACCEPTS_XACQUIRE ACCEPTS_XRELEASE ACCEPTS_SEGMENT OPTIMIZED: 31 39 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT RW MODRM_RM 32 1 32 INT TYPE = MEM @@ -24,20 +24,24 @@ 2 REGISTER HIDDEN W NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [CF : 0 ] [PF : M ] [AF : U ] [ZF : M ] [SF : M ] [OF : 0 ] READ: 0x00000000 WRITTEN: 0x000008D5 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: xor %edi, (%rcx) RELATIVE: xor %edi, (%rcx) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: xor dword ptr ds:[rcx], edi RELATIVE: xor dword ptr ds:[rcx], edi -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: xor dword ptr ds:[rcx], edi + RELATIVE: xor dword ptr ds:[rcx], edi + +== [ SEGMENTS ] ========================================================================================== 31 39 : :..MODRM :..OPCODE diff --git a/tests/cases/default_003.out b/tests/cases/default_003.out index d90ac4f7..3f91f910 100644 --- a/tests/cases/default_003.out +++ b/tests/cases/default_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xB7] LENGTH: 2 SSZ: 64 @@ -10,22 +10,26 @@ EXCEPTIONS: NONE OPTIMIZED: B7 A7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W OPCODE 8 1 8 INT bh 1 IMMEDIATE EXPLICIT R SIMM8 8 1 8 INT [S A 8] 0xFFFFFFFFFFFFFFA7 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov $-0x59, %bh RELATIVE: mov $-0x59, %bh -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov bh, 0xA7 RELATIVE: mov bh, 0xA7 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov bh, -59h + RELATIVE: mov bh, -59h + +== [ SEGMENTS ] ========================================================================================== B7 A7 : :..IMM :..OPCODE diff --git a/tests/cases/default_004.out b/tests/cases/default_004.out index 499a8f02..86efee56 100644 --- a/tests/cases/default_004.out +++ b/tests/cases/default_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jnz [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x75] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS ACCEPTS_BND ACCEPTS_BRANCH_HINTS OPTIMIZED: 75 3E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0x000000000000003E @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN R NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [ZF : T ] READ: 0x00000040 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jnz 0x0000000000000040 RELATIVE: jnz +0x40 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jnz 0x0000000000000040 RELATIVE: jnz +0x40 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jnz $+40h + RELATIVE: jnz $+40h + +== [ SEGMENTS ] ========================================================================================== 75 3E : :..IMM :..OPCODE diff --git a/tests/cases/default_005.out b/tests/cases/default_005.out index f33d5d4a..32889da7 100644 --- a/tests/cases/default_005.out +++ b/tests/cases/default_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jrcxz [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xE3] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE OPTIMIZED: E3 96 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0xFFFFFFFFFFFFFF96 @@ -19,15 +19,19 @@ 2 REGISTER HIDDEN RW NONE 64 1 64 INT rip -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jrcxz 0xFFFFFFFFFFFFFF98 RELATIVE: jrcxz -0x68 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jrcxz 0xFFFFFFFFFFFFFF98 RELATIVE: jrcxz -0x68 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jrcxz $-68h + RELATIVE: jrcxz $-68h + +== [ SEGMENTS ] ========================================================================================== E3 96 : :..IMM :..OPCODE diff --git a/tests/cases/default_006.out b/tests/cases/default_006.out index 9a70dff2..03e5dae2 100644 --- a/tests/cases/default_006.out +++ b/tests/cases/default_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xBA] LENGTH: 5 SSZ: 64 @@ -10,22 +10,26 @@ EXCEPTIONS: NONE OPTIMIZED: BA 81 1A 2F 42 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W OPCODE 32 1 32 INT edx 1 IMMEDIATE EXPLICIT R SIMM16_32_64 32 1 32 INT [S A 32] 0x00000000422F1A81 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov $0x422F1A81, %edx RELATIVE: mov $0x422F1A81, %edx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov edx, 0x422F1A81 RELATIVE: mov edx, 0x422F1A81 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov edx, 422F1A81h + RELATIVE: mov edx, 422F1A81h + +== [ SEGMENTS ] ========================================================================================== BA 81 1A 2F 42 : :..IMM :..OPCODE diff --git a/tests/cases/default_007.out b/tests/cases/default_007.out index 000c7e50..f60a2be8 100644 --- a/tests/cases/default_007.out +++ b/tests/cases/default_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: scasd [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xAF] LENGTH: 1 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: CPUFLAG_ACCESS ACCEPTS_REPE ACCEPTS_REPZ ACCEPTS_REPNE ACCEPTS_REPNZ OPTIMIZED: AF -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER HIDDEN R NONE 32 1 32 INT eax @@ -24,19 +24,23 @@ 2 REGISTER HIDDEN RW NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [CF : M ] [PF : M ] [AF : M ] [ZF : M ] [SF : M ] [DF : T ] [OF : M ] READ: 0x00000400 WRITTEN: 0x000008D5 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: scasd RELATIVE: scasd -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: scasd RELATIVE: scasd -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: scasd + RELATIVE: scasd + +== [ SEGMENTS ] ========================================================================================== AF :..OPCODE diff --git a/tests/cases/default_008.out b/tests/cases/default_008.out index afa4451f..c43053cd 100644 --- a/tests/cases/default_008.out +++ b/tests/cases/default_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: loope [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xE1] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS OPTIMIZED: E1 6C -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0x000000000000006C @@ -20,20 +20,24 @@ 3 REGISTER HIDDEN R NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [ZF : T ] READ: 0x00000040 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: loope 0x000000000000006E RELATIVE: loope +0x6E -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: loope 0x000000000000006E RELATIVE: loope +0x6E -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: loope $+6Eh + RELATIVE: loope $+6Eh + +== [ SEGMENTS ] ========================================================================================== E1 6C : :..IMM :..OPCODE diff --git a/tests/cases/default_009.out b/tests/cases/default_009.out index 61987b67..c4cda5ab 100644 --- a/tests/cases/default_009.out +++ b/tests/cases/default_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pop [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x5C] LENGTH: 1 SSZ: 64 @@ -10,7 +10,7 @@ EXCEPTIONS: NONE OPTIMIZED: 5C -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W OPCODE 64 1 64 INT rsp @@ -23,14 +23,18 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pop %rsp RELATIVE: pop %rsp -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pop rsp RELATIVE: pop rsp -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pop rsp + RELATIVE: pop rsp + +== [ SEGMENTS ] ========================================================================================== 5C :..OPCODE diff --git a/tests/cases/default_010.out b/tests/cases/default_010.out index 01ccc50a..13fabc1b 100644 --- a/tests/cases/default_010.out +++ b/tests/cases/default_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: xchg [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x92] LENGTH: 2 SSZ: 64 @@ -11,22 +11,26 @@ ATTRIBUTES: HAS_REX OPTIMIZED: 49 92 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW OPCODE 64 1 64 INT r10 1 REGISTER IMPLICIT RW NONE 64 1 64 INT rax -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: xchg %rax, %r10 RELATIVE: xchg %rax, %r10 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: xchg r10, rax RELATIVE: xchg r10, rax -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: xchg r10, rax + RELATIVE: xchg r10, rax + +== [ SEGMENTS ] ========================================================================================== 4F 92 : :..OPCODE :..REX diff --git a/tests/cases/default_011.out b/tests/cases/default_011.out index 17b86f2b..17fbd00b 100644 --- a/tests/cases/default_011.out +++ b/tests/cases/default_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jz [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x74] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS ACCEPTS_BND ACCEPTS_BRANCH_HINTS OPTIMIZED: 74 14 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0x0000000000000014 @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN R NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [ZF : T ] READ: 0x00000040 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jz 0x0000000000000016 RELATIVE: jz +0x16 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jz 0x0000000000000016 RELATIVE: jz +0x16 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jz $+16h + RELATIVE: jz $+16h + +== [ SEGMENTS ] ========================================================================================== 74 14 : :..IMM :..OPCODE diff --git a/tests/cases/default_012.out b/tests/cases/default_012.out index 26af2cdf..a16d163a 100644 --- a/tests/cases/default_012.out +++ b/tests/cases/default_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: ret [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xC2] LENGTH: 3 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_BND OPTIMIZED: C2 E9 5D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R UIMM16 16 1 16 UINT [U A 16] 0x0000000000005DE9 @@ -25,15 +25,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: ret $0x5DE9 RELATIVE: ret $0x5DE9 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: ret 0x5DE9 RELATIVE: ret 0x5DE9 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: ret 5DE9h + RELATIVE: ret 5DE9h + +== [ SEGMENTS ] ========================================================================================== C2 E9 5D : :..IMM :..OPCODE diff --git a/tests/cases/default_013.out b/tests/cases/default_013.out index 5d3361d7..60534b65 100644 --- a/tests/cases/default_013.out +++ b/tests/cases/default_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jz [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x74] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS ACCEPTS_BND ACCEPTS_BRANCH_HINTS OPTIMIZED: 74 63 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0x0000000000000063 @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN R NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [ZF : T ] READ: 0x00000040 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jz 0x0000000000000065 RELATIVE: jz +0x65 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jz 0x0000000000000065 RELATIVE: jz +0x65 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jz $+65h + RELATIVE: jz $+65h + +== [ SEGMENTS ] ========================================================================================== 74 63 : :..IMM :..OPCODE diff --git a/tests/cases/default_014.out b/tests/cases/default_014.out index 13c5c710..22c09a02 100644 --- a/tests/cases/default_014.out +++ b/tests/cases/default_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: add [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x02] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM CPUFLAG_ACCESS ACCEPTS_SEGMENT OPTIMIZED: 02 19 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 8 1 8 INT bl @@ -24,20 +24,24 @@ 2 REGISTER HIDDEN W NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [CF : M ] [PF : M ] [AF : M ] [ZF : M ] [SF : M ] [OF : M ] READ: 0x00000000 WRITTEN: 0x000008D5 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: add (%rcx), %bl RELATIVE: add (%rcx), %bl -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: add bl, byte ptr ds:[rcx] RELATIVE: add bl, byte ptr ds:[rcx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: add bl, byte ptr ds:[rcx] + RELATIVE: add bl, byte ptr ds:[rcx] + +== [ SEGMENTS ] ========================================================================================== 02 19 : :..MODRM :..OPCODE diff --git a/tests/cases/default_015.out b/tests/cases/default_015.out index b4db91cf..61a7ffb2 100644 --- a/tests/cases/default_015.out +++ b/tests/cases/default_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: fist [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xDF] LENGTH: 3 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM CPUFLAG_ACCESS ACCEPTS_SEGMENT OPTIMIZED: DF 17 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT W MODRM_RM 16 1 16 INT TYPE = MEM @@ -24,20 +24,24 @@ 2 REGISTER HIDDEN W NONE 16 1 16 STRUCT x87status -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [C0 : U ] [C1 : M ] [C2 : U ] [C3 : U ] READ: 0x00000000 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: fist (%rdi) RELATIVE: fist (%rdi) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: fist word ptr ds:[rdi] RELATIVE: fist word ptr ds:[rdi] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: fist word ptr ds:[rdi] + RELATIVE: fist word ptr ds:[rdi] + +== [ SEGMENTS ] ========================================================================================== 26 DF 17 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_016.out b/tests/cases/default_016.out index b6e537f4..4ac11d52 100644 --- a/tests/cases/default_016.out +++ b/tests/cases/default_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: xlat [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xD7] LENGTH: 1 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT OPTIMIZED: D7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY HIDDEN R NONE 8 1 8 UINT TYPE = MEM @@ -23,14 +23,18 @@ 1 REGISTER HIDDEN W NONE 8 1 8 INT al -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: xlat RELATIVE: xlat -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: xlat RELATIVE: xlat -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: xlat + RELATIVE: xlat + +== [ SEGMENTS ] ========================================================================================== D7 :..OPCODE diff --git a/tests/cases/default_017.out b/tests/cases/default_017.out index 2f86692b..eb7536e7 100644 --- a/tests/cases/default_017.out +++ b/tests/cases/default_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: push [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x50] LENGTH: 1 SSZ: 64 @@ -10,7 +10,7 @@ EXCEPTIONS: NONE OPTIMIZED: 50 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT R OPCODE 64 1 64 INT rax @@ -23,14 +23,18 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: push %rax RELATIVE: push %rax -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: push rax RELATIVE: push rax -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: push rax + RELATIVE: push rax + +== [ SEGMENTS ] ========================================================================================== 50 :..OPCODE diff --git a/tests/cases/default_018.out b/tests/cases/default_018.out index 9fcad640..cd99bf27 100644 --- a/tests/cases/default_018.out +++ b/tests/cases/default_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: or [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x09] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM CPUFLAG_ACCESS ACCEPTS_LOCK ACCEPTS_XACQUIRE ACCEPTS_XRELEASE ACCEPTS_SEGMENT OPTIMIZED: 09 A7 6F E3 10 1B -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT RW MODRM_RM 32 1 32 INT TYPE = MEM @@ -24,20 +24,24 @@ 2 REGISTER HIDDEN W NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [CF : 0 ] [PF : M ] [AF : U ] [ZF : M ] [SF : M ] [OF : 0 ] READ: 0x00000000 WRITTEN: 0x000008D5 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: or %esp, 0x1B10E36F(%rdi) RELATIVE: or %esp, 0x1B10E36F(%rdi) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: or dword ptr ds:[rdi+0x1B10E36F], esp RELATIVE: or dword ptr ds:[rdi+0x1B10E36F], esp -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: or dword ptr ds:[rdi+1B10E36Fh], esp + RELATIVE: or dword ptr ds:[rdi+1B10E36Fh], esp + +== [ SEGMENTS ] ========================================================================================== 09 A7 6F E3 10 1B : : :..DISP : :..MODRM diff --git a/tests/cases/default_019.out b/tests/cases/default_019.out index 4f8a412a..114f645b 100644 --- a/tests/cases/default_019.out +++ b/tests/cases/default_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xBB] LENGTH: 5 SSZ: 64 @@ -10,22 +10,26 @@ EXCEPTIONS: NONE OPTIMIZED: BB 01 10 F1 11 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W OPCODE 32 1 32 INT ebx 1 IMMEDIATE EXPLICIT R SIMM16_32_64 32 1 32 INT [S A 32] 0x0000000011F11001 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov $0x11F11001, %ebx RELATIVE: mov $0x11F11001, %ebx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov ebx, 0x11F11001 RELATIVE: mov ebx, 0x11F11001 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov ebx, 11F11001h + RELATIVE: mov ebx, 11F11001h + +== [ SEGMENTS ] ========================================================================================== BB 01 10 F1 11 : :..IMM :..OPCODE diff --git a/tests/cases/default_020.out b/tests/cases/default_020.out index 69edaf81..a2997611 100644 --- a/tests/cases/default_020.out +++ b/tests/cases/default_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: pop [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x5F] LENGTH: 1 SSZ: 64 @@ -10,7 +10,7 @@ EXCEPTIONS: NONE OPTIMIZED: 5F -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W OPCODE 64 1 64 INT rdi @@ -23,14 +23,18 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: pop %rdi RELATIVE: pop %rdi -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: pop rdi RELATIVE: pop rdi -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: pop rdi + RELATIVE: pop rdi + +== [ SEGMENTS ] ========================================================================================== 5F :..OPCODE diff --git a/tests/cases/default_021.out b/tests/cases/default_021.out index 28081aeb..279e72b0 100644 --- a/tests/cases/default_021.out +++ b/tests/cases/default_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xA3] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT OPTIMIZED: A3 7B 10 A8 C6 E9 7A 88 0F -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT W DISP16_32_64 32 1 32 INT TYPE = MEM @@ -23,15 +23,19 @@ 1 REGISTER IMPLICIT R NONE 32 1 32 INT eax -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov %eax, 0x0F887AE9C6A8107B RELATIVE: mov %eax, 0x0F887AE9C6A8107B -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov dword ptr ds:[0x0F887AE9C6A8107B], eax RELATIVE: mov dword ptr ds:[0x0F887AE9C6A8107B], eax -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov dword ptr ds:[$+0F887AE9C6A8107Bh], eax + RELATIVE: mov dword ptr ds:[$+0F887AE9C6A8107Bh], eax + +== [ SEGMENTS ] ========================================================================================== A3 7B 10 A8 C6 E9 7A 88 0F : :..DISP :..OPCODE diff --git a/tests/cases/default_022.out b/tests/cases/default_022.out index d0667351..471f6171 100644 --- a/tests/cases/default_022.out +++ b/tests/cases/default_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jz [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x74] LENGTH: 2 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS ACCEPTS_BND ACCEPTS_BRANCH_HINTS OPTIMIZED: 74 B8 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0xFFFFFFFFFFFFFFB8 @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN R NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [ZF : T ] READ: 0x00000040 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jz 0xFFFFFFFFFFFFFFBA RELATIVE: jz -0x46 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jz 0xFFFFFFFFFFFFFFBA RELATIVE: jz -0x46 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jz $-46h + RELATIVE: jz $-46h + +== [ SEGMENTS ] ========================================================================================== 74 B8 : :..IMM :..OPCODE diff --git a/tests/cases/default_023.out b/tests/cases/default_023.out index cf58ec3f..88e71a1b 100644 --- a/tests/cases/default_023.out +++ b/tests/cases/default_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: fwait [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x9B] LENGTH: 1 SSZ: 64 @@ -10,14 +10,18 @@ EXCEPTIONS: NONE OPTIMIZED: 9B -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: fwait RELATIVE: fwait -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: fwait RELATIVE: fwait -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: fwait + RELATIVE: fwait + +== [ SEGMENTS ] ========================================================================================== 9B :..OPCODE diff --git a/tests/cases/default_024.out b/tests/cases/default_024.out index 87c60375..59a588a9 100644 --- a/tests/cases/default_024.out +++ b/tests/cases/default_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: push [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x51] LENGTH: 1 SSZ: 64 @@ -10,7 +10,7 @@ EXCEPTIONS: NONE OPTIMIZED: 51 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT R OPCODE 64 1 64 INT rcx @@ -23,14 +23,18 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: push %rcx RELATIVE: push %rcx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: push rcx RELATIVE: push rcx -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: push rcx + RELATIVE: push rcx + +== [ SEGMENTS ] ========================================================================================== 51 :..OPCODE diff --git a/tests/cases/default_025.out b/tests/cases/default_025.out index d47fd0bc..5714d40b 100644 --- a/tests/cases/default_025.out +++ b/tests/cases/default_025.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xA0] LENGTH: 5 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT OPTIMIZED: A0 77 77 77 77 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER IMPLICIT W NONE 8 1 8 INT al @@ -23,15 +23,19 @@ DISP = 0x0000000077777777 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x77777777, %al RELATIVE: mov 0x77777777, %al -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov al, byte ptr ds:[0x77777777] RELATIVE: mov al, byte ptr ds:[0x77777777] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov al, byte ptr ds:[$+77777777h] + RELATIVE: mov al, byte ptr ds:[$+77777777h] + +== [ SEGMENTS ] ========================================================================================== A0 77 77 77 77 : :..DISP :..OPCODE diff --git a/tests/cases/default_026.out b/tests/cases/default_026.out index e0aab40c..4458f355 100644 --- a/tests/cases/default_026.out +++ b/tests/cases/default_026.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xA0] LENGTH: 5 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT OPTIMIZED: A0 88 88 88 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER IMPLICIT W NONE 8 1 8 INT al @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF88888888 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x88888888, %al RELATIVE: mov 0x88888888, %al -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov al, byte ptr ds:[0x88888888] RELATIVE: mov al, byte ptr ds:[0x88888888] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov al, byte ptr ds:[$+88888888h] + RELATIVE: mov al, byte ptr ds:[$+88888888h] + +== [ SEGMENTS ] ========================================================================================== A0 88 88 88 88 : :..DISP :..OPCODE diff --git a/tests/cases/default_027.out b/tests/cases/default_027.out index 92985d2f..67927385 100644 --- a/tests/cases/default_027.out +++ b/tests/cases/default_027.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xA0] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT OPTIMIZED: A0 77 77 77 77 77 77 77 77 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER IMPLICIT W NONE 8 1 8 INT al @@ -23,15 +23,19 @@ DISP = 0x7777777777777777 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x7777777777777777, %al RELATIVE: mov 0x7777777777777777, %al -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov al, byte ptr ds:[0x7777777777777777] RELATIVE: mov al, byte ptr ds:[0x7777777777777777] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov al, byte ptr ds:[$+7777777777777777h] + RELATIVE: mov al, byte ptr ds:[$+7777777777777777h] + +== [ SEGMENTS ] ========================================================================================== A0 77 77 77 77 77 77 77 77 : :..DISP :..OPCODE diff --git a/tests/cases/default_028.out b/tests/cases/default_028.out index aaa78d33..ebfbf113 100644 --- a/tests/cases/default_028.out +++ b/tests/cases/default_028.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xA0] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT OPTIMIZED: A0 88 88 88 88 88 88 88 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER IMPLICIT W NONE 8 1 8 INT al @@ -23,15 +23,19 @@ DISP = 0x8888888888888888 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x8888888888888888, %al RELATIVE: mov 0x8888888888888888, %al -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov al, byte ptr ds:[0x8888888888888888] RELATIVE: mov al, byte ptr ds:[0x8888888888888888] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov al, byte ptr ds:[$-7777777777777778h] + RELATIVE: mov al, byte ptr ds:[$-7777777777777778h] + +== [ SEGMENTS ] ========================================================================================== A0 88 88 88 88 88 88 88 88 : :..DISP :..OPCODE diff --git a/tests/cases/default_029.out b/tests/cases/default_029.out index d7bab908..536031a9 100644 --- a/tests/cases/default_029.out +++ b/tests/cases/default_029.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x8B] LENGTH: 6 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 8B 0D 77 77 77 77 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 32 1 32 INT ecx @@ -23,15 +23,19 @@ DISP = 0x0000000077777777 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x77777777, %ecx RELATIVE: mov 0x77777777, %ecx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov ecx, dword ptr ds:[0x77777777] RELATIVE: mov ecx, dword ptr ds:[0x77777777] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov ecx, dword ptr ds:[$+77777777h] + RELATIVE: mov ecx, dword ptr ds:[$+77777777h] + +== [ SEGMENTS ] ========================================================================================== 8B 0D 77 77 77 77 : : :..DISP : :..MODRM diff --git a/tests/cases/default_030.out b/tests/cases/default_030.out index c5e69369..b948fffd 100644 --- a/tests/cases/default_030.out +++ b/tests/cases/default_030.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x8B] LENGTH: 6 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 8B 0D 88 88 88 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 32 1 32 INT ecx @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF88888888 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x88888888, %ecx RELATIVE: mov 0x88888888, %ecx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov ecx, dword ptr ds:[0x88888888] RELATIVE: mov ecx, dword ptr ds:[0x88888888] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov ecx, dword ptr ds:[$+88888888h] + RELATIVE: mov ecx, dword ptr ds:[$+88888888h] + +== [ SEGMENTS ] ========================================================================================== 8B 0D 88 88 88 88 : : :..DISP : :..MODRM diff --git a/tests/cases/default_031.out b/tests/cases/default_031.out index adc1f625..99043723 100644 --- a/tests/cases/default_031.out +++ b/tests/cases/default_031.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x8B] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_REX IS_RELATIVE ACCEPTS_SEGMENT OPTIMIZED: 48 8B 0D 88 88 88 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 64 1 64 INT rcx @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF88888888 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0xFFFFFFFF8888888F, %rcx RELATIVE: mov -0x77777778(%rip), %rcx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov rcx, qword ptr ds:[0xFFFFFFFF8888888F] RELATIVE: mov rcx, qword ptr ds:[rip-0x77777778] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov rcx, qword ptr ds:[$-77777771h] + RELATIVE: mov rcx, qword ptr ds:[$-77777771h] + +== [ SEGMENTS ] ========================================================================================== 48 8B 0D 88 88 88 88 : : : :..DISP : : :..MODRM diff --git a/tests/cases/default_032.out b/tests/cases/default_032.out index adc1f625..99043723 100644 --- a/tests/cases/default_032.out +++ b/tests/cases/default_032.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x8B] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_REX IS_RELATIVE ACCEPTS_SEGMENT OPTIMIZED: 48 8B 0D 88 88 88 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 64 1 64 INT rcx @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF88888888 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0xFFFFFFFF8888888F, %rcx RELATIVE: mov -0x77777778(%rip), %rcx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov rcx, qword ptr ds:[0xFFFFFFFF8888888F] RELATIVE: mov rcx, qword ptr ds:[rip-0x77777778] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov rcx, qword ptr ds:[$-77777771h] + RELATIVE: mov rcx, qword ptr ds:[$-77777771h] + +== [ SEGMENTS ] ========================================================================================== 48 8B 0D 88 88 88 88 : : : :..DISP : : :..MODRM diff --git a/tests/cases/default_033.out b/tests/cases/default_033.out index 67391df0..41e94767 100644 --- a/tests/cases/default_033.out +++ b/tests/cases/default_033.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x8B] LENGTH: 6 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 8B 88 77 77 77 77 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 32 1 32 INT ecx @@ -23,15 +23,19 @@ DISP = 0x0000000077777777 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov 0x77777777(%eax), %ecx RELATIVE: mov 0x77777777(%eax), %ecx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov ecx, dword ptr ds:[eax+0x77777777] RELATIVE: mov ecx, dword ptr ds:[eax+0x77777777] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov ecx, dword ptr ds:[eax+77777777h] + RELATIVE: mov ecx, dword ptr ds:[eax+77777777h] + +== [ SEGMENTS ] ========================================================================================== 8B 88 77 77 77 77 : : :..DISP : :..MODRM diff --git a/tests/cases/default_034.out b/tests/cases/default_034.out index 86c1ecf7..eaa55e86 100644 --- a/tests/cases/default_034.out +++ b/tests/cases/default_034.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mov [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x8B] LENGTH: 6 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_SEGMENT OPTIMIZED: 8B 88 88 88 88 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 32 1 32 INT ecx @@ -23,15 +23,19 @@ DISP = 0xFFFFFFFF88888888 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mov -0x77777778(%eax), %ecx RELATIVE: mov -0x77777778(%eax), %ecx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mov ecx, dword ptr ds:[eax-0x77777778] RELATIVE: mov ecx, dword ptr ds:[eax-0x77777778] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mov ecx, dword ptr ds:[eax-77777778h] + RELATIVE: mov ecx, dword ptr ds:[eax-77777778h] + +== [ SEGMENTS ] ========================================================================================== 8B 88 88 88 88 88 : : :..DISP : :..MODRM diff --git a/tests/cases/default_035.out b/tests/cases/default_035.out index 0e1e3bf7..c72c5f01 100644 --- a/tests/cases/default_035.out +++ b/tests/cases/default_035.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: bndldx [ENC: DEFAULT, MAP: 0F, OPC: 0x1A] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB ACCEPTS_SEGMENT OPTIMIZED: 0F 1A 84 03 37 13 37 13 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 1 128 INT bnd0 @@ -23,15 +23,19 @@ DISP = 0x0000000013371337 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: bndldx 0x13371337(%rbx,%rax), %bnd0 RELATIVE: bndldx 0x13371337(%rbx,%rax), %bnd0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: bndldx bnd0, ds:[rbx+rax+0x13371337] RELATIVE: bndldx bnd0, ds:[rbx+rax+0x13371337] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: bndldx bnd0, ds:[rbx+rax+13371337h] + RELATIVE: bndldx bnd0, ds:[rbx+rax+13371337h] + +== [ SEGMENTS ] ========================================================================================== 0F 1A 84 43 37 13 37 13 : : : :..DISP : : :..SIB diff --git a/tests/cases/default_036.out b/tests/cases/default_036.out index ca1bb883..8ee677af 100644 --- a/tests/cases/default_036.out +++ b/tests/cases/default_036.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jz [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x74] LENGTH: 3 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS ACCEPTS_BND ACCEPTS_BRANCH_HINTS HAS_OPERANDSIZE OPTIMIZED: 74 FC -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0xFFFFFFFFFFFFFFFC @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN R NONE 32 32 1 INT eflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [ZF : T ] READ: 0x00000040 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jz 0x0000FFFF RELATIVE: jz +0xFFFF -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jz 0x0000FFFF RELATIVE: jz +0xFFFF -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jz $+0FFFFh + RELATIVE: jz $+0FFFFh + +== [ SEGMENTS ] ========================================================================================== 66 74 FC : : :..IMM : :..OPCODE diff --git a/tests/cases/default_037.out b/tests/cases/default_037.out index 63ff88cf..334b43a5 100644 --- a/tests/cases/default_037.out +++ b/tests/cases/default_037.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: xbegin [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xC7] LENGTH: 5 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM IS_RELATIVE HAS_OPERANDSIZE OPTIMIZED: 66 C7 F8 FA FF -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM16_32_32 16 1 16 INT [S R 16] 0xFFFFFFFFFFFFFFFA @@ -19,15 +19,19 @@ 2 REGISTER HIDDEN CW NONE 32 1 32 INT eax -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: xbegin 0xFFFFFFFF RELATIVE: xbegin -0x01 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: xbegin 0xFFFFFFFF RELATIVE: xbegin -0x01 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: xbegin $-1h + RELATIVE: xbegin $-1h + +== [ SEGMENTS ] ========================================================================================== 66 C7 F8 FA FF : : : :..IMM : : :..MODRM diff --git a/tests/cases/default_038.out b/tests/cases/default_038.out index 2c610312..9306c561 100644 --- a/tests/cases/default_038.out +++ b/tests/cases/default_038.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 3 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT ACCEPTS_NOTRACK HAS_NOTRACK OPTIMIZED: 3E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 64 1 64 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: notrack call (%rax) RELATIVE: notrack call (%rax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: notrack call qword ptr ds:[rax] RELATIVE: notrack call qword ptr ds:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: notrack call qword ptr ds:[rax] + RELATIVE: notrack call qword ptr ds:[rax] + +== [ SEGMENTS ] ========================================================================================== 3E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_039.out b/tests/cases/default_039.out index c5ecf614..48f38917 100644 --- a/tests/cases/default_039.out +++ b/tests/cases/default_039.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT ACCEPTS_NOTRACK HAS_NOTRACK OPTIMIZED: 3E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 64 1 64 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: notrack call (%rax) RELATIVE: notrack call (%rax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: notrack call qword ptr ds:[rax] RELATIVE: notrack call qword ptr ds:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: notrack call qword ptr ds:[rax] + RELATIVE: notrack call qword ptr ds:[rax] + +== [ SEGMENTS ] ========================================================================================== 3E 2E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_040.out b/tests/cases/default_040.out index e767eb9b..dced834f 100644 --- a/tests/cases/default_040.out +++ b/tests/cases/default_040.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT ACCEPTS_NOTRACK HAS_NOTRACK OPTIMIZED: 3E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 64 1 64 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: notrack call (%rax) RELATIVE: notrack call (%rax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: notrack call qword ptr ds:[rax] RELATIVE: notrack call qword ptr ds:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: notrack call qword ptr ds:[rax] + RELATIVE: notrack call qword ptr ds:[rax] + +== [ SEGMENTS ] ========================================================================================== 2E 3E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_041.out b/tests/cases/default_041.out index 4f35ef0d..2e46f743 100644 --- a/tests/cases/default_041.out +++ b/tests/cases/default_041.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 3 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT ACCEPTS_NOTRACK HAS_NOTRACK OPTIMIZED: 3E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 32 1 32 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: notrack call (%eax) RELATIVE: notrack call (%eax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: notrack call dword ptr ds:[eax] RELATIVE: notrack call dword ptr ds:[eax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: notrack call dword ptr ds:[eax] + RELATIVE: notrack call dword ptr ds:[eax] + +== [ SEGMENTS ] ========================================================================================== 3E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_042.out b/tests/cases/default_042.out index 8bc4aa47..e4cd2449 100644 --- a/tests/cases/default_042.out +++ b/tests/cases/default_042.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 4 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT HAS_SEGMENT HAS_SEGMENT_CS ACCEPTS_NOTRACK OPTIMIZED: 2E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 32 1 32 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: call %cs:(%eax) RELATIVE: call %cs:(%eax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: call dword ptr cs:[eax] RELATIVE: call dword ptr cs:[eax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: call dword ptr cs:[eax] + RELATIVE: call dword ptr cs:[eax] + +== [ SEGMENTS ] ========================================================================================== 3E 2E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_043.out b/tests/cases/default_043.out index 895ef00d..bf656370 100644 --- a/tests/cases/default_043.out +++ b/tests/cases/default_043.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 4 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT ACCEPTS_NOTRACK HAS_NOTRACK OPTIMIZED: 3E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 32 1 32 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: notrack call (%eax) RELATIVE: notrack call (%eax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: notrack call dword ptr ds:[eax] RELATIVE: notrack call dword ptr ds:[eax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: notrack call dword ptr ds:[eax] + RELATIVE: notrack call dword ptr ds:[eax] + +== [ SEGMENTS ] ========================================================================================== 2E 3E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_044.out b/tests/cases/default_044.out index 1297f4ad..6849ca7e 100644 --- a/tests/cases/default_044.out +++ b/tests/cases/default_044.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 5 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT ACCEPTS_NOTRACK HAS_NOTRACK OPTIMIZED: 3E FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 32 1 32 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: notrack call (%eax) RELATIVE: notrack call (%eax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: notrack call dword ptr ds:[eax] RELATIVE: notrack call dword ptr ds:[eax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: notrack call dword ptr ds:[eax] + RELATIVE: notrack call dword ptr ds:[eax] + +== [ SEGMENTS ] ========================================================================================== 64 26 3E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_045.out b/tests/cases/default_045.out index 93358d6e..c13bca60 100644 --- a/tests/cases/default_045.out +++ b/tests/cases/default_045.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 5 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT HAS_SEGMENT HAS_SEGMENT_ES ACCEPTS_NOTRACK OPTIMIZED: 26 FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 32 1 32 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: call %es:(%eax) RELATIVE: call %es:(%eax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: call dword ptr es:[eax] RELATIVE: call dword ptr es:[eax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: call dword ptr es:[eax] + RELATIVE: call dword ptr es:[eax] + +== [ SEGMENTS ] ========================================================================================== 3E 64 26 FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_046.out b/tests/cases/default_046.out index 9f7d557b..04a41c76 100644 --- a/tests/cases/default_046.out +++ b/tests/cases/default_046.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT HAS_SEGMENT HAS_SEGMENT_FS ACCEPTS_NOTRACK OPTIMIZED: 64 FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 64 1 64 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: call %fs:(%rax) RELATIVE: call %fs:(%rax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: call qword ptr fs:[rax] RELATIVE: call qword ptr fs:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: call qword ptr fs:[rax] + RELATIVE: call qword ptr fs:[rax] + +== [ SEGMENTS ] ========================================================================================== 64 26 3E FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_047.out b/tests/cases/default_047.out index e548e83e..34da6e35 100644 --- a/tests/cases/default_047.out +++ b/tests/cases/default_047.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xFF] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM ACCEPTS_BND ACCEPTS_SEGMENT HAS_SEGMENT HAS_SEGMENT_FS ACCEPTS_NOTRACK OPTIMIZED: 64 FF 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT R MODRM_RM 64 1 64 INT TYPE = MEM @@ -30,15 +30,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: call %fs:(%rax) RELATIVE: call %fs:(%rax) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: call qword ptr fs:[rax] RELATIVE: call qword ptr fs:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: call qword ptr fs:[rax] + RELATIVE: call qword ptr fs:[rax] + +== [ SEGMENTS ] ========================================================================================== 3E 64 26 FF 10 : : :..MODRM : :..OPCODE diff --git a/tests/cases/default_048.out b/tests/cases/default_048.out index c4efbaee..d4938017 100644 --- a/tests/cases/default_048.out +++ b/tests/cases/default_048.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jnl [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x7D] LENGTH: 3 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: IS_RELATIVE CPUFLAG_ACCESS ACCEPTS_BND ACCEPTS_BRANCH_HINTS HAS_BRANCH_TAKEN OPTIMIZED: 3E 7D 00 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 IMMEDIATE EXPLICIT R JIMM8 8 1 8 INT [S R 8] 0x0000000000000000 @@ -19,20 +19,24 @@ 2 REGISTER HIDDEN R NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [SF : T ] [OF : T ] READ: 0x00000880 WRITTEN: 0x00000000 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jnl 0x0000000000000003 RELATIVE: jnl +0x03 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jnl 0x0000000000000003 RELATIVE: jnl +0x03 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jnl $+3h + RELATIVE: jnl $+3h + +== [ SEGMENTS ] ========================================================================================== 3E 7D 00 : : :..IMM : :..OPCODE diff --git a/tests/cases/default_049.in b/tests/cases/default_049.in new file mode 100644 index 00000000..01963239 --- /dev/null +++ b/tests/cases/default_049.in @@ -0,0 +1 @@ +-64 dde9 \ No newline at end of file diff --git a/tests/cases/default_049.out b/tests/cases/default_049.out new file mode 100644 index 00000000..42fa0102 --- /dev/null +++ b/tests/cases/default_049.out @@ -0,0 +1,42 @@ +== [ BASIC ] ========================================================================================== + MNEMONIC: fucomp [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xDD] + LENGTH: 2 + SSZ: 64 + EOSZ: 32 + EASZ: 64 + CATEGORY: X87_ALU + ISA-SET: X87 + ISA-EXT: X87 + EXCEPTIONS: NONE + ATTRIBUTES: HAS_MODRM CPUFLAG_ACCESS + OPTIMIZED: DD E9 + +== [ OPERANDS ] ========================================================================================== +## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE +-- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- + 0 REGISTER IMPLICIT R NONE 80 1 80 FLOAT80 st0 + 1 REGISTER EXPLICIT R MODRM_RM 80 1 80 FLOAT80 st1 + 2 REGISTER HIDDEN W NONE 16 1 16 STRUCT x87status +-- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- + +== [ FLAGS ] ========================================================================================== + ACTIONS: [C0 : M ] [C1 : M ] [C2 : M ] [C3 : M ] + READ: 0x00000000 + WRITTEN: 0x00000000 + +== [ ATT ] ========================================================================================== + ABSOLUTE: fucomp %st1, %st0 + RELATIVE: fucomp %st1, %st0 + +== [ INTEL ] ========================================================================================== + ABSOLUTE: fucomp st0, st1 + RELATIVE: fucomp st0, st1 + +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: fucomp st(1) + RELATIVE: fucomp st(1) + +== [ SEGMENTS ] ========================================================================================== +DD E9 +: :..MODRM +:..OPCODE diff --git a/tests/cases/default_050.in b/tests/cases/default_050.in new file mode 100644 index 00000000..19e294ab --- /dev/null +++ b/tests/cases/default_050.in @@ -0,0 +1 @@ +-64 cc \ No newline at end of file diff --git a/tests/cases/default_050.out b/tests/cases/default_050.out new file mode 100644 index 00000000..67db6c12 --- /dev/null +++ b/tests/cases/default_050.out @@ -0,0 +1,40 @@ +== [ BASIC ] ========================================================================================== + MNEMONIC: int3 [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xCC] + LENGTH: 1 + SSZ: 64 + EOSZ: 32 + EASZ: 64 + CATEGORY: INTERRUPT + ISA-SET: I86 + ISA-EXT: BASE + EXCEPTIONS: NONE + ATTRIBUTES: CPUFLAG_ACCESS + OPTIMIZED: CC + +== [ OPERANDS ] ========================================================================================== +## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE +-- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- + 0 REGISTER HIDDEN W NONE 64 1 64 INT rip + 1 REGISTER HIDDEN RW NONE 64 64 1 INT rflags +-- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- + +== [ FLAGS ] ========================================================================================== + ACTIONS: [TF : 0 ] [IF : M ] [IOPL: T ] [NT : M ] [RF : 0 ] [VM : T_M] [AC : M ] [VIF : M ] + READ: 0x00021000 + WRITTEN: 0x000F4300 + +== [ ATT ] ========================================================================================== + ABSOLUTE: int3 + RELATIVE: int3 + +== [ INTEL ] ========================================================================================== + ABSOLUTE: int3 + RELATIVE: int3 + +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: int 3h + RELATIVE: int 3h + +== [ SEGMENTS ] ========================================================================================== +CC +:..OPCODE diff --git a/tests/cases/default_051.in b/tests/cases/default_051.in new file mode 100644 index 00000000..287d87c0 --- /dev/null +++ b/tests/cases/default_051.in @@ -0,0 +1 @@ +-64 f1 \ No newline at end of file diff --git a/tests/cases/default_051.out b/tests/cases/default_051.out new file mode 100644 index 00000000..6eb0a2e3 --- /dev/null +++ b/tests/cases/default_051.out @@ -0,0 +1,33 @@ +== [ BASIC ] ========================================================================================== + MNEMONIC: int1 [ENC: DEFAULT, MAP: DEFAULT, OPC: 0xF1] + LENGTH: 1 + SSZ: 64 + EOSZ: 32 + EASZ: 64 + CATEGORY: INTERRUPT + ISA-SET: I86 + ISA-EXT: BASE + EXCEPTIONS: NONE + OPTIMIZED: F1 + +== [ OPERANDS ] ========================================================================================== +## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE +-- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- + 0 REGISTER HIDDEN W NONE 64 1 64 INT rip +-- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- + +== [ ATT ] ========================================================================================== + ABSOLUTE: int1 + RELATIVE: int1 + +== [ INTEL ] ========================================================================================== + ABSOLUTE: int1 + RELATIVE: int1 + +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: invalid + RELATIVE: invalid + +== [ SEGMENTS ] ========================================================================================== +F1 +:..OPCODE diff --git a/tests/cases/evex_000.out b/tests/cases/evex_000.out index a6acc6b7..62a024c7 100644 --- a/tests/cases/evex_000.out +++ b/tests/cases/evex_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vprorvq [ENC: EVEX, MAP: 0F38, OPC: 0x14] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 D2 CD 2B 14 7B 4F -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 256 4 64 UINT ymm7 @@ -25,22 +25,26 @@ DISP = 0x00000000000009E0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k3 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vprorvq 0x9E0(%r11), %ymm6, %ymm7 {%k3} RELATIVE: vprorvq 0x9E0(%r11), %ymm6, %ymm7 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vprorvq ymm7 {k3}, ymm6, ymmword ptr ds:[r11+0x9E0] RELATIVE: vprorvq ymm7 {k3}, ymm6, ymmword ptr ds:[r11+0x9E0] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vprorvq ymm7 {k3}, ymm6, ymmword ptr ds:[r11+9E0h] + RELATIVE: vprorvq ymm7 {k3}, ymm6, ymmword ptr ds:[r11+9E0h] + +== [ SEGMENTS ] ========================================================================================== 62 D2 CD 2B 14 7B 4F : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_001.out b/tests/cases/evex_001.out index c1fcfba3..74bfb849 100644 --- a/tests/cases/evex_001.out +++ b/tests/cases/evex_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vinserti64x4 [ENC: EVEX, MAP: 0F3A, OPC: 0x3A] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 63 CD 4F 3A 55 E3 4F -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 UINT zmm26 @@ -26,22 +26,26 @@ 4 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x000000000000004F -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k7 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vinserti64x4 $0x4F, -0x3A0(%rbp), %zmm6, %zmm26 {%k7} RELATIVE: vinserti64x4 $0x4F, -0x3A0(%rbp), %zmm6, %zmm26 {%k7} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vinserti64x4 zmm26 {k7}, zmm6, ymmword ptr ss:[rbp-0x3A0], 0x4F RELATIVE: vinserti64x4 zmm26 {k7}, zmm6, ymmword ptr ss:[rbp-0x3A0], 0x4F -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vinserti64x4 zmm26 {k7}, zmm6, ymmword ptr ss:[rbp-3A0h], 4Fh + RELATIVE: vinserti64x4 zmm26 {k7}, zmm6, ymmword ptr ss:[rbp-3A0h], 4Fh + +== [ SEGMENTS ] ========================================================================================== 62 23 CD 4F 3A 55 E3 4F : : : : :..IMM : : : :..DISP diff --git a/tests/cases/evex_002.out b/tests/cases/evex_002.out index f0d3a2cb..4592d44f 100644 --- a/tests/cases/evex_002.out +++ b/tests/cases/evex_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsubq [ENC: EVEX, MAP: 0F, OPC: 0xFB] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 11 E5 5F FB 3C B0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 INT zmm15 @@ -25,22 +25,26 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 1_TO_8 ROUNDING: DEFAULT SAE: N MASK: k7 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsubq (%r8,%r14,4) {1to8}, %zmm3, %zmm15 {%k7} RELATIVE: vpsubq (%r8,%r14,4) {1to8}, %zmm3, %zmm15 {%k7} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsubq zmm15 {k7}, zmm3, qword ptr ds:[r8+r14*4] {1to8} RELATIVE: vpsubq zmm15 {k7}, zmm3, qword ptr ds:[r8+r14*4] {1to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsubq zmm15 {k7}, zmm3, qword ptr ds:[r8+r14*4] {1to8} + RELATIVE: vpsubq zmm15 {k7}, zmm3, qword ptr ds:[r8+r14*4] {1to8} + +== [ SEGMENTS ] ========================================================================================== 62 11 E5 5F FB 3C B0 : : : :..SIB : : :..MODRM diff --git a/tests/cases/evex_003.out b/tests/cases/evex_003.out index 5101cf60..16a0e86e 100644 --- a/tests/cases/evex_003.out +++ b/tests/cases/evex_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpermilpd [ENC: EVEX, MAP: 0F38, OPC: 0x0D] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 02 DD 14 0D 7C 8F E4 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 128 2 64 FLOAT64 xmm31 @@ -25,22 +25,26 @@ DISP = 0xFFFFFFFFFFFFFF20 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: 1_TO_2 ROUNDING: DEFAULT SAE: N MASK: k4 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpermilpd -0xE0(%r15,%r9,4) {1to2}, %xmm20, %xmm31 {%k4} RELATIVE: vpermilpd -0xE0(%r15,%r9,4) {1to2}, %xmm20, %xmm31 {%k4} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpermilpd xmm31 {k4}, xmm20, qword ptr ds:[r15+r9*4-0xE0] {1to2} RELATIVE: vpermilpd xmm31 {k4}, xmm20, qword ptr ds:[r15+r9*4-0xE0] {1to2} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpermilpd xmm31 {k4}, xmm20, qword ptr ds:[r15+r9*4-0E0h] {1to2} + RELATIVE: vpermilpd xmm31 {k4}, xmm20, qword ptr ds:[r15+r9*4-0E0h] {1to2} + +== [ SEGMENTS ] ========================================================================================== 62 02 DD 14 0D 7C 8F E4 : : : : :..DISP : : : :..SIB diff --git a/tests/cases/evex_004.out b/tests/cases/evex_004.out index 32cd0e47..27c0ef34 100644 --- a/tests/cases/evex_004.out +++ b/tests/cases/evex_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vscalefpd [ENC: EVEX, MAP: 0F38, OPC: 0x2C] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 D2 9D 43 2C 16 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 FLOAT64 zmm2 @@ -25,22 +25,26 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k3 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vscalefpd (%r14), %zmm28, %zmm2 {%k3} RELATIVE: vscalefpd (%r14), %zmm28, %zmm2 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vscalefpd zmm2 {k3}, zmm28, zmmword ptr ds:[r14] RELATIVE: vscalefpd zmm2 {k3}, zmm28, zmmword ptr ds:[r14] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vscalefpd zmm2 {k3}, zmm28, zmmword ptr ds:[r14] + RELATIVE: vscalefpd zmm2 {k3}, zmm28, zmmword ptr ds:[r14] + +== [ SEGMENTS ] ========================================================================================== 62 D2 9D 43 2C 16 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_005.out b/tests/cases/evex_005.out index 080875bf..36bc02be 100644 --- a/tests/cases/evex_005.out +++ b/tests/cases/evex_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmsub213pd [ENC: EVEX, MAP: 0F38, OPC: 0xAE] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 92 FD 48 AE D6 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 512 8 64 FLOAT64 zmm2 @@ -20,22 +20,26 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 8 64 FLOAT64 zmm30 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k0 [DISABLED] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmsub213pd %zmm30, %zmm0, %zmm2 RELATIVE: vfnmsub213pd %zmm30, %zmm0, %zmm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmsub213pd zmm2, zmm0, zmm30 RELATIVE: vfnmsub213pd zmm2, zmm0, zmm30 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmsub213pd zmm2, zmm0, zmm30 + RELATIVE: vfnmsub213pd zmm2, zmm0, zmm30 + +== [ SEGMENTS ] ========================================================================================== 62 92 FD 48 AE D6 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_006.out b/tests/cases/evex_006.out index f7802e09..70f14055 100644 --- a/tests/cases/evex_006.out +++ b/tests/cases/evex_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcmpeqb [ENC: EVEX, MAP: 0F, OPC: 0x74] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 F1 25 41 74 78 06 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 64 64 1 INT k7 @@ -25,22 +25,26 @@ DISP = 0x0000000000000180 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k1 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcmpeqb 0x180(%rax), %zmm27, %k7 {%k1} RELATIVE: vpcmpeqb 0x180(%rax), %zmm27, %k7 {%k1} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcmpeqb k7 {k1}, zmm27, zmmword ptr ds:[rax+0x180] RELATIVE: vpcmpeqb k7 {k1}, zmm27, zmmword ptr ds:[rax+0x180] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcmpeqb k7 {k1}, zmm27, zmmword ptr ds:[rax+180h] + RELATIVE: vpcmpeqb k7 {k1}, zmm27, zmmword ptr ds:[rax+180h] + +== [ SEGMENTS ] ========================================================================================== 62 B1 25 41 74 78 06 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_007.out b/tests/cases/evex_007.out index cf3cb365..341437f9 100644 --- a/tests/cases/evex_007.out +++ b/tests/cases/evex_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vshufpd [ENC: EVEX, MAP: 0F, OPC: 0xC6] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 F1 B5 DB C6 22 27 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 512 8 64 FLOAT64 zmm4 @@ -26,22 +26,26 @@ 4 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x0000000000000027 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 1_TO_8 ROUNDING: DEFAULT SAE: N MASK: k3 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vshufpd $0x27, (%rdx) {1to8}, %zmm9, %zmm4 {%k3} {z} RELATIVE: vshufpd $0x27, (%rdx) {1to8}, %zmm9, %zmm4 {%k3} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vshufpd zmm4 {k3} {z}, zmm9, qword ptr ds:[rdx] {1to8}, 0x27 RELATIVE: vshufpd zmm4 {k3} {z}, zmm9, qword ptr ds:[rdx] {1to8}, 0x27 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vshufpd zmm4 {k3} {z}, zmm9, qword ptr ds:[rdx] {1to8}, 27h + RELATIVE: vshufpd zmm4 {k3} {z}, zmm9, qword ptr ds:[rdx] {1to8}, 27h + +== [ SEGMENTS ] ========================================================================================== 62 B1 B5 DB C6 22 27 : : : :..IMM : : :..MODRM diff --git a/tests/cases/evex_008.out b/tests/cases/evex_008.out index 5102ecb7..a5c1f4d8 100644 --- a/tests/cases/evex_008.out +++ b/tests/cases/evex_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmullw [ENC: EVEX, MAP: 0F, OPC: 0xD5] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 41 75 8E D5 79 93 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 INT xmm31 @@ -25,22 +25,26 @@ DISP = 0xFFFFFFFFFFFFF930 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k6 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmullw -0x6D0(%r9), %xmm1, %xmm31 {%k6} {z} RELATIVE: vpmullw -0x6D0(%r9), %xmm1, %xmm31 {%k6} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmullw xmm31 {k6} {z}, xmm1, xmmword ptr ds:[r9-0x6D0] RELATIVE: vpmullw xmm31 {k6} {z}, xmm1, xmmword ptr ds:[r9-0x6D0] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmullw xmm31 {k6} {z}, xmm1, xmmword ptr ds:[r9-6D0h] + RELATIVE: vpmullw xmm31 {k6} {z}, xmm1, xmmword ptr ds:[r9-6D0h] + +== [ SEGMENTS ] ========================================================================================== 62 01 75 8E D5 79 93 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_009.out b/tests/cases/evex_009.out index 755a635f..0c130c39 100644 --- a/tests/cases/evex_009.out +++ b/tests/cases/evex_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vgetexpsd [ENC: EVEX, MAP: 0F38, OPC: 0x43] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 A2 C5 03 43 C7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 128 2 64 FLOAT64 xmm16 @@ -20,22 +20,26 @@ 3 REGISTER EXPLICIT R MODRM_RM 128 2 64 FLOAT64 xmm23 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k3 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vgetexpsd %xmm23, %xmm23, %xmm16 {%k3} RELATIVE: vgetexpsd %xmm23, %xmm23, %xmm16 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vgetexpsd xmm16 {k3}, xmm23, xmm23 RELATIVE: vgetexpsd xmm16 {k3}, xmm23, xmm23 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vgetexpsd xmm16 {k3}, xmm23, xmm23 + RELATIVE: vgetexpsd xmm16 {k3}, xmm23, xmm23 + +== [ SEGMENTS ] ========================================================================================== 62 A2 C5 03 43 C7 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_010.out b/tests/cases/evex_010.out index 09d83417..1d2e4982 100644 --- a/tests/cases/evex_010.out +++ b/tests/cases/evex_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmsub132pd [ENC: EVEX, MAP: 0F38, OPC: 0x9E] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 F2 8D C9 9E AF 3D 07 3E 05 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 512 8 64 FLOAT64 zmm5 @@ -25,22 +25,26 @@ DISP = 0x00000000053E073D -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k1 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmsub132pd 0x53E073D(%rdi), %zmm14, %zmm5 {%k1} {z} RELATIVE: vfnmsub132pd 0x53E073D(%rdi), %zmm14, %zmm5 {%k1} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmsub132pd zmm5 {k1} {z}, zmm14, zmmword ptr ds:[rdi+0x53E073D] RELATIVE: vfnmsub132pd zmm5 {k1} {z}, zmm14, zmmword ptr ds:[rdi+0x53E073D] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmsub132pd zmm5 {k1} {z}, zmm14, zmmword ptr ds:[rdi+53E073Dh] + RELATIVE: vfnmsub132pd zmm5 {k1} {z}, zmm14, zmmword ptr ds:[rdi+53E073Dh] + +== [ SEGMENTS ] ========================================================================================== 62 B2 8D C9 9E AF 3D 07 3E 05 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_011.out b/tests/cases/evex_011.out index 8897f2f4..ecf775c4 100644 --- a/tests/cases/evex_011.out +++ b/tests/cases/evex_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsrlvd [ENC: EVEX, MAP: 0F38, OPC: 0x45] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 52 65 13 45 2B -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 128 4 32 UINT xmm13 @@ -25,22 +25,26 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: 1_TO_4 ROUNDING: DEFAULT SAE: N MASK: k3 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsrlvd (%r11) {1to4}, %xmm19, %xmm13 {%k3} RELATIVE: vpsrlvd (%r11) {1to4}, %xmm19, %xmm13 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsrlvd xmm13 {k3}, xmm19, dword ptr ds:[r11] {1to4} RELATIVE: vpsrlvd xmm13 {k3}, xmm19, dword ptr ds:[r11] {1to4} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsrlvd xmm13 {k3}, xmm19, dword ptr ds:[r11] {1to4} + RELATIVE: vpsrlvd xmm13 {k3}, xmm19, dword ptr ds:[r11] {1to4} + +== [ SEGMENTS ] ========================================================================================== 62 52 65 13 45 2B : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_012.out b/tests/cases/evex_012.out index 0471996d..18b781e1 100644 --- a/tests/cases/evex_012.out +++ b/tests/cases/evex_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpunpckhbw [ENC: EVEX, MAP: 0F, OPC: 0x68] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 41 6D 82 68 72 91 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 16 8 UINT xmm30 @@ -25,22 +25,26 @@ DISP = 0xFFFFFFFFFFFFF910 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k2 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpunpckhbw -0x6F0(%r10), %xmm18, %xmm30 {%k2} {z} RELATIVE: vpunpckhbw -0x6F0(%r10), %xmm18, %xmm30 {%k2} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpunpckhbw xmm30 {k2} {z}, xmm18, xmmword ptr ds:[r10-0x6F0] RELATIVE: vpunpckhbw xmm30 {k2} {z}, xmm18, xmmword ptr ds:[r10-0x6F0] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpunpckhbw xmm30 {k2} {z}, xmm18, xmmword ptr ds:[r10-6F0h] + RELATIVE: vpunpckhbw xmm30 {k2} {z}, xmm18, xmmword ptr ds:[r10-6F0h] + +== [ SEGMENTS ] ========================================================================================== 62 41 6D 82 68 72 91 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_013.out b/tests/cases/evex_013.out index 2e0a0df5..c41548fa 100644 --- a/tests/cases/evex_013.out +++ b/tests/cases/evex_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsraw [ENC: EVEX, MAP: 0F, OPC: 0xE1] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 01 6D C2 E1 5C D5 5E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 512 32 16 INT zmm27 @@ -25,22 +25,26 @@ DISP = 0x00000000000005E0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k2 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsraw 0x5E0(%r13,%r10,8), %zmm18, %zmm27 {%k2} {z} RELATIVE: vpsraw 0x5E0(%r13,%r10,8), %zmm18, %zmm27 {%k2} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsraw zmm27 {k2} {z}, zmm18, xmmword ptr ds:[r13+r10*8+0x5E0] RELATIVE: vpsraw zmm27 {k2} {z}, zmm18, xmmword ptr ds:[r13+r10*8+0x5E0] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsraw zmm27 {k2} {z}, zmm18, xmmword ptr ds:[r13+r10*8+5E0h] + RELATIVE: vpsraw zmm27 {k2} {z}, zmm18, xmmword ptr ds:[r13+r10*8+5E0h] + +== [ SEGMENTS ] ========================================================================================== 62 01 6D C2 E1 5C D5 5E : : : : :..DISP : : : :..SIB diff --git a/tests/cases/evex_014.out b/tests/cases/evex_014.out index 6fd78a64..a675a24e 100644 --- a/tests/cases/evex_014.out +++ b/tests/cases/evex_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsub132ss [ENC: EVEX, MAP: 0F38, OPC: 0x9B] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 82 1D 1C 9B D3 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 128 4 32 FLOAT32 xmm18 @@ -20,22 +20,26 @@ 3 REGISTER EXPLICIT R MODRM_RM 128 4 32 FLOAT32 xmm27 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: RN SAE: Y MASK: k4 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsub132ss %xmm27 {rn-sae}, %xmm12, %xmm18 {%k4} RELATIVE: vfmsub132ss %xmm27 {rn-sae}, %xmm12, %xmm18 {%k4} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsub132ss xmm18 {k4}, xmm12, xmm27 {rn-sae} RELATIVE: vfmsub132ss xmm18 {k4}, xmm12, xmm27 {rn-sae} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsub132ss xmm18 {k4}, xmm12, xmm27 {rn-sae} + RELATIVE: vfmsub132ss xmm18 {k4}, xmm12, xmm27 {rn-sae} + +== [ SEGMENTS ] ========================================================================================== 62 82 1D 1C 9B D3 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_015.out b/tests/cases/evex_015.out index 3724c668..56abe6fd 100644 --- a/tests/cases/evex_015.out +++ b/tests/cases/evex_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpermi2d [ENC: EVEX, MAP: 0F38, OPC: 0x76] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 E2 05 45 76 41 36 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 UINT zmm16 @@ -25,22 +25,26 @@ DISP = 0x0000000000000D80 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k5 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpermi2d 0xD80(%rcx), %zmm31, %zmm16 {%k5} RELATIVE: vpermi2d 0xD80(%rcx), %zmm31, %zmm16 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpermi2d zmm16 {k5}, zmm31, zmmword ptr ds:[rcx+0xD80] RELATIVE: vpermi2d zmm16 {k5}, zmm31, zmmword ptr ds:[rcx+0xD80] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpermi2d zmm16 {k5}, zmm31, zmmword ptr ds:[rcx+0D80h] + RELATIVE: vpermi2d zmm16 {k5}, zmm31, zmmword ptr ds:[rcx+0D80h] + +== [ SEGMENTS ] ========================================================================================== 62 E2 05 45 76 41 36 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_016.out b/tests/cases/evex_016.out index d0701580..e7171f82 100644 --- a/tests/cases/evex_016.out +++ b/tests/cases/evex_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcmpeqd [ENC: EVEX, MAP: 0F, OPC: 0x76] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 F1 75 1E 76 A5 DF 8F 5C 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 64 64 1 INT k4 @@ -25,22 +25,26 @@ DISP = 0xFFFFFFFF885C8FDF -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: 1_TO_4 ROUNDING: DEFAULT SAE: N MASK: k6 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcmpeqd -0x77A37021(%rbp) {1to4}, %xmm1, %k4 {%k6} RELATIVE: vpcmpeqd -0x77A37021(%rbp) {1to4}, %xmm1, %k4 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcmpeqd k4 {k6}, xmm1, dword ptr ss:[rbp-0x77A37021] {1to4} RELATIVE: vpcmpeqd k4 {k6}, xmm1, dword ptr ss:[rbp-0x77A37021] {1to4} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcmpeqd k4 {k6}, xmm1, dword ptr ss:[rbp-77A37021h] {1to4} + RELATIVE: vpcmpeqd k4 {k6}, xmm1, dword ptr ss:[rbp-77A37021h] {1to4} + +== [ SEGMENTS ] ========================================================================================== 62 F1 75 1E 76 A5 DF 8F 5C 88 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_017.out b/tests/cases/evex_017.out index 64523914..a5a818a5 100644 --- a/tests/cases/evex_017.out +++ b/tests/cases/evex_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpackuswb [ENC: EVEX, MAP: 0F, OPC: 0x67] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 51 35 41 67 C7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 64 8 UINT zmm8 @@ -20,22 +20,26 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 32 16 INT zmm15 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k1 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpackuswb %zmm15, %zmm25, %zmm8 {%k1} RELATIVE: vpackuswb %zmm15, %zmm25, %zmm8 {%k1} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpackuswb zmm8 {k1}, zmm25, zmm15 RELATIVE: vpackuswb zmm8 {k1}, zmm25, zmm15 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpackuswb zmm8 {k1}, zmm25, zmm15 + RELATIVE: vpackuswb zmm8 {k1}, zmm25, zmm15 + +== [ SEGMENTS ] ========================================================================================== 62 51 B5 41 67 C7 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_018.out b/tests/cases/evex_018.out index 46e44b00..08bbe342 100644 --- a/tests/cases/evex_018.out +++ b/tests/cases/evex_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmovusdb [ENC: EVEX, MAP: 0F38, OPC: 0x11] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 62 7E CC 11 E9 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_RM 128 16 8 UINT xmm1 @@ -19,22 +19,26 @@ 2 REGISTER EXPLICIT R MODRM_REG 512 16 32 UINT zmm29 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k4 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmovusdb %zmm29, %xmm1 {%k4} {z} RELATIVE: vpmovusdb %zmm29, %xmm1 {%k4} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmovusdb xmm1 {k4} {z}, zmm29 RELATIVE: vpmovusdb xmm1 {k4} {z}, zmm29 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmovusdb xmm1 {k4} {z}, zmm29 + RELATIVE: vpmovusdb xmm1 {k4} {z}, zmm29 + +== [ SEGMENTS ] ========================================================================================== 62 62 7E CC 11 E9 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_019.out b/tests/cases/evex_019.out index 39b72739..a6a9e159 100644 --- a/tests/cases/evex_019.out +++ b/tests/cases/evex_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpunpcklbw [ENC: EVEX, MAP: 0F, OPC: 0x60] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 41 3D A1 60 8E 35 5E 7A 8E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 32 8 UINT ymm25 @@ -25,22 +25,26 @@ DISP = 0xFFFFFFFF8E7A5E35 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k1 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpunpcklbw -0x7185A1CB(%r14), %ymm24, %ymm25 {%k1} {z} RELATIVE: vpunpcklbw -0x7185A1CB(%r14), %ymm24, %ymm25 {%k1} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpunpcklbw ymm25 {k1} {z}, ymm24, ymmword ptr ds:[r14-0x7185A1CB] RELATIVE: vpunpcklbw ymm25 {k1} {z}, ymm24, ymmword ptr ds:[r14-0x7185A1CB] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpunpcklbw ymm25 {k1} {z}, ymm24, ymmword ptr ds:[r14-7185A1CBh] + RELATIVE: vpunpcklbw ymm25 {k1} {z}, ymm24, ymmword ptr ds:[r14-7185A1CBh] + +== [ SEGMENTS ] ========================================================================================== 62 41 3D A1 60 8E 35 5E 7A 8E : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_020.out b/tests/cases/evex_020.out index 00346041..7dfe7f6e 100644 --- a/tests/cases/evex_020.out +++ b/tests/cases/evex_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpandd [ENC: EVEX, MAP: 0F, OPC: 0xDB] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 51 55 BD DB B1 12 F8 15 7B -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 UINT ymm14 @@ -25,22 +25,26 @@ DISP = 0x000000007B15F812 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: 1_TO_8 ROUNDING: DEFAULT SAE: N MASK: k5 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpandd 0x7B15F812(%r9) {1to8}, %ymm5, %ymm14 {%k5} {z} RELATIVE: vpandd 0x7B15F812(%r9) {1to8}, %ymm5, %ymm14 {%k5} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpandd ymm14 {k5} {z}, ymm5, dword ptr ds:[r9+0x7B15F812] {1to8} RELATIVE: vpandd ymm14 {k5} {z}, ymm5, dword ptr ds:[r9+0x7B15F812] {1to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpandd ymm14 {k5} {z}, ymm5, dword ptr ds:[r9+7B15F812h] {1to8} + RELATIVE: vpandd ymm14 {k5} {z}, ymm5, dword ptr ds:[r9+7B15F812h] {1to8} + +== [ SEGMENTS ] ========================================================================================== 62 11 55 BD DB B1 12 F8 15 7B : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_021.out b/tests/cases/evex_021.out index 57dcc3e9..6614d878 100644 --- a/tests/cases/evex_021.out +++ b/tests/cases/evex_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vrangepd [ENC: EVEX, MAP: 0F3A, OPC: 0x50] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 53 CD A1 50 F0 78 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 4 64 FLOAT64 ymm14 @@ -21,22 +21,26 @@ 4 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x0000000000000078 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k1 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vrangepd $0x78, %ymm8, %ymm22, %ymm14 {%k1} {z} RELATIVE: vrangepd $0x78, %ymm8, %ymm22, %ymm14 {%k1} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vrangepd ymm14 {k1} {z}, ymm22, ymm8, 0x78 RELATIVE: vrangepd ymm14 {k1} {z}, ymm22, ymm8, 0x78 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vrangepd ymm14 {k1} {z}, ymm22, ymm8, 78h + RELATIVE: vrangepd ymm14 {k1} {z}, ymm22, ymm8, 78h + +== [ SEGMENTS ] ========================================================================================== 62 53 CD A1 50 F0 78 : : : :..IMM : : :..MODRM diff --git a/tests/cases/evex_022.out b/tests/cases/evex_022.out index 6b9efd11..3fc86648 100644 --- a/tests/cases/evex_022.out +++ b/tests/cases/evex_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpermi2ps [ENC: EVEX, MAP: 0F38, OPC: 0x77] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 42 0D BA 77 22 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 256 8 32 FLOAT32 ymm28 @@ -25,22 +25,26 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: 1_TO_8 ROUNDING: DEFAULT SAE: N MASK: k2 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpermi2ps (%r10) {1to8}, %ymm14, %ymm28 {%k2} {z} RELATIVE: vpermi2ps (%r10) {1to8}, %ymm14, %ymm28 {%k2} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpermi2ps ymm28 {k2} {z}, ymm14, dword ptr ds:[r10] {1to8} RELATIVE: vpermi2ps ymm28 {k2} {z}, ymm14, dword ptr ds:[r10] {1to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpermi2ps ymm28 {k2} {z}, ymm14, dword ptr ds:[r10] {1to8} + RELATIVE: vpermi2ps ymm28 {k2} {z}, ymm14, dword ptr ds:[r10] {1to8} + +== [ SEGMENTS ] ========================================================================================== 62 42 0D BA 77 22 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_023.out b/tests/cases/evex_023.out index 6beb149f..51409884 100644 --- a/tests/cases/evex_023.out +++ b/tests/cases/evex_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vaddsd [ENC: EVEX, MAP: 0F, OPC: 0x58] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 B1 CF 07 58 EB -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 128 2 64 FLOAT64 xmm5 @@ -20,22 +20,26 @@ 3 REGISTER EXPLICIT R MODRM_RM 128 2 64 FLOAT64 xmm19 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k7 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vaddsd %xmm19, %xmm22, %xmm5 {%k7} RELATIVE: vaddsd %xmm19, %xmm22, %xmm5 {%k7} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vaddsd xmm5 {k7}, xmm22, xmm19 RELATIVE: vaddsd xmm5 {k7}, xmm22, xmm19 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vaddsd xmm5 {k7}, xmm22, xmm19 + RELATIVE: vaddsd xmm5 {k7}, xmm22, xmm19 + +== [ SEGMENTS ] ========================================================================================== 62 B1 CF 47 58 EB : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_024.out b/tests/cases/evex_024.out index 19d6933d..feaa7e28 100644 --- a/tests/cases/evex_024.out +++ b/tests/cases/evex_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vrndscaless [ENC: EVEX, MAP: 0F3A, OPC: 0x0A] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 73 55 8A 0A 61 47 88 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm12 @@ -26,22 +26,26 @@ 4 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x0000000000000088 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: N MASK: k2 [ZEROING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vrndscaless $0x88, 0x11C(%rcx), %xmm5, %xmm12 {%k2} {z} RELATIVE: vrndscaless $0x88, 0x11C(%rcx), %xmm5, %xmm12 {%k2} {z} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vrndscaless xmm12 {k2} {z}, xmm5, dword ptr ds:[rcx+0x11C], 0x88 RELATIVE: vrndscaless xmm12 {k2} {z}, xmm5, dword ptr ds:[rcx+0x11C], 0x88 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vrndscaless xmm12 {k2} {z}, xmm5, dword ptr ds:[rcx+11Ch], 88h + RELATIVE: vrndscaless xmm12 {k2} {z}, xmm5, dword ptr ds:[rcx+11Ch], 88h + +== [ SEGMENTS ] ========================================================================================== 62 33 55 8A 0A 61 47 88 : : : : :..IMM : : : :..DISP diff --git a/tests/cases/evex_025.out b/tests/cases/evex_025.out index aac59e69..78a542d3 100644 --- a/tests/cases/evex_025.out +++ b/tests/cases/evex_025.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vcomiss [ENC: EVEX, MAP: 0F, OPC: 0x2F] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX CPUFLAG_ACCESS OPTIMIZED: 62 F1 7C 18 2F C1 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT R MODRM_REG 128 4 32 FLOAT32 xmm0 @@ -19,27 +19,31 @@ 2 REGISTER HIDDEN W NONE 64 64 1 INT rflags -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ FLAGS ] ============================================================================================ +== [ FLAGS ] ========================================================================================== ACTIONS: [CF : M ] [PF : M ] [AF : 0 ] [ZF : M ] [SF : 0 ] [OF : 0 ] READ: 0x00000000 WRITTEN: 0x000008D5 -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: Y MASK: k0 [DISABLED] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vcomiss %xmm1 {sae}, %xmm0 RELATIVE: vcomiss %xmm1 {sae}, %xmm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vcomiss xmm0, xmm1 {sae} RELATIVE: vcomiss xmm0, xmm1 {sae} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vcomiss xmm0, xmm1 {sae} + RELATIVE: vcomiss xmm0, xmm1 {sae} + +== [ SEGMENTS ] ========================================================================================== 62 F1 7C 18 2F C1 : : :..MODRM : :..OPCODE diff --git a/tests/cases/evex_026.out b/tests/cases/evex_026.out index 7bd582f7..372fe73f 100644 --- a/tests/cases/evex_026.out +++ b/tests/cases/evex_026.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vrndscaless [ENC: EVEX, MAP: 0F3A, OPC: 0x0A] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX OPTIMIZED: 62 E3 0D 1B 0A D3 A5 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 128 4 32 FLOAT32 xmm18 @@ -21,22 +21,26 @@ 4 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000A5 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE ROUNDING: DEFAULT SAE: Y MASK: k3 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vrndscaless $0xA5, %xmm3 {sae}, %xmm14, %xmm18 {%k3} RELATIVE: vrndscaless $0xA5, %xmm3 {sae}, %xmm14, %xmm18 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vrndscaless xmm18 {k3}, xmm14, xmm3 {sae}, 0xA5 RELATIVE: vrndscaless xmm18 {k3}, xmm14, xmm3 {sae}, 0xA5 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vrndscaless xmm18 {k3}, xmm14, xmm3 {sae}, 0A5h + RELATIVE: vrndscaless xmm18 {k3}, xmm14, xmm3 {sae}, 0A5h + +== [ SEGMENTS ] ========================================================================================== 62 E3 0D 1B 0A D3 A5 : : : :..IMM : : :..MODRM diff --git a/tests/cases/evex_027.out b/tests/cases/evex_027.out index a639c365..64fd3ba7 100644 --- a/tests/cases/evex_027.out +++ b/tests/cases/evex_027.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmaddcph [ENC: EVEX, MAP: MAP6, OPC: 0x56] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 56 56 56 56 7F 67 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT16 zmm15 @@ -25,22 +25,26 @@ DISP = 0x000000000000019C -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 1_TO_16 ROUNDING: DEFAULT SAE: N MASK: k6 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmaddcph 0x19C(%r15) {1to16}, %zmm21, %zmm15 {%k6} RELATIVE: vfmaddcph 0x19C(%r15) {1to16}, %zmm21, %zmm15 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmaddcph zmm15 {k6}, zmm21, dword ptr ds:[r15+0x19C] {1to16} RELATIVE: vfmaddcph zmm15 {k6}, zmm21, dword ptr ds:[r15+0x19C] {1to16} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmaddcph zmm15 {k6}, zmm21, dword ptr ds:[r15+19Ch] {1to16} + RELATIVE: vfmaddcph zmm15 {k6}, zmm21, dword ptr ds:[r15+19Ch] {1to16} + +== [ SEGMENTS ] ========================================================================================== 62 56 56 56 56 BF 9C 01 00 00 : : : :..DISP : : :..MODRM diff --git a/tests/cases/evex_028.out b/tests/cases/evex_028.out index 44a77118..1ec5753a 100644 --- a/tests/cases/evex_028.out +++ b/tests/cases/evex_028.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vcvtph2dq [ENC: EVEX, MAP: MAP5, OPC: 0x5B] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_EVEX ACCEPTS_SEGMENT OPTIMIZED: 62 65 7D 3E 5B 73 73 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 256 8 32 INT ymm30 @@ -24,22 +24,26 @@ DISP = 0x00000000000000E6 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: 1_TO_8 ROUNDING: DEFAULT SAE: N MASK: k6 [MERGING] -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vcvtph2dqw 0xE6(%rbx) {1to8}, %ymm30 {%k6} RELATIVE: vcvtph2dqw 0xE6(%rbx) {1to8}, %ymm30 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vcvtph2dq ymm30 {k6}, word ptr ds:[rbx+0xE6] {1to8} RELATIVE: vcvtph2dq ymm30 {k6}, word ptr ds:[rbx+0xE6] {1to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vcvtph2dq ymm30 {k6}, word ptr ds:[rbx+0E6h] {1to8} + RELATIVE: vcvtph2dq ymm30 {k6}, word ptr ds:[rbx+0E6h] {1to8} + +== [ SEGMENTS ] ========================================================================================== 62 25 7D 3E 5B 73 73 : : : :..DISP : : :..MODRM diff --git a/tests/cases/jmp_far_16.out b/tests/cases/jmp_far_16.out index 5467bb0d..6e0eafe2 100644 --- a/tests/cases/jmp_far_16.out +++ b/tests/cases/jmp_far_16.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x9A] LENGTH: 6 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT HAS_OPERANDSIZE ACCEPTS_NOTRACK OPTIMIZED: 66 9A AD E4 4E 6D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 POINTER EXPLICIT R NONE 32 1 32 STRUCT SEG = 0x6D4E @@ -26,15 +26,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: lcall 0x6D4E:0xE4AD RELATIVE: lcall 0x6D4E:0xE4AD -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: call far 0x6D4E:0xE4AD RELATIVE: call far 0x6D4E:0xE4AD -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: call far 6D4Eh:E4ADh + RELATIVE: call far 6D4Eh:E4ADh + +== [ SEGMENTS ] ========================================================================================== 66 9A AD E4 4E 6D : : : :..IMM : : :..IMM diff --git a/tests/cases/jmp_far_32.out b/tests/cases/jmp_far_32.out index 29bb7f36..88232042 100644 --- a/tests/cases/jmp_far_32.out +++ b/tests/cases/jmp_far_32.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: call [ENC: DEFAULT, MAP: DEFAULT, OPC: 0x9A] LENGTH: 7 SSZ: 32 @@ -11,7 +11,7 @@ ATTRIBUTES: ACCEPTS_SEGMENT ACCEPTS_NOTRACK OPTIMIZED: 9A AD EA DD E4 4E 6D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 POINTER EXPLICIT R NONE 48 1 48 STRUCT SEG = 0x6D4E @@ -26,15 +26,19 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: lcall 0x6D4E:0xE4DDEAAD RELATIVE: lcall 0x6D4E:0xE4DDEAAD -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: call far 0x6D4E:0xE4DDEAAD RELATIVE: call far 0x6D4E:0xE4DDEAAD -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: call far 6D4Eh:E4DDEAADh + RELATIVE: call far 6D4Eh:E4DDEAADh + +== [ SEGMENTS ] ========================================================================================== 9A AD EA DD E4 4E 6D : : :..IMM : :..IMM diff --git a/tests/cases/mvex_000.out b/tests/cases/mvex_000.out index d1d9c232..4cb42c07 100644 --- a/tests/cases/mvex_000.out +++ b/tests/cases/mvex_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsrlvd [ENC: MVEX, MAP: 0F38, OPC: 0x45] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 72 71 0C 45 CF -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 UINT zmm9 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 UINT zmm7 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsrlvd %zmm7, %zmm1, %zmm9 {%k4} RELATIVE: vpsrlvd %zmm7, %zmm1, %zmm9 {%k4} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsrlvd zmm9 {k4}, zmm1, zmm7 RELATIVE: vpsrlvd zmm9 {k4}, zmm1, zmm7 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsrlvd zmm9 {k4}, zmm1, zmm7 + RELATIVE: vpsrlvd zmm9 {k4}, zmm1, zmm7 + +== [ SEGMENTS ] ========================================================================================== 62 72 71 AC 45 CF : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_001.out b/tests/cases/mvex_001.out index cc5f3dd3..d6e6066d 100644 --- a/tests/cases/mvex_001.out +++ b/tests/cases/mvex_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsub132pd [ENC: MVEX, MAP: 0F38, OPC: 0x9A] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 C2 E9 15 9A 19 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 FLOAT64 zmm19 @@ -25,7 +25,7 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 1_TO_8 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsub132pd (%r9) {1to8}, %zmm18, %zmm19 {%k5} RELATIVE: vfmsub132pd (%r9) {1to8}, %zmm18, %zmm19 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsub132pd zmm19 {k5}, zmm18, qword ptr ds:[r9] {1to8} RELATIVE: vfmsub132pd zmm19 {k5}, zmm18, qword ptr ds:[r9] {1to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsub132pd zmm19 {k5}, zmm18, qword ptr ds:[r9] {1to8} + RELATIVE: vfmsub132pd zmm19 {k5}, zmm18, qword ptr ds:[r9] {1to8} + +== [ SEGMENTS ] ========================================================================================== 62 C2 E9 15 9A 19 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_002.out b/tests/cases/mvex_002.out index 639535f9..d970355b 100644 --- a/tests/cases/mvex_002.out +++ b/tests/cases/mvex_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmadd231d [ENC: MVEX, MAP: 0F38, OPC: 0xB5] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 62 19 1E B5 30 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm30 @@ -25,7 +25,7 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 1_TO_16 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmadd231d (%rax) {1to16}, %zmm12, %zmm30 {%k6} RELATIVE: vpmadd231d (%rax) {1to16}, %zmm12, %zmm30 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmadd231d zmm30 {k6}, zmm12, dword ptr ds:[rax] {1to16} RELATIVE: vpmadd231d zmm30 {k6}, zmm12, dword ptr ds:[rax] {1to16} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmadd231d zmm30 {k6}, zmm12, dword ptr ds:[rax] {1to16} + RELATIVE: vpmadd231d zmm30 {k6}, zmm12, dword ptr ds:[rax] {1to16} + +== [ SEGMENTS ] ========================================================================================== 62 62 19 1E B5 30 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_003.out b/tests/cases/mvex_003.out index dca47f8f..fc0ffece 100644 --- a/tests/cases/mvex_003.out +++ b/tests/cases/mvex_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmulps [ENC: MVEX, MAP: 0F, OPC: 0x59] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 51 68 0C 59 F4 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm14 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm12 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: DCBA CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmulps %zmm12, %zmm2, %zmm14 {%k4} RELATIVE: vmulps %zmm12, %zmm2, %zmm14 {%k4} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmulps zmm14 {k4}, zmm2, zmm12 RELATIVE: vmulps zmm14 {k4}, zmm2, zmm12 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmulps zmm14 {k4}, zmm2, zmm12 + RELATIVE: vmulps zmm14 {k4}, zmm2, zmm12 + +== [ SEGMENTS ] ========================================================================================== 62 51 68 0C 59 F4 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_004.out b/tests/cases/mvex_004.out index 4e84ba64..d06046d7 100644 --- a/tests/cases/mvex_004.out +++ b/tests/cases/mvex_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsub132ps [ENC: MVEX, MAP: 0F38, OPC: 0x9A] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 42 71 9D 9A 52 8F -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm26 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFFFFFFE3C -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 1_TO_16 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsub132ps -0x1C4(%r10) {1to16} {eh}, %zmm1, %zmm26 {%k5} RELATIVE: vfmsub132ps -0x1C4(%r10) {1to16} {eh}, %zmm1, %zmm26 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsub132ps zmm26 {k5}, zmm1, dword ptr ds:[r10-0x1C4] {1to16} {eh} RELATIVE: vfmsub132ps zmm26 {k5}, zmm1, dword ptr ds:[r10-0x1C4] {1to16} {eh} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsub132ps zmm26 {k5}, zmm1, dword ptr ds:[r10-1C4h] {1to16} {eh} + RELATIVE: vfmsub132ps zmm26 {k5}, zmm1, dword ptr ds:[r10-1C4h] {1to16} {eh} + +== [ SEGMENTS ] ========================================================================================== 62 02 71 9D 9A 52 8F : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_005.out b/tests/cases/mvex_005.out index 0a7f1d8d..c34ba434 100644 --- a/tests/cases/mvex_005.out +++ b/tests/cases/mvex_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpandd [ENC: MVEX, MAP: 0F, OPC: 0xDB] LENGTH: 11 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 A1 49 FA DB 8C E9 32 28 08 91 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm17 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFF91082832 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: SINT16 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpandd -0x6EF7D7CE(%rcx,%r13,8) {sint16} {eh}, %zmm6, %zmm17 {%k2} RELATIVE: vpandd -0x6EF7D7CE(%rcx,%r13,8) {sint16} {eh}, %zmm6, %zmm17 {%k2} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpandd zmm17 {k2}, zmm6, ymmword ptr ds:[rcx+r13*8-0x6EF7D7CE] {sint16} {eh} RELATIVE: vpandd zmm17 {k2}, zmm6, ymmword ptr ds:[rcx+r13*8-0x6EF7D7CE] {sint16} {eh} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpandd zmm17 {k2}, zmm6, ymmword ptr ds:[rcx+r13*8-6EF7D7CEh] {sint16} {eh} + RELATIVE: vpandd zmm17 {k2}, zmm6, ymmword ptr ds:[rcx+r13*8-6EF7D7CEh] {sint16} {eh} + +== [ SEGMENTS ] ========================================================================================== 62 A1 49 FA DB 8C E9 32 28 08 91 : : : : :..DISP : : : :..SIB diff --git a/tests/cases/mvex_006.out b/tests/cases/mvex_006.out index 39847a1d..d45f8640 100644 --- a/tests/cases/mvex_006.out +++ b/tests/cases/mvex_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmadd231pd [ENC: MVEX, MAP: 0F38, OPC: 0xBC] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 72 89 1F BC F5 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 FLOAT64 zmm14 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 8 64 FLOAT64 zmm5 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: CDAB CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmadd231pd %zmm5 {cdab}, %zmm14, %zmm14 {%k7} RELATIVE: vfnmadd231pd %zmm5 {cdab}, %zmm14, %zmm14 {%k7} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmadd231pd zmm14 {k7}, zmm14, zmm5 {cdab} RELATIVE: vfnmadd231pd zmm14 {k7}, zmm14, zmm5 {cdab} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmadd231pd zmm14 {k7}, zmm14, zmm5 {cdab} + RELATIVE: vfnmadd231pd zmm14 {k7}, zmm14, zmm5 {cdab} + +== [ SEGMENTS ] ========================================================================================== 62 72 89 1F BC F5 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_007.out b/tests/cases/mvex_007.out index dd49b4a2..a7dfe6ad 100644 --- a/tests/cases/mvex_007.out +++ b/tests/cases/mvex_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vblendmps [ENC: MVEX, MAP: 0F38, OPC: 0x65] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 42 41 C4 65 30 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm30 @@ -25,7 +25,7 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: UINT8 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vblendmps (%r8) {uint8} {eh}, %zmm23, %zmm30 {%k4} RELATIVE: vblendmps (%r8) {uint8} {eh}, %zmm23, %zmm30 {%k4} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vblendmps zmm30 {k4}, zmm23, xmmword ptr ds:[r8] {uint8} {eh} RELATIVE: vblendmps zmm30 {k4}, zmm23, xmmword ptr ds:[r8] {uint8} {eh} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vblendmps zmm30 {k4}, zmm23, xmmword ptr ds:[r8] {uint8} {eh} + RELATIVE: vblendmps zmm30 {k4}, zmm23, xmmword ptr ds:[r8] {uint8} {eh} + +== [ SEGMENTS ] ========================================================================================== 62 02 41 C4 65 30 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_008.out b/tests/cases/mvex_008.out index 4ba72703..5ecba171 100644 --- a/tests/cases/mvex_008.out +++ b/tests/cases/mvex_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmaxud [ENC: MVEX, MAP: 0F38, OPC: 0x3F] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 62 79 4B 3F 56 A7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm26 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFFFFFFA70 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: UINT8 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmaxud -0x590(%rsi) {uint8}, %zmm0, %zmm26 {%k3} RELATIVE: vpmaxud -0x590(%rsi) {uint8}, %zmm0, %zmm26 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmaxud zmm26 {k3}, zmm0, xmmword ptr ds:[rsi-0x590] {uint8} RELATIVE: vpmaxud zmm26 {k3}, zmm0, xmmword ptr ds:[rsi-0x590] {uint8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmaxud zmm26 {k3}, zmm0, xmmword ptr ds:[rsi-590h] {uint8} + RELATIVE: vpmaxud zmm26 {k3}, zmm0, xmmword ptr ds:[rsi-590h] {uint8} + +== [ SEGMENTS ] ========================================================================================== 62 22 79 4B 3F 56 A7 : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_009.out b/tests/cases/mvex_009.out index 230b4d4f..008fbe91 100644 --- a/tests/cases/mvex_009.out +++ b/tests/cases/mvex_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmsub213ps [ENC: MVEX, MAP: 0F38, OPC: 0xAE] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 72 59 3E AE 37 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm14 @@ -25,7 +25,7 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: FLOAT16 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmsub213ps (%rdi) {float16}, %zmm4, %zmm14 {%k6} RELATIVE: vfnmsub213ps (%rdi) {float16}, %zmm4, %zmm14 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmsub213ps zmm14 {k6}, zmm4, ymmword ptr ds:[rdi] {float16} RELATIVE: vfnmsub213ps zmm14 {k6}, zmm4, ymmword ptr ds:[rdi] {float16} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmsub213ps zmm14 {k6}, zmm4, ymmword ptr ds:[rdi] {float16} + RELATIVE: vfnmsub213ps zmm14 {k6}, zmm4, ymmword ptr ds:[rdi] {float16} + +== [ SEGMENTS ] ========================================================================================== 62 72 59 3E AE 37 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_010.out b/tests/cases/mvex_010.out index 1051ba31..82348ba6 100644 --- a/tests/cases/mvex_010.out +++ b/tests/cases/mvex_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsubd [ENC: MVEX, MAP: 0F, OPC: 0xFA] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 E1 61 26 FA 45 7B -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm16 @@ -25,7 +25,7 @@ DISP = 0x00000000000007B0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 4_TO_16 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsubd 0x7B0(%rbp) {4to16}, %zmm19, %zmm16 {%k6} RELATIVE: vpsubd 0x7B0(%rbp) {4to16}, %zmm19, %zmm16 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsubd zmm16 {k6}, zmm19, xmmword ptr ss:[rbp+0x7B0] {4to16} RELATIVE: vpsubd zmm16 {k6}, zmm19, xmmword ptr ss:[rbp+0x7B0] {4to16} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsubd zmm16 {k6}, zmm19, xmmword ptr ss:[rbp+7B0h] {4to16} + RELATIVE: vpsubd zmm16 {k6}, zmm19, xmmword ptr ss:[rbp+7B0h] {4to16} + +== [ SEGMENTS ] ========================================================================================== 62 E1 61 26 FA 45 7B : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_011.out b/tests/cases/mvex_011.out index 0fb897fd..1fa08254 100644 --- a/tests/cases/mvex_011.out +++ b/tests/cases/mvex_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vgminpd [ENC: MVEX, MAP: 0F38, OPC: 0x52] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 02 B1 20 52 6C 83 BE -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 FLOAT64 zmm29 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFFFFFF7C0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 4_TO_8 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vgminpd -0x840(%r11,%r8,4) {4to8}, %zmm25, %zmm29 RELATIVE: vgminpd -0x840(%r11,%r8,4) {4to8}, %zmm25, %zmm29 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vgminpd zmm29, zmm25, ymmword ptr ds:[r11+r8*4-0x840] {4to8} RELATIVE: vgminpd zmm29, zmm25, ymmword ptr ds:[r11+r8*4-0x840] {4to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vgminpd zmm29, zmm25, ymmword ptr ds:[r11+r8*4-840h] {4to8} + RELATIVE: vgminpd zmm29, zmm25, ymmword ptr ds:[r11+r8*4-840h] {4to8} + +== [ SEGMENTS ] ========================================================================================== 62 02 B1 20 52 6C 83 BE : : : : :..DISP : : : :..SIB diff --git a/tests/cases/mvex_012.out b/tests/cases/mvex_012.out index 32e8b9b9..c993bd05 100644 --- a/tests/cases/mvex_012.out +++ b/tests/cases/mvex_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vaddsetsps [ENC: MVEX, MAP: 0F38, OPC: 0xCC] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 42 01 3E CC 7E C5 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm31 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFFFFFF8A0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: FLOAT16 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vaddsetsps -0x760(%r14) {float16}, %zmm15, %zmm31 {%k6} RELATIVE: vaddsetsps -0x760(%r14) {float16}, %zmm15, %zmm31 {%k6} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vaddsetsps zmm31 {k6}, zmm15, ymmword ptr ds:[r14-0x760] {float16} RELATIVE: vaddsetsps zmm31 {k6}, zmm15, ymmword ptr ds:[r14-0x760] {float16} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vaddsetsps zmm31 {k6}, zmm15, ymmword ptr ds:[r14-760h] {float16} + RELATIVE: vaddsetsps zmm31 {k6}, zmm15, ymmword ptr ds:[r14-760h] {float16} + +== [ SEGMENTS ] ========================================================================================== 62 02 01 3E CC 7E C5 : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_013.out b/tests/cases/mvex_013.out index 2403ad14..5ddcdf28 100644 --- a/tests/cases/mvex_013.out +++ b/tests/cases/mvex_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpminud [ENC: MVEX, MAP: 0F38, OPC: 0x3B] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 C2 39 2D 3B 83 C1 76 FC AB -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm16 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFABFC76C1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 4_TO_16 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpminud -0x5403893F(%r11) {4to16}, %zmm8, %zmm16 {%k5} RELATIVE: vpminud -0x5403893F(%r11) {4to16}, %zmm8, %zmm16 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpminud zmm16 {k5}, zmm8, xmmword ptr ds:[r11-0x5403893F] {4to16} RELATIVE: vpminud zmm16 {k5}, zmm8, xmmword ptr ds:[r11-0x5403893F] {4to16} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpminud zmm16 {k5}, zmm8, xmmword ptr ds:[r11-5403893Fh] {4to16} + RELATIVE: vpminud zmm16 {k5}, zmm8, xmmword ptr ds:[r11-5403893Fh] {4to16} + +== [ SEGMENTS ] ========================================================================================== 62 C2 39 2D 3B 83 C1 76 FC AB : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_014.out b/tests/cases/mvex_014.out index 947a12d7..f9406606 100644 --- a/tests/cases/mvex_014.out +++ b/tests/cases/mvex_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmadd231d [ENC: MVEX, MAP: 0F38, OPC: 0xB5] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 D2 61 02 B5 FE -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm7 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm14 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmadd231d %zmm14, %zmm19, %zmm7 {%k2} RELATIVE: vpmadd231d %zmm14, %zmm19, %zmm7 {%k2} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmadd231d zmm7 {k2}, zmm19, zmm14 RELATIVE: vpmadd231d zmm7 {k2}, zmm19, zmm14 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmadd231d zmm7 {k2}, zmm19, zmm14 + RELATIVE: vpmadd231d zmm7 {k2}, zmm19, zmm14 + +== [ SEGMENTS ] ========================================================================================== 62 D2 61 B2 B5 FE : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_015.out b/tests/cases/mvex_015.out index 3727e374..716b942c 100644 --- a/tests/cases/mvex_015.out +++ b/tests/cases/mvex_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsub132ps [ENC: MVEX, MAP: 0F38, OPC: 0x9A] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 52 01 71 9A E0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm12 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm8 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: DDDD CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsub132ps %zmm8 {dddd}, %zmm31, %zmm12 {%k1} RELATIVE: vfmsub132ps %zmm8 {dddd}, %zmm31, %zmm12 {%k1} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsub132ps zmm12 {k1}, zmm31, zmm8 {dddd} RELATIVE: vfmsub132ps zmm12 {k1}, zmm31, zmm8 {dddd} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsub132ps zmm12 {k1}, zmm31, zmm8 {dddd} + RELATIVE: vfmsub132ps zmm12 {k1}, zmm31, zmm8 {dddd} + +== [ SEGMENTS ] ========================================================================================== 62 52 01 71 9A E0 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_016.out b/tests/cases/mvex_016.out index 7de2b844..cae0a0ab 100644 --- a/tests/cases/mvex_016.out +++ b/tests/cases/mvex_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vcmpps [ENC: MVEX, MAP: 0F, OPC: 0xC2] LENGTH: 11 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 D1 68 CF C2 A3 44 46 84 30 69 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 16 16 1 INT k4 @@ -26,7 +26,7 @@ 4 IMMEDIATE EXPLICIT R UIMM8 8 1 5 CC [U A 8] 0x0000000000000069 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -36,15 +36,19 @@ SWIZZLE: NONE CONVERT: UINT8 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vcmpps $0x69, 0x30844644(%r11) {uint8} {eh}, %zmm2, %k4 {%k7} RELATIVE: vcmpps $0x69, 0x30844644(%r11) {uint8} {eh}, %zmm2, %k4 {%k7} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vcmpps k4 {k7}, zmm2, xmmword ptr ds:[r11+0x30844644] {uint8} {eh}, 0x69 RELATIVE: vcmpps k4 {k7}, zmm2, xmmword ptr ds:[r11+0x30844644] {uint8} {eh}, 0x69 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vcmpps k4 {k7}, zmm2, xmmword ptr ds:[r11+30844644h] {uint8} {eh}, 69h + RELATIVE: vcmpps k4 {k7}, zmm2, xmmword ptr ds:[r11+30844644h] {uint8} {eh}, 69h + +== [ SEGMENTS ] ========================================================================================== 62 91 68 CF C2 A3 44 46 84 30 69 : : : : :..IMM : : : :..DISP diff --git a/tests/cases/mvex_017.out b/tests/cases/mvex_017.out index f43caac5..f387595b 100644 --- a/tests/cases/mvex_017.out +++ b/tests/cases/mvex_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmsub231pd [ENC: MVEX, MAP: 0F38, OPC: 0xBE] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 F2 F1 2D BE 6F 9E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 FLOAT64 zmm5 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFFFFFF3C0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 4_TO_8 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmsub231pd -0xC40(%rdi) {4to8}, %zmm1, %zmm5 {%k5} RELATIVE: vfnmsub231pd -0xC40(%rdi) {4to8}, %zmm1, %zmm5 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmsub231pd zmm5 {k5}, zmm1, ymmword ptr ds:[rdi-0xC40] {4to8} RELATIVE: vfnmsub231pd zmm5 {k5}, zmm1, ymmword ptr ds:[rdi-0xC40] {4to8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmsub231pd zmm5 {k5}, zmm1, ymmword ptr ds:[rdi-0C40h] {4to8} + RELATIVE: vfnmsub231pd zmm5 {k5}, zmm1, ymmword ptr ds:[rdi-0C40h] {4to8} + +== [ SEGMENTS ] ========================================================================================== 62 F2 F1 2D BE 6F 9E : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_018.out b/tests/cases/mvex_018.out index 00d54283..b6d27544 100644 --- a/tests/cases/mvex_018.out +++ b/tests/cases/mvex_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vaddsetsps [ENC: MVEX, MAP: 0F38, OPC: 0xCC] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_MVEX ACCEPTS_SEGMENT HAS_SEGMENT HAS_SEGMENT_GS OPTIMIZED: 65 62 12 41 4D CC 14 E0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm10 @@ -25,7 +25,7 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: UINT8 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vaddsetsps %gs:(%r8,%r12,8) {uint8}, %zmm7, %zmm10 {%k5} RELATIVE: vaddsetsps %gs:(%r8,%r12,8) {uint8}, %zmm7, %zmm10 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vaddsetsps zmm10 {k5}, zmm7, xmmword ptr gs:[r8+r12*8] {uint8} RELATIVE: vaddsetsps zmm10 {k5}, zmm7, xmmword ptr gs:[r8+r12*8] {uint8} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vaddsetsps zmm10 {k5}, zmm7, xmmword ptr gs:[r8+r12*8] {uint8} + RELATIVE: vaddsetsps zmm10 {k5}, zmm7, xmmword ptr gs:[r8+r12*8] {uint8} + +== [ SEGMENTS ] ========================================================================================== 43 65 62 12 41 4D CC 14 E0 : : : : :..SIB : : : :..MODRM diff --git a/tests/cases/mvex_019.out b/tests/cases/mvex_019.out index 9a04a310..1b01ace3 100644 --- a/tests/cases/mvex_019.out +++ b/tests/cases/mvex_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmadd233d [ENC: MVEX, MAP: 0F38, OPC: 0xB4] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 D2 61 02 B4 F8 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm7 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm8 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmadd233d %zmm8, %zmm19, %zmm7 {%k2} RELATIVE: vpmadd233d %zmm8, %zmm19, %zmm7 {%k2} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmadd233d zmm7 {k2}, zmm19, zmm8 RELATIVE: vpmadd233d zmm7 {k2}, zmm19, zmm8 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmadd233d zmm7 {k2}, zmm19, zmm8 + RELATIVE: vpmadd233d zmm7 {k2}, zmm19, zmm8 + +== [ SEGMENTS ] ========================================================================================== 62 D2 61 B2 B4 F8 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_020.out b/tests/cases/mvex_020.out index daa534f9..ca2ede07 100644 --- a/tests/cases/mvex_020.out +++ b/tests/cases/mvex_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmadd231pd [ENC: MVEX, MAP: 0F38, OPC: 0xB8] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 62 C1 A1 B8 80 71 6F F7 09 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 8 64 FLOAT64 zmm24 @@ -25,7 +25,7 @@ DISP = 0x0000000009F76F71 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: 4_TO_8 ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmadd231pd 0x9F76F71(%rax) {4to8} {eh}, %zmm23, %zmm24 {%k1} RELATIVE: vfmadd231pd 0x9F76F71(%rax) {4to8} {eh}, %zmm23, %zmm24 {%k1} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmadd231pd zmm24 {k1}, zmm23, ymmword ptr ds:[rax+0x9F76F71] {4to8} {eh} RELATIVE: vfmadd231pd zmm24 {k1}, zmm23, ymmword ptr ds:[rax+0x9F76F71] {4to8} {eh} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmadd231pd zmm24 {k1}, zmm23, ymmword ptr ds:[rax+9F76F71h] {4to8} {eh} + RELATIVE: vfmadd231pd zmm24 {k1}, zmm23, ymmword ptr ds:[rax+9F76F71h] {4to8} {eh} + +== [ SEGMENTS ] ========================================================================================== 62 62 C1 A1 B8 80 71 6F F7 09 : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_021.out b/tests/cases/mvex_021.out index 6eb615e8..f74a355f 100644 --- a/tests/cases/mvex_021.out +++ b/tests/cases/mvex_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmaxsd [ENC: MVEX, MAP: 0F38, OPC: 0x3D] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 C2 69 0F 3D 81 BB AD E3 4D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm16 @@ -25,7 +25,7 @@ DISP = 0x000000004DE3ADBB -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmaxsd 0x4DE3ADBB(%r9), %zmm2, %zmm16 {%k7} RELATIVE: vpmaxsd 0x4DE3ADBB(%r9), %zmm2, %zmm16 {%k7} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmaxsd zmm16 {k7}, zmm2, zmmword ptr ds:[r9+0x4DE3ADBB] RELATIVE: vpmaxsd zmm16 {k7}, zmm2, zmmword ptr ds:[r9+0x4DE3ADBB] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmaxsd zmm16 {k7}, zmm2, zmmword ptr ds:[r9+4DE3ADBBh] + RELATIVE: vpmaxsd zmm16 {k7}, zmm2, zmmword ptr ds:[r9+4DE3ADBBh] + +== [ SEGMENTS ] ========================================================================================== 62 C2 69 0F 3D 81 BB AD E3 4D : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_022.out b/tests/cases/mvex_022.out index 6e4d8e8a..906a264b 100644 --- a/tests/cases/mvex_022.out +++ b/tests/cases/mvex_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpaddsetsd [ENC: MVEX, MAP: 0F38, OPC: 0xCD] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 E2 39 15 CD F2 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm22 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: CDAB CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpaddsetsd %zmm2 {cdab}, %zmm24, %zmm22 {%k5} RELATIVE: vpaddsetsd %zmm2 {cdab}, %zmm24, %zmm22 {%k5} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpaddsetsd zmm22 {k5}, zmm24, zmm2 {cdab} RELATIVE: vpaddsetsd zmm22 {k5}, zmm24, zmm2 {cdab} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpaddsetsd zmm22 {k5}, zmm24, zmm2 {cdab} + RELATIVE: vpaddsetsd zmm22 {k5}, zmm24, zmm2 {cdab} + +== [ SEGMENTS ] ========================================================================================== 62 E2 39 15 CD F2 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_023.out b/tests/cases/mvex_023.out index c67bf992..30cc531a 100644 --- a/tests/cases/mvex_023.out +++ b/tests/cases/mvex_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vblendmps [ENC: MVEX, MAP: 0F38, OPC: 0x65] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX ACCEPTS_SEGMENT OPTIMIZED: 62 C2 79 F0 65 A7 70 18 08 B4 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm20 @@ -25,7 +25,7 @@ DISP = 0xFFFFFFFFB4081870 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -35,15 +35,19 @@ SWIZZLE: NONE CONVERT: SINT16 -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vblendmps -0x4BF7E790(%r15) {sint16} {eh}, %zmm16, %zmm20 RELATIVE: vblendmps -0x4BF7E790(%r15) {sint16} {eh}, %zmm16, %zmm20 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vblendmps zmm20, zmm16, ymmword ptr ds:[r15-0x4BF7E790] {sint16} {eh} RELATIVE: vblendmps zmm20, zmm16, ymmword ptr ds:[r15-0x4BF7E790] {sint16} {eh} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vblendmps zmm20, zmm16, ymmword ptr ds:[r15-4BF7E790h] {sint16} {eh} + RELATIVE: vblendmps zmm20, zmm16, ymmword ptr ds:[r15-4BF7E790h] {sint16} {eh} + +== [ SEGMENTS ] ========================================================================================== 62 82 79 F0 65 A7 70 18 08 B4 : : : :..DISP : : :..MODRM diff --git a/tests/cases/mvex_024.out b/tests/cases/mvex_024.out index 85317a48..36cfcd3d 100644 --- a/tests/cases/mvex_024.out +++ b/tests/cases/mvex_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpandd [ENC: MVEX, MAP: 0F, OPC: 0xDB] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 E1 61 2B DB D3 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm18 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm3 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: DEFAULT @@ -30,15 +30,19 @@ SWIZZLE: BADC CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpandd %zmm3 {badc}, %zmm3, %zmm18 {%k3} RELATIVE: vpandd %zmm3 {badc}, %zmm3, %zmm18 {%k3} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpandd zmm18 {k3}, zmm3, zmm3 {badc} RELATIVE: vpandd zmm18 {k3}, zmm3, zmm3 {badc} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpandd zmm18 {k3}, zmm3, zmm3 {badc} + RELATIVE: vpandd zmm18 {k3}, zmm3, zmm3 {badc} + +== [ SEGMENTS ] ========================================================================================== 62 E1 61 2B DB D3 : : :..MODRM : :..OPCODE diff --git a/tests/cases/mvex_026.out b/tests/cases/mvex_026.out index b0d96847..8d5d42fd 100644 --- a/tests/cases/mvex_026.out +++ b/tests/cases/mvex_026.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vaddnps [ENC: MVEX, MAP: 0F38, OPC: 0x50] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_MVEX OPTIMIZED: 62 F2 71 E9 50 C2 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RCW MODRM_REG 512 16 32 FLOAT32 zmm0 @@ -20,7 +20,7 @@ 3 REGISTER EXPLICIT R MODRM_RM 512 16 32 FLOAT32 zmm2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 512 BROADCAST: NONE ROUNDING: RU @@ -30,15 +30,19 @@ SWIZZLE: NONE CONVERT: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vaddnps %zmm2 {ru-sae}, %zmm1, %zmm0 {%k1} RELATIVE: vaddnps %zmm2 {ru-sae}, %zmm1, %zmm0 {%k1} -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vaddnps zmm0 {k1}, zmm1, zmm2 {ru-sae} RELATIVE: vaddnps zmm0 {k1}, zmm1, zmm2 {ru-sae} -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vaddnps zmm0 {k1}, zmm1, zmm2 {ru-sae} + RELATIVE: vaddnps zmm0 {k1}, zmm1, zmm2 {ru-sae} + +== [ SEGMENTS ] ========================================================================================== 62 F2 71 E9 50 C2 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_000.out b/tests/cases/vexc4_000.out index 40562b43..0c1c553e 100644 --- a/tests/cases/vexc4_000.out +++ b/tests/cases/vexc4_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vgf2p8mulb [ENC: VEX, MAP: 0F38, OPC: 0xCF] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 62 59 CF 4F 5D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 16 8 UINT xmm9 @@ -24,19 +24,23 @@ DISP = 0x000000000000005D -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vgf2p8mulb 0x5D(%rdi), %xmm4, %xmm9 RELATIVE: vgf2p8mulb 0x5D(%rdi), %xmm4, %xmm9 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vgf2p8mulb xmm9, xmm4, xmmword ptr ds:[rdi+0x5D] RELATIVE: vgf2p8mulb xmm9, xmm4, xmmword ptr ds:[rdi+0x5D] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vgf2p8mulb xmm9, xmm4, xmmword ptr ds:[rdi+5Dh] + RELATIVE: vgf2p8mulb xmm9, xmm4, xmmword ptr ds:[rdi+5Dh] + +== [ SEGMENTS ] ========================================================================================== C4 62 59 CF 4F 5D : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_001.out b/tests/cases/vexc4_001.out index fd94481c..4adef6a1 100644 --- a/tests/cases/vexc4_001.out +++ b/tests/cases/vexc4_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcmpeqb [ENC: VEX, MAP: 0F, OPC: 0x74] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 C1 05 74 66 FD -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 32 8 UINT ymm4 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFFFFFFFFD -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcmpeqb -0x03(%r14), %ymm15, %ymm4 RELATIVE: vpcmpeqb -0x03(%r14), %ymm15, %ymm4 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcmpeqb ymm4, ymm15, ymmword ptr ds:[r14-0x03] RELATIVE: vpcmpeqb ymm4, ymm15, ymmword ptr ds:[r14-0x03] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcmpeqb ymm4, ymm15, ymmword ptr ds:[r14-3h] + RELATIVE: vpcmpeqb ymm4, ymm15, ymmword ptr ds:[r14-3h] + +== [ SEGMENTS ] ========================================================================================== C4 C1 05 74 66 FD : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_002.out b/tests/cases/vexc4_002.out index 208ae724..aa27497a 100644 --- a/tests/cases/vexc4_002.out +++ b/tests/cases/vexc4_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmsubps [ENC: VEX, MAP: 0F3A, OPC: 0x7C] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 E3 05 7C 33 E0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 FLOAT32 ymm6 @@ -25,19 +25,23 @@ 3 REGISTER EXPLICIT R IS4 256 8 32 FLOAT32 ymm14 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmsubps %ymm14, (%rbx), %ymm15, %ymm6 RELATIVE: vfnmsubps %ymm14, (%rbx), %ymm15, %ymm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmsubps ymm6, ymm15, ymmword ptr ds:[rbx], ymm14 RELATIVE: vfnmsubps ymm6, ymm15, ymmword ptr ds:[rbx], ymm14 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmsubps ymm6, ymm15, ymmword ptr ds:[rbx], ymm14 + RELATIVE: vfnmsubps ymm6, ymm15, ymmword ptr ds:[rbx], ymm14 + +== [ SEGMENTS ] ========================================================================================== C4 A3 05 7C 33 E5 : : : :..IMM : : :..MODRM diff --git a/tests/cases/vexc4_003.out b/tests/cases/vexc4_003.out index 7e36c17b..d81922cc 100644 --- a/tests/cases/vexc4_003.out +++ b/tests/cases/vexc4_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfnmaddsd [ENC: VEX, MAP: 0F3A, OPC: 0x7B] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 C3 B1 7B 08 F0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 FLOAT64 xmm1 @@ -25,19 +25,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfnmaddsd (%r8), %xmm15, %xmm9, %xmm1 RELATIVE: vfnmaddsd (%r8), %xmm15, %xmm9, %xmm1 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfnmaddsd xmm1, xmm9, xmm15, qword ptr ds:[r8] RELATIVE: vfnmaddsd xmm1, xmm9, xmm15, qword ptr ds:[r8] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfnmaddsd xmm1, xmm9, xmm15, qword ptr ds:[r8] + RELATIVE: vfnmaddsd xmm1, xmm9, xmm15, qword ptr ds:[r8] + +== [ SEGMENTS ] ========================================================================================== C4 83 B5 7B 08 F7 : : : :..IMM : : :..MODRM diff --git a/tests/cases/vexc4_004.out b/tests/cases/vexc4_004.out index 03424718..acc546f4 100644 --- a/tests/cases/vexc4_004.out +++ b/tests/cases/vexc4_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpaddusb [ENC: VEX, MAP: 0F, OPC: 0xDC] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 41 09 DC 4E E8 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 16 8 UINT xmm9 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFFFFFFFE8 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpaddusb -0x18(%r14), %xmm14, %xmm9 RELATIVE: vpaddusb -0x18(%r14), %xmm14, %xmm9 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpaddusb xmm9, xmm14, xmmword ptr ds:[r14-0x18] RELATIVE: vpaddusb xmm9, xmm14, xmmword ptr ds:[r14-0x18] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpaddusb xmm9, xmm14, xmmword ptr ds:[r14-18h] + RELATIVE: vpaddusb xmm9, xmm14, xmmword ptr ds:[r14-18h] + +== [ SEGMENTS ] ========================================================================================== C4 41 89 DC 4E E8 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_005.out b/tests/cases/vexc4_005.out index 45b9677c..92389d32 100644 --- a/tests/cases/vexc4_005.out +++ b/tests/cases/vexc4_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpminud [ENC: VEX, MAP: 0F38, OPC: 0x3B] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 42 2D 3B 55 6A -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 UINT ymm10 @@ -24,19 +24,23 @@ DISP = 0x000000000000006A -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpminud 0x6A(%r13), %ymm10, %ymm10 RELATIVE: vpminud 0x6A(%r13), %ymm10, %ymm10 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpminud ymm10, ymm10, ymmword ptr ds:[r13+0x6A] RELATIVE: vpminud ymm10, ymm10, ymmword ptr ds:[r13+0x6A] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpminud ymm10, ymm10, ymmword ptr ds:[r13+6Ah] + RELATIVE: vpminud ymm10, ymm10, ymmword ptr ds:[r13+6Ah] + +== [ SEGMENTS ] ========================================================================================== C4 02 2D 3B 55 6A : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_006.out b/tests/cases/vexc4_006.out index 054053d5..87da871b 100644 --- a/tests/cases/vexc4_006.out +++ b/tests/cases/vexc4_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsub132ss [ENC: VEX, MAP: 0F38, OPC: 0x9B] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 42 39 9B 80 C4 46 BE A0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 128 4 32 FLOAT32 xmm8 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFA0BE46C4 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsub132ss -0x5F41B93C(%r8), %xmm8, %xmm8 RELATIVE: vfmsub132ss -0x5F41B93C(%r8), %xmm8, %xmm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsub132ss xmm8, xmm8, dword ptr ds:[r8-0x5F41B93C] RELATIVE: vfmsub132ss xmm8, xmm8, dword ptr ds:[r8-0x5F41B93C] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsub132ss xmm8, xmm8, dword ptr ds:[r8-5F41B93Ch] + RELATIVE: vfmsub132ss xmm8, xmm8, dword ptr ds:[r8-5F41B93Ch] + +== [ SEGMENTS ] ========================================================================================== C4 42 3D 9B 80 C4 46 BE A0 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_007.out b/tests/cases/vexc4_007.out index 707260c4..6380269f 100644 --- a/tests/cases/vexc4_007.out +++ b/tests/cases/vexc4_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpunpckhqdq [ENC: VEX, MAP: 0F, OPC: 0x6D] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 21 75 6D 1C FD FD C6 FC D7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 4 64 UINT ymm11 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFD7FCC6FD -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpunpckhqdq -0x28033903(,%r15,8), %ymm1, %ymm11 RELATIVE: vpunpckhqdq -0x28033903(,%r15,8), %ymm1, %ymm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpunpckhqdq ymm11, ymm1, ymmword ptr ds:[r15*8-0x28033903] RELATIVE: vpunpckhqdq ymm11, ymm1, ymmword ptr ds:[r15*8-0x28033903] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpunpckhqdq ymm11, ymm1, ymmword ptr ds:[r15*8-28033903h] + RELATIVE: vpunpckhqdq ymm11, ymm1, ymmword ptr ds:[r15*8-28033903h] + +== [ SEGMENTS ] ========================================================================================== C4 21 F5 6D 1C FD FD C6 FC D7 : : : : :..DISP : : : :..SIB diff --git a/tests/cases/vexc4_008.out b/tests/cases/vexc4_008.out index da976317..dbf9c9dd 100644 --- a/tests/cases/vexc4_008.out +++ b/tests/cases/vexc4_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsub213pd [ENC: VEX, MAP: 0F38, OPC: 0xAA] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 E2 C9 AA 38 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 128 2 64 FLOAT64 xmm7 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsub213pd (%rax), %xmm6, %xmm7 RELATIVE: vfmsub213pd (%rax), %xmm6, %xmm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsub213pd xmm7, xmm6, xmmword ptr ds:[rax] RELATIVE: vfmsub213pd xmm7, xmm6, xmmword ptr ds:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsub213pd xmm7, xmm6, xmmword ptr ds:[rax] + RELATIVE: vfmsub213pd xmm7, xmm6, xmmword ptr ds:[rax] + +== [ SEGMENTS ] ========================================================================================== C4 E2 C9 AA 38 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_009.out b/tests/cases/vexc4_009.out index b8ae7205..319214b1 100644 --- a/tests/cases/vexc4_009.out +++ b/tests/cases/vexc4_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpunpckldq [ENC: VEX, MAP: 0F, OPC: 0x62] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 4D 62 45 62 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 UINT ymm8 @@ -24,19 +24,23 @@ DISP = 0x0000000000000062 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpunpckldq 0x62(%rbp), %ymm6, %ymm8 RELATIVE: vpunpckldq 0x62(%rbp), %ymm6, %ymm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpunpckldq ymm8, ymm6, ymmword ptr ss:[rbp+0x62] RELATIVE: vpunpckldq ymm8, ymm6, ymmword ptr ss:[rbp+0x62] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpunpckldq ymm8, ymm6, ymmword ptr ss:[rbp+62h] + RELATIVE: vpunpckldq ymm8, ymm6, ymmword ptr ss:[rbp+62h] + +== [ SEGMENTS ] ========================================================================================== C4 21 4D 62 45 62 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_010.out b/tests/cases/vexc4_010.out index fcf70b12..a5e4eac1 100644 --- a/tests/cases/vexc4_010.out +++ b/tests/cases/vexc4_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vroundpd [ENC: VEX, MAP: 0F3A, OPC: 0x09] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 43 7D 09 26 3E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 4 64 FLOAT64 ymm12 @@ -24,19 +24,23 @@ 2 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x000000000000003E -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vroundpd $0x3E, (%r14), %ymm12 RELATIVE: vroundpd $0x3E, (%r14), %ymm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vroundpd ymm12, ymmword ptr ds:[r14], 0x3E RELATIVE: vroundpd ymm12, ymmword ptr ds:[r14], 0x3E -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vroundpd ymm12, ymmword ptr ds:[r14], 3Eh + RELATIVE: vroundpd ymm12, ymmword ptr ds:[r14], 3Eh + +== [ SEGMENTS ] ========================================================================================== C4 43 FD 09 26 3E : : : :..IMM : : :..MODRM diff --git a/tests/cases/vexc4_011.out b/tests/cases/vexc4_011.out index 67eb4b3c..b4f481b8 100644 --- a/tests/cases/vexc4_011.out +++ b/tests/cases/vexc4_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmaskmovps [ENC: VEX, MAP: 0F38, OPC: 0x2E] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 82 19 2E 54 E0 B7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 MEMORY EXPLICIT W MODRM_RM 128 4 32 FLOAT32 TYPE = MEM @@ -24,19 +24,23 @@ 2 REGISTER EXPLICIT R MODRM_REG 128 4 32 FLOAT32 xmm2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmaskmovps %xmm2, %xmm12, -0x49(%r8,%r12,8) RELATIVE: vmaskmovps %xmm2, %xmm12, -0x49(%r8,%r12,8) -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmaskmovps xmmword ptr ds:[r8+r12*8-0x49], xmm12, xmm2 RELATIVE: vmaskmovps xmmword ptr ds:[r8+r12*8-0x49], xmm12, xmm2 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmaskmovps xmmword ptr ds:[r8+r12*8-49h], xmm12, xmm2 + RELATIVE: vmaskmovps xmmword ptr ds:[r8+r12*8-49h], xmm12, xmm2 + +== [ SEGMENTS ] ========================================================================================== C4 82 19 2E 54 E0 B7 : : : : :..DISP : : : :..SIB diff --git a/tests/cases/vexc4_012.out b/tests/cases/vexc4_012.out index 6a52e90b..3d750a1f 100644 --- a/tests/cases/vexc4_012.out +++ b/tests/cases/vexc4_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vxorpd [ENC: VEX, MAP: 0F, OPC: 0x57] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 41 75 57 24 90 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 4 64 UINT ymm12 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vxorpd (%r8,%rdx,4), %ymm1, %ymm12 RELATIVE: vxorpd (%r8,%rdx,4), %ymm1, %ymm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vxorpd ymm12, ymm1, ymmword ptr ds:[r8+rdx*4] RELATIVE: vxorpd ymm12, ymm1, ymmword ptr ds:[r8+rdx*4] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vxorpd ymm12, ymm1, ymmword ptr ds:[r8+rdx*4] + RELATIVE: vxorpd ymm12, ymm1, ymmword ptr ds:[r8+rdx*4] + +== [ SEGMENTS ] ========================================================================================== C4 41 75 57 24 90 : : : :..SIB : : :..MODRM diff --git a/tests/cases/vexc4_013.out b/tests/cases/vexc4_013.out index b1b671f4..33847678 100644 --- a/tests/cases/vexc4_013.out +++ b/tests/cases/vexc4_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmovlps [ENC: VEX, MAP: 0F, OPC: 0x12] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 C1 20 12 40 58 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm0 @@ -24,19 +24,23 @@ DISP = 0x0000000000000058 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmovlpsq 0x58(%r8), %xmm11, %xmm0 RELATIVE: vmovlpsq 0x58(%r8), %xmm11, %xmm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmovlps xmm0, xmm11, qword ptr ds:[r8+0x58] RELATIVE: vmovlps xmm0, xmm11, qword ptr ds:[r8+0x58] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmovlps xmm0, xmm11, qword ptr ds:[r8+58h] + RELATIVE: vmovlps xmm0, xmm11, qword ptr ds:[r8+58h] + +== [ SEGMENTS ] ========================================================================================== C4 81 A0 12 40 58 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_014.out b/tests/cases/vexc4_014.out index 8d58baec..b753525f 100644 --- a/tests/cases/vexc4_014.out +++ b/tests/cases/vexc4_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vfmsubadd132ps [ENC: VEX, MAP: 0F38, OPC: 0x97] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 C2 5D 97 7A 50 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 256 8 32 FLOAT32 ymm7 @@ -24,19 +24,23 @@ DISP = 0x0000000000000050 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vfmsubadd132ps 0x50(%r10), %ymm4, %ymm7 RELATIVE: vfmsubadd132ps 0x50(%r10), %ymm4, %ymm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vfmsubadd132ps ymm7, ymm4, ymmword ptr ds:[r10+0x50] RELATIVE: vfmsubadd132ps ymm7, ymm4, ymmword ptr ds:[r10+0x50] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vfmsubadd132ps ymm7, ymm4, ymmword ptr ds:[r10+50h] + RELATIVE: vfmsubadd132ps ymm7, ymm4, ymmword ptr ds:[r10+50h] + +== [ SEGMENTS ] ========================================================================================== C4 82 5D 97 7A 50 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_015.out b/tests/cases/vexc4_015.out index d455300c..fef03e3a 100644 --- a/tests/cases/vexc4_015.out +++ b/tests/cases/vexc4_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsubsw [ENC: VEX, MAP: 0F, OPC: 0xE9] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 41 31 E9 95 C8 FF 9A F7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 INT xmm10 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFF79AFFC8 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsubsw -0x8650038(%r13), %xmm9, %xmm10 RELATIVE: vpsubsw -0x8650038(%r13), %xmm9, %xmm10 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsubsw xmm10, xmm9, xmmword ptr ds:[r13-0x8650038] RELATIVE: vpsubsw xmm10, xmm9, xmmword ptr ds:[r13-0x8650038] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsubsw xmm10, xmm9, xmmword ptr ds:[r13-8650038h] + RELATIVE: vpsubsw xmm10, xmm9, xmmword ptr ds:[r13-8650038h] + +== [ SEGMENTS ] ========================================================================================== C4 41 B1 E9 95 C8 FF 9A F7 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_016.out b/tests/cases/vexc4_016.out index 8572c01f..ba5fc048 100644 --- a/tests/cases/vexc4_016.out +++ b/tests/cases/vexc4_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpor [ENC: VEX, MAP: 0F, OPC: 0xEB] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C4 C1 71 EB D3 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 1 128 UINT xmm2 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 128 1 128 UINT xmm11 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpor %xmm11, %xmm1, %xmm2 RELATIVE: vpor %xmm11, %xmm1, %xmm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpor xmm2, xmm1, xmm11 RELATIVE: vpor xmm2, xmm1, xmm11 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpor xmm2, xmm1, xmm11 + RELATIVE: vpor xmm2, xmm1, xmm11 + +== [ SEGMENTS ] ========================================================================================== C4 C1 71 EB D3 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_017.out b/tests/cases/vexc4_017.out index d7bc8492..06d41d68 100644 --- a/tests/cases/vexc4_017.out +++ b/tests/cases/vexc4_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcmpgtd [ENC: VEX, MAP: 0F, OPC: 0x66] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 E1 66 79 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm7 @@ -24,19 +24,23 @@ DISP = 0x0000000000000010 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcmpgtd 0x10(%rcx), %xmm3, %xmm7 RELATIVE: vpcmpgtd 0x10(%rcx), %xmm3, %xmm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcmpgtd xmm7, xmm3, xmmword ptr ds:[rcx+0x10] RELATIVE: vpcmpgtd xmm7, xmm3, xmmword ptr ds:[rcx+0x10] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcmpgtd xmm7, xmm3, xmmword ptr ds:[rcx+10h] + RELATIVE: vpcmpgtd xmm7, xmm3, xmmword ptr ds:[rcx+10h] + +== [ SEGMENTS ] ========================================================================================== C4 A1 61 66 79 10 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_018.out b/tests/cases/vexc4_018.out index 4a74460b..40ce077b 100644 --- a/tests/cases/vexc4_018.out +++ b/tests/cases/vexc4_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vroundsd [ENC: VEX, MAP: 0F3A, OPC: 0x0B] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C4 63 59 0B E6 AE -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 FLOAT64 xmm12 @@ -20,19 +20,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000AE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vroundsd $0xAE, %xmm6, %xmm4, %xmm12 RELATIVE: vroundsd $0xAE, %xmm6, %xmm4, %xmm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vroundsd xmm12, xmm4, xmm6, 0xAE RELATIVE: vroundsd xmm12, xmm4, xmm6, 0xAE -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vroundsd xmm12, xmm4, xmm6, 0AEh + RELATIVE: vroundsd xmm12, xmm4, xmm6, 0AEh + +== [ SEGMENTS ] ========================================================================================== C4 23 59 0B E6 AE : : : :..IMM : : :..MODRM diff --git a/tests/cases/vexc4_019.out b/tests/cases/vexc4_019.out index d928c362..e18c6e49 100644 --- a/tests/cases/vexc4_019.out +++ b/tests/cases/vexc4_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vrsqrtss [ENC: VEX, MAP: 0F, OPC: 0x52] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C4 C1 0A 52 7E A2 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm7 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFFFFFFFA2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vrsqrtssl -0x5E(%r14), %xmm14, %xmm7 RELATIVE: vrsqrtssl -0x5E(%r14), %xmm14, %xmm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vrsqrtss xmm7, xmm14, dword ptr ds:[r14-0x5E] RELATIVE: vrsqrtss xmm7, xmm14, dword ptr ds:[r14-0x5E] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vrsqrtss xmm7, xmm14, dword ptr ds:[r14-5Eh] + RELATIVE: vrsqrtss xmm7, xmm14, dword ptr ds:[r14-5Eh] + +== [ SEGMENTS ] ========================================================================================== C4 C1 8A 52 7E A2 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc4_020.out b/tests/cases/vexc4_020.out index a58e5e76..0849561b 100644 --- a/tests/cases/vexc4_020.out +++ b/tests/cases/vexc4_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: mulx [ENC: VEX, MAP: 0F38, OPC: 0xF6] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C4 E2 F3 F6 F8 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 64 1 64 INT rdi @@ -20,19 +20,23 @@ 3 REGISTER HIDDEN R NONE 64 1 64 INT rdx -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: mulx %rax, %rcx, %rdi RELATIVE: mulx %rax, %rcx, %rdi -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: mulx rdi, rcx, rax RELATIVE: mulx rdi, rcx, rax -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: mulx rdi, rcx, rax + RELATIVE: mulx rdi, rcx, rax + +== [ SEGMENTS ] ========================================================================================== C4 A2 F3 F6 F8 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_021.out b/tests/cases/vexc4_021.out index 15b85180..fab88880 100644 --- a/tests/cases/vexc4_021.out +++ b/tests/cases/vexc4_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpaddd [ENC: VEX, MAP: 0F, OPC: 0xFE] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 09 FE 07 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm8 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpaddd (%rdi), %xmm14, %xmm8 RELATIVE: vpaddd (%rdi), %xmm14, %xmm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpaddd xmm8, xmm14, xmmword ptr ds:[rdi] RELATIVE: vpaddd xmm8, xmm14, xmmword ptr ds:[rdi] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpaddd xmm8, xmm14, xmmword ptr ds:[rdi] + RELATIVE: vpaddd xmm8, xmm14, xmmword ptr ds:[rdi] + +== [ SEGMENTS ] ========================================================================================== C4 21 09 FE 07 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_022.out b/tests/cases/vexc4_022.out index 8a98d915..057e6dd8 100644 --- a/tests/cases/vexc4_022.out +++ b/tests/cases/vexc4_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: sarx [ENC: VEX, MAP: 0F38, OPC: 0xF7] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C4 C2 A2 F7 CC -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 64 1 64 INT rcx @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R NDSNDD 64 1 64 INT r11 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: sarx %r11, %r12, %rcx RELATIVE: sarx %r11, %r12, %rcx -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: sarx rcx, r12, r11 RELATIVE: sarx rcx, r12, r11 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: sarx rcx, r12, r11 + RELATIVE: sarx rcx, r12, r11 + +== [ SEGMENTS ] ========================================================================================== C4 82 A2 F7 CC : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_023.out b/tests/cases/vexc4_023.out index a8003601..bac1b164 100644 --- a/tests/cases/vexc4_023.out +++ b/tests/cases/vexc4_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vminpd [ENC: VEX, MAP: 0F, OPC: 0x5D] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 6D 5D C3 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 4 64 FLOAT64 ymm8 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 256 4 64 FLOAT64 ymm3 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vminpd %ymm3, %ymm2, %ymm8 RELATIVE: vminpd %ymm3, %ymm2, %ymm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vminpd ymm8, ymm2, ymm3 RELATIVE: vminpd ymm8, ymm2, ymm3 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vminpd ymm8, ymm2, ymm3 + RELATIVE: vminpd ymm8, ymm2, ymm3 + +== [ SEGMENTS ] ========================================================================================== C4 61 ED 5D C3 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_024.out b/tests/cases/vexc4_024.out index bbccb9c0..8d8126e0 100644 --- a/tests/cases/vexc4_024.out +++ b/tests/cases/vexc4_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmulhuw [ENC: VEX, MAP: 0F, OPC: 0xE4] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 A1 E4 C1 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm0 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 128 8 16 UINT xmm1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmulhuw %xmm1, %xmm11, %xmm0 RELATIVE: vpmulhuw %xmm1, %xmm11, %xmm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmulhuw xmm0, xmm11, xmm1 RELATIVE: vpmulhuw xmm0, xmm11, xmm1 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmulhuw xmm0, xmm11, xmm1 + RELATIVE: vpmulhuw xmm0, xmm11, xmm1 + +== [ SEGMENTS ] ========================================================================================== C4 A1 21 E4 C1 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc4_025.out b/tests/cases/vexc4_025.out index a7816ff0..b192ea6e 100644 --- a/tests/cases/vexc4_025.out +++ b/tests/cases/vexc4_025.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: tdpbsud [ENC: VEX, MAP: 0F38, OPC: 0x5E] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C4 E2 5A 5E DE -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT RW MODRM_REG 8192 256 32 INT tmm3 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R NDSNDD 8192 256 32 UINT tmm4 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: tdpbsud %tmm4, %tmm6, %tmm3 RELATIVE: tdpbsud %tmm4, %tmm6, %tmm3 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: tdpbsud tmm3, tmm6, tmm4 RELATIVE: tdpbsud tmm3, tmm6, tmm4 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: tdpbsud tmm3, tmm6, tmm4 + RELATIVE: tdpbsud tmm3, tmm6, tmm4 + +== [ SEGMENTS ] ========================================================================================== C4 E2 5A 5E DE : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_000.out b/tests/cases/vexc5_000.out index 41da8a5a..cc4e0086 100644 --- a/tests/cases/vexc5_000.out +++ b/tests/cases/vexc5_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmuludq [ENC: VEX, MAP: 0F, OPC: 0xF4] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 35 F4 C0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 4 64 UINT ymm8 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 256 8 32 UINT ymm0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmuludq %ymm0, %ymm9, %ymm8 RELATIVE: vpmuludq %ymm0, %ymm9, %ymm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmuludq ymm8, ymm9, ymm0 RELATIVE: vpmuludq ymm8, ymm9, ymm0 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmuludq ymm8, ymm9, ymm0 + RELATIVE: vpmuludq ymm8, ymm9, ymm0 + +== [ SEGMENTS ] ========================================================================================== C5 35 F4 C0 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_001.out b/tests/cases/vexc5_001.out index e8cf349e..9df3d08c 100644 --- a/tests/cases/vexc5_001.out +++ b/tests/cases/vexc5_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmulhw [ENC: VEX, MAP: 0F, OPC: 0xE5] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 39 E5 F7 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 INT xmm14 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 128 8 16 INT xmm7 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmulhw %xmm7, %xmm8, %xmm14 RELATIVE: vpmulhw %xmm7, %xmm8, %xmm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmulhw xmm14, xmm8, xmm7 RELATIVE: vpmulhw xmm14, xmm8, xmm7 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmulhw xmm14, xmm8, xmm7 + RELATIVE: vpmulhw xmm14, xmm8, xmm7 + +== [ SEGMENTS ] ========================================================================================== C5 39 E5 F7 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_002.out b/tests/cases/vexc5_002.out index e6d49af1..319808f1 100644 --- a/tests/cases/vexc5_002.out +++ b/tests/cases/vexc5_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vcvttss2si [ENC: VEX, MAP: 0F, OPC: 0x2C] LENGTH: 4 SSZ: 64 @@ -11,26 +11,30 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 7A 2C E0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 32 1 32 INT r12d 1 REGISTER EXPLICIT R MODRM_RM 32 1 32 FLOAT32 xmm0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vcvttss2si %xmm0, %r12d RELATIVE: vcvttss2si %xmm0, %r12d -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vcvttss2si r12d, xmm0 RELATIVE: vcvttss2si r12d, xmm0 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vcvttss2si r12d, xmm0 + RELATIVE: vcvttss2si r12d, xmm0 + +== [ SEGMENTS ] ========================================================================================== C5 7E 2C E0 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_003.out b/tests/cases/vexc5_003.out index 58bebda1..f72b9ba9 100644 --- a/tests/cases/vexc5_003.out +++ b/tests/cases/vexc5_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vrcpss [ENC: VEX, MAP: 0F, OPC: 0x53] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 FA 53 75 9E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm6 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFFFFFFF9E -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vrcpssl -0x62(%rbp), %xmm0, %xmm6 RELATIVE: vrcpssl -0x62(%rbp), %xmm0, %xmm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vrcpss xmm6, xmm0, dword ptr ss:[rbp-0x62] RELATIVE: vrcpss xmm6, xmm0, dword ptr ss:[rbp-0x62] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vrcpss xmm6, xmm0, dword ptr ss:[rbp-62h] + RELATIVE: vrcpss xmm6, xmm0, dword ptr ss:[rbp-62h] + +== [ SEGMENTS ] ========================================================================================== C5 FE 53 75 9E : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_004.out b/tests/cases/vexc5_004.out index ac58a6e0..e8f1caa9 100644 --- a/tests/cases/vexc5_004.out +++ b/tests/cases/vexc5_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmaxub [ENC: VEX, MAP: 0F, OPC: 0xDE] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 61 DE BC 13 66 D6 00 00 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 16 8 UINT xmm15 @@ -24,19 +24,23 @@ DISP = 0x000000000000D666 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmaxub 0xD666(%rbx,%rdx,1), %xmm3, %xmm15 RELATIVE: vpmaxub 0xD666(%rbx,%rdx,1), %xmm3, %xmm15 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmaxub xmm15, xmm3, xmmword ptr ds:[rbx+rdx*1+0xD666] RELATIVE: vpmaxub xmm15, xmm3, xmmword ptr ds:[rbx+rdx*1+0xD666] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmaxub xmm15, xmm3, xmmword ptr ds:[rbx+rdx*1+0D666h] + RELATIVE: vpmaxub xmm15, xmm3, xmmword ptr ds:[rbx+rdx*1+0D666h] + +== [ SEGMENTS ] ========================================================================================== C5 61 DE BC 13 66 D6 00 00 : : : : :..DISP : : : :..SIB diff --git a/tests/cases/vexc5_005.out b/tests/cases/vexc5_005.out index f2aafd92..8c87e5f8 100644 --- a/tests/cases/vexc5_005.out +++ b/tests/cases/vexc5_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmovlps [ENC: VEX, MAP: 0F, OPC: 0x12] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 B0 12 B8 51 17 84 B0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm7 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFB0841751 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmovlpsq -0x4F7BE8AF(%rax), %xmm9, %xmm7 RELATIVE: vmovlpsq -0x4F7BE8AF(%rax), %xmm9, %xmm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmovlps xmm7, xmm9, qword ptr ds:[rax-0x4F7BE8AF] RELATIVE: vmovlps xmm7, xmm9, qword ptr ds:[rax-0x4F7BE8AF] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmovlps xmm7, xmm9, qword ptr ds:[rax-4F7BE8AFh] + RELATIVE: vmovlps xmm7, xmm9, qword ptr ds:[rax-4F7BE8AFh] + +== [ SEGMENTS ] ========================================================================================== C5 B0 12 B8 51 17 84 B0 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_006.out b/tests/cases/vexc5_006.out index 929c9241..15e37c7a 100644 --- a/tests/cases/vexc5_006.out +++ b/tests/cases/vexc5_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmovss [ENC: VEX, MAP: 0F, OPC: 0x10] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 7A 10 87 8F 5D AD 3F -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm8 @@ -23,19 +23,23 @@ DISP = 0x000000003FAD5D8F -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmovssl 0x3FAD5D8F(%rdi), %xmm8 RELATIVE: vmovssl 0x3FAD5D8F(%rdi), %xmm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmovss xmm8, dword ptr ds:[rdi+0x3FAD5D8F] RELATIVE: vmovss xmm8, dword ptr ds:[rdi+0x3FAD5D8F] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmovss xmm8, dword ptr ds:[rdi+3FAD5D8Fh] + RELATIVE: vmovss xmm8, dword ptr ds:[rdi+3FAD5D8Fh] + +== [ SEGMENTS ] ========================================================================================== C5 7E 10 87 8F 5D AD 3F : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_007.out b/tests/cases/vexc5_007.out index 2d04cddc..5725c567 100644 --- a/tests/cases/vexc5_007.out +++ b/tests/cases/vexc5_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpinsrw [ENC: VEX, MAP: 0F, OPC: 0xC4] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 41 C4 75 AA 5D -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm14 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x000000000000005D -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpinsrww $0x5D, -0x56(%rbp), %xmm7, %xmm14 RELATIVE: vpinsrww $0x5D, -0x56(%rbp), %xmm7, %xmm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpinsrw xmm14, xmm7, word ptr ss:[rbp-0x56], 0x5D RELATIVE: vpinsrw xmm14, xmm7, word ptr ss:[rbp-0x56], 0x5D -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpinsrw xmm14, xmm7, word ptr ss:[rbp-56h], 5Dh + RELATIVE: vpinsrw xmm14, xmm7, word ptr ss:[rbp-56h], 5Dh + +== [ SEGMENTS ] ========================================================================================== C5 41 C4 75 AA 5D : : : : :..IMM : : : :..DISP diff --git a/tests/cases/vexc5_008.out b/tests/cases/vexc5_008.out index fdac4bb1..8d87283d 100644 --- a/tests/cases/vexc5_008.out +++ b/tests/cases/vexc5_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpaddusb [ENC: VEX, MAP: 0F, OPC: 0xDC] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX IS_RELATIVE ACCEPTS_SEGMENT OPTIMIZED: C5 59 DC 0D 3A A2 0F 89 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 16 8 UINT xmm9 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFF890FA23A -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpaddusb 0xFFFFFFFF890FA242, %xmm4, %xmm9 RELATIVE: vpaddusb -0x76F05DC6(%rip), %xmm4, %xmm9 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpaddusb xmm9, xmm4, xmmword ptr ds:[0xFFFFFFFF890FA242] RELATIVE: vpaddusb xmm9, xmm4, xmmword ptr ds:[rip-0x76F05DC6] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpaddusb xmm9, xmm4, xmmword ptr ds:[$-76F05DBEh] + RELATIVE: vpaddusb xmm9, xmm4, xmmword ptr ds:[$-76F05DBEh] + +== [ SEGMENTS ] ========================================================================================== C5 59 DC 0D 3A A2 0F 89 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_009.out b/tests/cases/vexc5_009.out index 81957e09..28776915 100644 --- a/tests/cases/vexc5_009.out +++ b/tests/cases/vexc5_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpslld [ENC: VEX, MAP: 0F, OPC: 0xF2] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 95 F2 6B 43 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 UINT ymm5 @@ -24,19 +24,23 @@ DISP = 0x0000000000000043 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpslldx 0x43(%rbx), %ymm13, %ymm5 RELATIVE: vpslldx 0x43(%rbx), %ymm13, %ymm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpslld ymm5, ymm13, xmmword ptr ds:[rbx+0x43] RELATIVE: vpslld ymm5, ymm13, xmmword ptr ds:[rbx+0x43] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpslld ymm5, ymm13, xmmword ptr ds:[rbx+43h] + RELATIVE: vpslld ymm5, ymm13, xmmword ptr ds:[rbx+43h] + +== [ SEGMENTS ] ========================================================================================== C5 95 F2 6B 43 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_010.out b/tests/cases/vexc5_010.out index 70bdcc58..ee399ba7 100644 --- a/tests/cases/vexc5_010.out +++ b/tests/cases/vexc5_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vcvtsi2ss [ENC: VEX, MAP: 0F, OPC: 0x2A] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 12 2A 98 3C B6 83 1E -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 FLOAT32 xmm11 @@ -24,19 +24,23 @@ DISP = 0x000000001E83B63C -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vcvtsi2ssl 0x1E83B63C(%rax), %xmm13, %xmm11 RELATIVE: vcvtsi2ssl 0x1E83B63C(%rax), %xmm13, %xmm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vcvtsi2ss xmm11, xmm13, dword ptr ds:[rax+0x1E83B63C] RELATIVE: vcvtsi2ss xmm11, xmm13, dword ptr ds:[rax+0x1E83B63C] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vcvtsi2ss xmm11, xmm13, dword ptr ds:[rax+1E83B63Ch] + RELATIVE: vcvtsi2ss xmm11, xmm13, dword ptr ds:[rax+1E83B63Ch] + +== [ SEGMENTS ] ========================================================================================== C5 16 2A 98 3C B6 83 1E : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_011.out b/tests/cases/vexc5_011.out index c11f4e12..8284cfc6 100644 --- a/tests/cases/vexc5_011.out +++ b/tests/cases/vexc5_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: jkzd [ENC: VEX, MAP: 0F, OPC: 0x84] LENGTH: 8 SSZ: 64 @@ -11,26 +11,30 @@ ATTRIBUTES: HAS_VEX IS_RELATIVE OPTIMIZED: C5 E8 84 E3 7C FE 42 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W NDSNDD 16 16 1 INT k2 1 IMMEDIATE EXPLICIT R JIMM32 32 1 32 INT [S R 32] 0x0000000042FE7CE3 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: jkzd 0x0000000042FE7CEB, %k2 RELATIVE: jkzd +0x42FE7CEB, %k2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: jkzd k2, 0x0000000042FE7CEB RELATIVE: jkzd k2, +0x42FE7CEB -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: jkzd k2, $+42FE7CEBh + RELATIVE: jkzd k2, $+42FE7CEBh + +== [ SEGMENTS ] ========================================================================================== 65 C5 E8 84 E3 7C FE 42 : : : :..IMM : : :..OPCODE diff --git a/tests/cases/vexc5_012.out b/tests/cases/vexc5_012.out index 75f69f83..227baed3 100644 --- a/tests/cases/vexc5_012.out +++ b/tests/cases/vexc5_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpsubusw [ENC: VEX, MAP: 0F, OPC: 0xD9] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 65 D9 B1 7C 54 92 35 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 16 16 UINT ymm14 @@ -24,19 +24,23 @@ DISP = 0x000000003592547C -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpsubusw 0x3592547C(%rcx), %ymm3, %ymm14 RELATIVE: vpsubusw 0x3592547C(%rcx), %ymm3, %ymm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpsubusw ymm14, ymm3, ymmword ptr ds:[rcx+0x3592547C] RELATIVE: vpsubusw ymm14, ymm3, ymmword ptr ds:[rcx+0x3592547C] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpsubusw ymm14, ymm3, ymmword ptr ds:[rcx+3592547Ch] + RELATIVE: vpsubusw ymm14, ymm3, ymmword ptr ds:[rcx+3592547Ch] + +== [ SEGMENTS ] ========================================================================================== C5 65 D9 B1 7C 54 92 35 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_013.out b/tests/cases/vexc5_013.out index d8edf47f..02f48129 100644 --- a/tests/cases/vexc5_013.out +++ b/tests/cases/vexc5_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcmpeqb [ENC: VEX, MAP: 0F, OPC: 0x74] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 45 74 36 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 32 8 UINT ymm14 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcmpeqb (%rsi), %ymm7, %ymm14 RELATIVE: vpcmpeqb (%rsi), %ymm7, %ymm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcmpeqb ymm14, ymm7, ymmword ptr ds:[rsi] RELATIVE: vpcmpeqb ymm14, ymm7, ymmword ptr ds:[rsi] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcmpeqb ymm14, ymm7, ymmword ptr ds:[rsi] + RELATIVE: vpcmpeqb ymm14, ymm7, ymmword ptr ds:[rsi] + +== [ SEGMENTS ] ========================================================================================== C5 45 74 36 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_014.out b/tests/cases/vexc5_014.out index a4103e47..5d9b33f5 100644 --- a/tests/cases/vexc5_014.out +++ b/tests/cases/vexc5_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vunpcklps [ENC: VEX, MAP: 0F, OPC: 0x14] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 EC 14 91 30 42 AE 34 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 FLOAT32 ymm2 @@ -24,19 +24,23 @@ DISP = 0x0000000034AE4230 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vunpcklps 0x34AE4230(%rcx), %ymm2, %ymm2 RELATIVE: vunpcklps 0x34AE4230(%rcx), %ymm2, %ymm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vunpcklps ymm2, ymm2, ymmword ptr ds:[rcx+0x34AE4230] RELATIVE: vunpcklps ymm2, ymm2, ymmword ptr ds:[rcx+0x34AE4230] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vunpcklps ymm2, ymm2, ymmword ptr ds:[rcx+34AE4230h] + RELATIVE: vunpcklps ymm2, ymm2, ymmword ptr ds:[rcx+34AE4230h] + +== [ SEGMENTS ] ========================================================================================== C5 EC 14 91 30 42 AE 34 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_015.out b/tests/cases/vexc5_015.out index 5e7f6e5f..ded6a495 100644 --- a/tests/cases/vexc5_015.out +++ b/tests/cases/vexc5_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmaxps [ENC: VEX, MAP: 0F, OPC: 0x5F] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 E4 5F 18 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 FLOAT32 ymm3 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmaxps (%rax), %ymm3, %ymm3 RELATIVE: vmaxps (%rax), %ymm3, %ymm3 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmaxps ymm3, ymm3, ymmword ptr ds:[rax] RELATIVE: vmaxps ymm3, ymm3, ymmword ptr ds:[rax] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmaxps ymm3, ymm3, ymmword ptr ds:[rax] + RELATIVE: vmaxps ymm3, ymm3, ymmword ptr ds:[rax] + +== [ SEGMENTS ] ========================================================================================== C5 E4 5F 18 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_016.out b/tests/cases/vexc5_016.out index b613d433..eec3b724 100644 --- a/tests/cases/vexc5_016.out +++ b/tests/cases/vexc5_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpaddusw [ENC: VEX, MAP: 0F, OPC: 0xDD] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 A9 DD 3A -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm7 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpaddusw (%rdx), %xmm10, %xmm7 RELATIVE: vpaddusw (%rdx), %xmm10, %xmm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpaddusw xmm7, xmm10, xmmword ptr ds:[rdx] RELATIVE: vpaddusw xmm7, xmm10, xmmword ptr ds:[rdx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpaddusw xmm7, xmm10, xmmword ptr ds:[rdx] + RELATIVE: vpaddusw xmm7, xmm10, xmmword ptr ds:[rdx] + +== [ SEGMENTS ] ========================================================================================== C5 A9 DD 3A : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_017.out b/tests/cases/vexc5_017.out index 1858cd30..4338bdc4 100644 --- a/tests/cases/vexc5_017.out +++ b/tests/cases/vexc5_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vaddsd [ENC: VEX, MAP: 0F, OPC: 0x58] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 13 58 9B 8D B5 B5 FD -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 FLOAT64 xmm11 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFFDB5B58D -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vaddsdq -0x24A4A73(%rbx), %xmm13, %xmm11 RELATIVE: vaddsdq -0x24A4A73(%rbx), %xmm13, %xmm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vaddsd xmm11, xmm13, qword ptr ds:[rbx-0x24A4A73] RELATIVE: vaddsd xmm11, xmm13, qword ptr ds:[rbx-0x24A4A73] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vaddsd xmm11, xmm13, qword ptr ds:[rbx-24A4A73h] + RELATIVE: vaddsd xmm11, xmm13, qword ptr ds:[rbx-24A4A73h] + +== [ SEGMENTS ] ========================================================================================== C5 13 58 9B 8D B5 B5 FD : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_018.out b/tests/cases/vexc5_018.out index b1aa9678..9b85fb88 100644 --- a/tests/cases/vexc5_018.out +++ b/tests/cases/vexc5_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmullw [ENC: VEX, MAP: 0F, OPC: 0xD5] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 0D D5 E6 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 16 16 INT ymm12 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 256 16 16 INT ymm6 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmullw %ymm6, %ymm14, %ymm12 RELATIVE: vpmullw %ymm6, %ymm14, %ymm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmullw ymm12, ymm14, ymm6 RELATIVE: vpmullw ymm12, ymm14, ymm6 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmullw ymm12, ymm14, ymm6 + RELATIVE: vpmullw ymm12, ymm14, ymm6 + +== [ SEGMENTS ] ========================================================================================== C5 0D D5 E6 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_019.out b/tests/cases/vexc5_019.out index 522d37c7..e74464ce 100644 --- a/tests/cases/vexc5_019.out +++ b/tests/cases/vexc5_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpand [ENC: VEX, MAP: 0F, OPC: 0xDB] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 C5 DB 6D 07 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 1 256 UINT ymm5 @@ -24,19 +24,23 @@ DISP = 0x0000000000000007 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpand 0x07(%rbp), %ymm7, %ymm5 RELATIVE: vpand 0x07(%rbp), %ymm7, %ymm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpand ymm5, ymm7, ymmword ptr ss:[rbp+0x07] RELATIVE: vpand ymm5, ymm7, ymmword ptr ss:[rbp+0x07] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpand ymm5, ymm7, ymmword ptr ss:[rbp+7h] + RELATIVE: vpand ymm5, ymm7, ymmword ptr ss:[rbp+7h] + +== [ SEGMENTS ] ========================================================================================== C5 C5 DB 6D 07 : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_020.out b/tests/cases/vexc5_020.out index 9021431b..3e4de810 100644 --- a/tests/cases/vexc5_020.out +++ b/tests/cases/vexc5_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpor [ENC: VEX, MAP: 0F, OPC: 0xEB] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 31 EB 1A -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 1 128 UINT xmm11 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpor (%rdx), %xmm9, %xmm11 RELATIVE: vpor (%rdx), %xmm9, %xmm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpor xmm11, xmm9, xmmword ptr ds:[rdx] RELATIVE: vpor xmm11, xmm9, xmmword ptr ds:[rdx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpor xmm11, xmm9, xmmword ptr ds:[rdx] + RELATIVE: vpor xmm11, xmm9, xmmword ptr ds:[rdx] + +== [ SEGMENTS ] ========================================================================================== C5 31 EB 1A : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_021.out b/tests/cases/vexc5_021.out index 2d73326b..867ab9d1 100644 --- a/tests/cases/vexc5_021.out +++ b/tests/cases/vexc5_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpunpckldq [ENC: VEX, MAP: 0F, OPC: 0x62] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 49 62 76 0C -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 UINT xmm14 @@ -24,19 +24,23 @@ DISP = 0x000000000000000C -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpunpckldq 0x0C(%rsi), %xmm6, %xmm14 RELATIVE: vpunpckldq 0x0C(%rsi), %xmm6, %xmm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpunpckldq xmm14, xmm6, xmmword ptr ds:[rsi+0x0C] RELATIVE: vpunpckldq xmm14, xmm6, xmmword ptr ds:[rsi+0x0C] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpunpckldq xmm14, xmm6, xmmword ptr ds:[rsi+0Ch] + RELATIVE: vpunpckldq xmm14, xmm6, xmmword ptr ds:[rsi+0Ch] + +== [ SEGMENTS ] ========================================================================================== C5 49 62 76 0C : : : :..DISP : : :..MODRM diff --git a/tests/cases/vexc5_022.out b/tests/cases/vexc5_022.out index 0ce4c61f..23ef34c8 100644 --- a/tests/cases/vexc5_022.out +++ b/tests/cases/vexc5_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpaddw [ENC: VEX, MAP: 0F, OPC: 0xFD] LENGTH: 4 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX OPTIMIZED: C5 49 FD D8 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 INT xmm11 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 128 8 16 INT xmm0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpaddw %xmm0, %xmm6, %xmm11 RELATIVE: vpaddw %xmm0, %xmm6, %xmm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpaddw xmm11, xmm6, xmm0 RELATIVE: vpaddw xmm11, xmm6, xmm0 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpaddw xmm11, xmm6, xmm0 + RELATIVE: vpaddw xmm11, xmm6, xmm0 + +== [ SEGMENTS ] ========================================================================================== C5 49 FD D8 : : :..MODRM : :..OPCODE diff --git a/tests/cases/vexc5_023.out b/tests/cases/vexc5_023.out index 31646cbb..67f8a184 100644 --- a/tests/cases/vexc5_023.out +++ b/tests/cases/vexc5_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vmulsd [ENC: VEX, MAP: 0F, OPC: 0x59] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 EB 59 04 11 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 FLOAT64 xmm0 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vmulsdq (%rcx,%rdx,1), %xmm2, %xmm0 RELATIVE: vmulsdq (%rcx,%rdx,1), %xmm2, %xmm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vmulsd xmm0, xmm2, qword ptr ds:[rcx+rdx*1] RELATIVE: vmulsd xmm0, xmm2, qword ptr ds:[rcx+rdx*1] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vmulsd xmm0, xmm2, qword ptr ds:[rcx+rdx*1] + RELATIVE: vmulsd xmm0, xmm2, qword ptr ds:[rcx+rdx*1] + +== [ SEGMENTS ] ========================================================================================== C5 EB 59 04 11 : : : :..SIB : : :..MODRM diff --git a/tests/cases/vexc5_024.out b/tests/cases/vexc5_024.out index d713d510..3ee324de 100644 --- a/tests/cases/vexc5_024.out +++ b/tests/cases/vexc5_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vdivps [ENC: VEX, MAP: 0F, OPC: 0x5E] LENGTH: 8 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_VEX ACCEPTS_SEGMENT OPTIMIZED: C5 D4 5E AE EB DA 88 BE -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 256 8 32 FLOAT32 ymm5 @@ -24,19 +24,23 @@ DISP = 0xFFFFFFFFBE88DAEB -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 256 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vdivps -0x41772515(%rsi), %ymm5, %ymm5 RELATIVE: vdivps -0x41772515(%rsi), %ymm5, %ymm5 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vdivps ymm5, ymm5, ymmword ptr ds:[rsi-0x41772515] RELATIVE: vdivps ymm5, ymm5, ymmword ptr ds:[rsi-0x41772515] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vdivps ymm5, ymm5, ymmword ptr ds:[rsi-41772515h] + RELATIVE: vdivps ymm5, ymm5, ymmword ptr ds:[rsi-41772515h] + +== [ SEGMENTS ] ========================================================================================== C5 D4 5E AE EB DA 88 BE : : : :..DISP : : :..MODRM diff --git a/tests/cases/xop_000.out b/tests/cases/xop_000.out index 4e6e5b71..57aea3ee 100644 --- a/tests/cases/xop_000.out +++ b/tests/cases/xop_000.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomuq [ENC: XOP, MAP: XOP8, OPC: 0xEF] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F E8 60 EF 4E 3D C0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 UINT xmm1 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000C0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomuq $0xC0, 0x3D(%rsi), %xmm3, %xmm1 RELATIVE: vpcomuq $0xC0, 0x3D(%rsi), %xmm3, %xmm1 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomuq xmm1, xmm3, xmmword ptr ds:[rsi+0x3D], 0xC0 RELATIVE: vpcomuq xmm1, xmm3, xmmword ptr ds:[rsi+0x3D], 0xC0 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomuq xmm1, xmm3, xmmword ptr ds:[rsi+3Dh], 0C0h + RELATIVE: vpcomuq xmm1, xmm3, xmmword ptr ds:[rsi+3Dh], 0C0h + +== [ SEGMENTS ] ========================================================================================== 8F E8 60 EF 4E 3D C0 : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_001.out b/tests/cases/xop_001.out index 0ca7b988..b753f57c 100644 --- a/tests/cases/xop_001.out +++ b/tests/cases/xop_001.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshlw [ENC: XOP, MAP: XOP9, OPC: 0x95] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 49 88 95 00 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm8 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshlw (%r8), %xmm14, %xmm8 RELATIVE: vpshlw (%r8), %xmm14, %xmm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshlw xmm8, xmm14, xmmword ptr ds:[r8] RELATIVE: vpshlw xmm8, xmm14, xmmword ptr ds:[r8] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshlw xmm8, xmm14, xmmword ptr ds:[r8] + RELATIVE: vpshlw xmm8, xmm14, xmmword ptr ds:[r8] + +== [ SEGMENTS ] ========================================================================================== 8F 49 88 95 00 : : :..MODRM : :..OPCODE diff --git a/tests/cases/xop_002.out b/tests/cases/xop_002.out index 983d6248..8f3bfc6a 100644 --- a/tests/cases/xop_002.out +++ b/tests/cases/xop_002.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshaw [ENC: XOP, MAP: XOP9, OPC: 0x99] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 69 D8 99 19 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 INT xmm11 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshaw (%rcx), %xmm4, %xmm11 RELATIVE: vpshaw (%rcx), %xmm4, %xmm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshaw xmm11, xmm4, xmmword ptr ds:[rcx] RELATIVE: vpshaw xmm11, xmm4, xmmword ptr ds:[rcx] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshaw xmm11, xmm4, xmmword ptr ds:[rcx] + RELATIVE: vpshaw xmm11, xmm4, xmmword ptr ds:[rcx] + +== [ SEGMENTS ] ========================================================================================== 8F 69 D8 99 19 : : :..MODRM : :..OPCODE diff --git a/tests/cases/xop_003.out b/tests/cases/xop_003.out index f8a15ba4..18b698e1 100644 --- a/tests/cases/xop_003.out +++ b/tests/cases/xop_003.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmadcsswd [ENC: XOP, MAP: XOP8, OPC: 0xA6] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP OPTIMIZED: 8F 48 68 A6 C0 20 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm8 @@ -20,19 +20,23 @@ 3 REGISTER EXPLICIT R IS4 128 4 32 INT xmm2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmadcsswd %xmm2, %xmm8, %xmm2, %xmm8 RELATIVE: vpmadcsswd %xmm2, %xmm8, %xmm2, %xmm8 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmadcsswd xmm8, xmm2, xmm8, xmm2 RELATIVE: vpmadcsswd xmm8, xmm2, xmm8, xmm2 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmadcsswd xmm8, xmm2, xmm8, xmm2 + RELATIVE: vpmadcsswd xmm8, xmm2, xmm8, xmm2 + +== [ SEGMENTS ] ========================================================================================== 8F 08 68 A6 C0 23 : : : :..IMM : : :..MODRM diff --git a/tests/cases/xop_004.out b/tests/cases/xop_004.out index a2050cef..54c95fda 100644 --- a/tests/cases/xop_004.out +++ b/tests/cases/xop_004.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmacsdqh [ENC: XOP, MAP: XOP8, OPC: 0x9F] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 68 58 9F 76 1C 10 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 INT xmm14 @@ -25,19 +25,23 @@ 3 REGISTER EXPLICIT R IS4 128 2 64 INT xmm1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmacsdqh %xmm1, 0x1C(%rsi), %xmm4, %xmm14 RELATIVE: vpmacsdqh %xmm1, 0x1C(%rsi), %xmm4, %xmm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmacsdqh xmm14, xmm4, xmmword ptr ds:[rsi+0x1C], xmm1 RELATIVE: vpmacsdqh xmm14, xmm4, xmmword ptr ds:[rsi+0x1C], xmm1 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmacsdqh xmm14, xmm4, xmmword ptr ds:[rsi+1Ch], xmm1 + RELATIVE: vpmacsdqh xmm14, xmm4, xmmword ptr ds:[rsi+1Ch], xmm1 + +== [ SEGMENTS ] ========================================================================================== 8F 68 58 9F 76 1C 1A : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_005.out b/tests/cases/xop_005.out index bea8ca1a..0c2f970b 100644 --- a/tests/cases/xop_005.out +++ b/tests/cases/xop_005.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcmov [ENC: XOP, MAP: XOP8, OPC: 0xA2] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F C8 28 A2 12 50 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 128 1 INT xmm2 @@ -25,19 +25,23 @@ 3 REGISTER EXPLICIT R IS4 128 128 1 INT xmm5 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcmov %xmm5, (%r10), %xmm10, %xmm2 RELATIVE: vpcmov %xmm5, (%r10), %xmm10, %xmm2 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcmov xmm2, xmm10, xmmword ptr ds:[r10], xmm5 RELATIVE: vpcmov xmm2, xmm10, xmmword ptr ds:[r10], xmm5 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcmov xmm2, xmm10, xmmword ptr ds:[r10], xmm5 + RELATIVE: vpcmov xmm2, xmm10, xmmword ptr ds:[r10], xmm5 + +== [ SEGMENTS ] ========================================================================================== 8F 88 28 A2 12 5A : : : :..IMM : : :..MODRM diff --git a/tests/cases/xop_006.out b/tests/cases/xop_006.out index 6ccab1d1..55af5174 100644 --- a/tests/cases/xop_006.out +++ b/tests/cases/xop_006.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmacssdd [ENC: XOP, MAP: XOP8, OPC: 0x8E] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 48 40 8E B3 4E CE 0A 0D 00 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm14 @@ -25,19 +25,23 @@ 3 REGISTER EXPLICIT R IS4 128 4 32 INT xmm0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmacssdd %xmm0, 0xD0ACE4E(%r11), %xmm7, %xmm14 RELATIVE: vpmacssdd %xmm0, 0xD0ACE4E(%r11), %xmm7, %xmm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmacssdd xmm14, xmm7, xmmword ptr ds:[r11+0xD0ACE4E], xmm0 RELATIVE: vpmacssdd xmm14, xmm7, xmmword ptr ds:[r11+0xD0ACE4E], xmm0 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmacssdd xmm14, xmm7, xmmword ptr ds:[r11+0D0ACE4Eh], xmm0 + RELATIVE: vpmacssdd xmm14, xmm7, xmmword ptr ds:[r11+0D0ACE4Eh], xmm0 + +== [ SEGMENTS ] ========================================================================================== 8F 08 40 8E B3 4E CE 0A 0D 0D : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_007.out b/tests/cases/xop_007.out index a0400f4d..98b5f6ed 100644 --- a/tests/cases/xop_007.out +++ b/tests/cases/xop_007.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmacssdd [ENC: XOP, MAP: XOP8, OPC: 0x8E] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP OPTIMIZED: 8F C8 00 8E F1 D0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm6 @@ -20,19 +20,23 @@ 3 REGISTER EXPLICIT R IS4 128 4 32 INT xmm13 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmacssdd %xmm13, %xmm9, %xmm15, %xmm6 RELATIVE: vpmacssdd %xmm13, %xmm9, %xmm15, %xmm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmacssdd xmm6, xmm15, xmm9, xmm13 RELATIVE: vpmacssdd xmm6, xmm15, xmm9, xmm13 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmacssdd xmm6, xmm15, xmm9, xmm13 + RELATIVE: vpmacssdd xmm6, xmm15, xmm9, xmm13 + +== [ SEGMENTS ] ========================================================================================== 8F 88 00 8E F1 D3 : : : :..IMM : : :..MODRM diff --git a/tests/cases/xop_008.out b/tests/cases/xop_008.out index 9fd5a786..bd6ae579 100644 --- a/tests/cases/xop_008.out +++ b/tests/cases/xop_008.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshlw [ENC: XOP, MAP: XOP9, OPC: 0x95] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 69 D8 95 2C 30 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm13 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshlw (%rax,%rsi,1), %xmm4, %xmm13 RELATIVE: vpshlw (%rax,%rsi,1), %xmm4, %xmm13 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshlw xmm13, xmm4, xmmword ptr ds:[rax+rsi*1] RELATIVE: vpshlw xmm13, xmm4, xmmword ptr ds:[rax+rsi*1] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshlw xmm13, xmm4, xmmword ptr ds:[rax+rsi*1] + RELATIVE: vpshlw xmm13, xmm4, xmmword ptr ds:[rax+rsi*1] + +== [ SEGMENTS ] ========================================================================================== 8F 69 D8 95 2C 30 : : : :..SIB : : :..MODRM diff --git a/tests/cases/xop_009.out b/tests/cases/xop_009.out index dd5b27f9..cdd005c6 100644 --- a/tests/cases/xop_009.out +++ b/tests/cases/xop_009.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshaq [ENC: XOP, MAP: XOP9, OPC: 0x9B] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 49 08 9B 5D D5 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 INT xmm11 @@ -24,19 +24,23 @@ 2 REGISTER EXPLICIT R NDSNDD 128 2 64 INT xmm14 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshaq %xmm14, -0x2B(%r13), %xmm11 RELATIVE: vpshaq %xmm14, -0x2B(%r13), %xmm11 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshaq xmm11, xmmword ptr ds:[r13-0x2B], xmm14 RELATIVE: vpshaq xmm11, xmmword ptr ds:[r13-0x2B], xmm14 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshaq xmm11, xmmword ptr ds:[r13-2Bh], xmm14 + RELATIVE: vpshaq xmm11, xmmword ptr ds:[r13-2Bh], xmm14 + +== [ SEGMENTS ] ========================================================================================== 8F 49 08 9B 5D D5 : : : :..DISP : : :..MODRM diff --git a/tests/cases/xop_010.out b/tests/cases/xop_010.out index 30a9dbd5..7d603e29 100644 --- a/tests/cases/xop_010.out +++ b/tests/cases/xop_010.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshaq [ENC: XOP, MAP: XOP9, OPC: 0x9B] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP OPTIMIZED: 8F E9 60 9B F0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 INT xmm6 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 128 2 64 INT xmm3 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshaq %xmm3, %xmm0, %xmm6 RELATIVE: vpshaq %xmm3, %xmm0, %xmm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshaq xmm6, xmm0, xmm3 RELATIVE: vpshaq xmm6, xmm0, xmm3 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshaq xmm6, xmm0, xmm3 + RELATIVE: vpshaq xmm6, xmm0, xmm3 + +== [ SEGMENTS ] ========================================================================================== 8F A9 F8 9B F3 : : :..MODRM : :..OPCODE diff --git a/tests/cases/xop_011.out b/tests/cases/xop_011.out index a7832fee..5cd7691d 100644 --- a/tests/cases/xop_011.out +++ b/tests/cases/xop_011.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vprotd [ENC: XOP, MAP: XOP8, OPC: 0xC2] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F C8 78 C2 86 80 31 EE 39 0A -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 UINT xmm0 @@ -24,19 +24,23 @@ 2 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x000000000000000A -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vprotd $0x0A, 0x39EE3180(%r14), %xmm0 RELATIVE: vprotd $0x0A, 0x39EE3180(%r14), %xmm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vprotd xmm0, xmmword ptr ds:[r14+0x39EE3180], 0x0A RELATIVE: vprotd xmm0, xmmword ptr ds:[r14+0x39EE3180], 0x0A -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vprotd xmm0, xmmword ptr ds:[r14+39EE3180h], 0Ah + RELATIVE: vprotd xmm0, xmmword ptr ds:[r14+39EE3180h], 0Ah + +== [ SEGMENTS ] ========================================================================================== 8F 88 78 C2 86 80 31 EE 39 0A : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_012.out b/tests/cases/xop_012.out index 098043d9..1a44568d 100644 --- a/tests/cases/xop_012.out +++ b/tests/cases/xop_012.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomd [ENC: XOP, MAP: XOP8, OPC: 0xCE] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F E8 70 CE 82 2F 3A 96 FB 93 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm0 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x0000000000000093 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomd $0x93, -0x469C5D1(%rdx), %xmm1, %xmm0 RELATIVE: vpcomd $0x93, -0x469C5D1(%rdx), %xmm1, %xmm0 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomd xmm0, xmm1, xmmword ptr ds:[rdx-0x469C5D1], 0x93 RELATIVE: vpcomd xmm0, xmm1, xmmword ptr ds:[rdx-0x469C5D1], 0x93 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomd xmm0, xmm1, xmmword ptr ds:[rdx-469C5D1h], 93h + RELATIVE: vpcomd xmm0, xmm1, xmmword ptr ds:[rdx-469C5D1h], 93h + +== [ SEGMENTS ] ========================================================================================== 8F A8 70 CE 82 2F 3A 96 FB 93 : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_013.out b/tests/cases/xop_013.out index b3ad2311..ff8cbbed 100644 --- a/tests/cases/xop_013.out +++ b/tests/cases/xop_013.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshad [ENC: XOP, MAP: XOP9, OPC: 0x9A] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F E9 78 9A 76 4C -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm6 @@ -24,19 +24,23 @@ 2 REGISTER EXPLICIT R NDSNDD 128 4 32 INT xmm0 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshad %xmm0, 0x4C(%rsi), %xmm6 RELATIVE: vpshad %xmm0, 0x4C(%rsi), %xmm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshad xmm6, xmmword ptr ds:[rsi+0x4C], xmm0 RELATIVE: vpshad xmm6, xmmword ptr ds:[rsi+0x4C], xmm0 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshad xmm6, xmmword ptr ds:[rsi+4Ch], xmm0 + RELATIVE: vpshad xmm6, xmmword ptr ds:[rsi+4Ch], xmm0 + +== [ SEGMENTS ] ========================================================================================== 8F A9 78 9A 76 4C : : : :..DISP : : :..MODRM diff --git a/tests/cases/xop_014.out b/tests/cases/xop_014.out index 0f8ed135..d41894ab 100644 --- a/tests/cases/xop_014.out +++ b/tests/cases/xop_014.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomq [ENC: XOP, MAP: XOP8, OPC: 0xCF] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 68 50 CF A1 6C B8 7F 15 C1 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 INT xmm12 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000C1 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomq $0xC1, 0x157FB86C(%rcx), %xmm5, %xmm12 RELATIVE: vpcomq $0xC1, 0x157FB86C(%rcx), %xmm5, %xmm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomq xmm12, xmm5, xmmword ptr ds:[rcx+0x157FB86C], 0xC1 RELATIVE: vpcomq xmm12, xmm5, xmmword ptr ds:[rcx+0x157FB86C], 0xC1 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomq xmm12, xmm5, xmmword ptr ds:[rcx+157FB86Ch], 0C1h + RELATIVE: vpcomq xmm12, xmm5, xmmword ptr ds:[rcx+157FB86Ch], 0C1h + +== [ SEGMENTS ] ========================================================================================== 8F 68 50 CF A1 6C B8 7F 15 C1 : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_015.out b/tests/cases/xop_015.out index 7eaea1cb..6ba33990 100644 --- a/tests/cases/xop_015.out +++ b/tests/cases/xop_015.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshlw [ENC: XOP, MAP: XOP9, OPC: 0x95] LENGTH: 9 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP IS_RELATIVE ACCEPTS_SEGMENT OPTIMIZED: 8F 69 68 95 25 5F 5C 16 C9 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm12 @@ -24,19 +24,23 @@ 2 REGISTER EXPLICIT R NDSNDD 128 8 16 UINT xmm2 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshlw %xmm2, 0xFFFFFFFFC9165C68, %xmm12 RELATIVE: vpshlw %xmm2, -0x36E9A3A1(%rip), %xmm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshlw xmm12, xmmword ptr ds:[0xFFFFFFFFC9165C68], xmm2 RELATIVE: vpshlw xmm12, xmmword ptr ds:[rip-0x36E9A3A1], xmm2 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshlw xmm12, xmmword ptr ds:[$-36E9A398h], xmm2 + RELATIVE: vpshlw xmm12, xmmword ptr ds:[$-36E9A398h], xmm2 + +== [ SEGMENTS ] ========================================================================================== 8F 09 68 95 25 5F 5C 16 C9 : : : :..DISP : : :..MODRM diff --git a/tests/cases/xop_016.out b/tests/cases/xop_016.out index 68adf66d..c7f63e07 100644 --- a/tests/cases/xop_016.out +++ b/tests/cases/xop_016.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vprotw [ENC: XOP, MAP: XOP9, OPC: 0x91] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F E9 F8 91 26 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm4 @@ -24,19 +24,23 @@ DISP = 0x0000000000000000 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vprotw (%rsi), %xmm0, %xmm4 RELATIVE: vprotw (%rsi), %xmm0, %xmm4 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vprotw xmm4, xmm0, xmmword ptr ds:[rsi] RELATIVE: vprotw xmm4, xmm0, xmmword ptr ds:[rsi] -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vprotw xmm4, xmm0, xmmword ptr ds:[rsi] + RELATIVE: vprotw xmm4, xmm0, xmmword ptr ds:[rsi] + +== [ SEGMENTS ] ========================================================================================== 8F A9 F8 91 26 : : :..MODRM : :..OPCODE diff --git a/tests/cases/xop_017.out b/tests/cases/xop_017.out index 42966c5a..4d31cc54 100644 --- a/tests/cases/xop_017.out +++ b/tests/cases/xop_017.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomd [ENC: XOP, MAP: XOP8, OPC: 0xCE] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F C8 40 CE 31 13 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 INT xmm6 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x0000000000000013 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomd $0x13, (%r9), %xmm7, %xmm6 RELATIVE: vpcomd $0x13, (%r9), %xmm7, %xmm6 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomd xmm6, xmm7, xmmword ptr ds:[r9], 0x13 RELATIVE: vpcomd xmm6, xmm7, xmmword ptr ds:[r9], 0x13 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomd xmm6, xmm7, xmmword ptr ds:[r9], 13h + RELATIVE: vpcomd xmm6, xmm7, xmmword ptr ds:[r9], 13h + +== [ SEGMENTS ] ========================================================================================== 8F C8 40 CE 31 13 : : : :..IMM : : :..MODRM diff --git a/tests/cases/xop_018.out b/tests/cases/xop_018.out index 2bd77558..82186ce1 100644 --- a/tests/cases/xop_018.out +++ b/tests/cases/xop_018.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomuw [ENC: XOP, MAP: XOP8, OPC: 0xED] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 48 30 ED 09 EC -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 UINT xmm9 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000EC -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomuw $0xEC, (%r9), %xmm9, %xmm9 RELATIVE: vpcomuw $0xEC, (%r9), %xmm9, %xmm9 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomuw xmm9, xmm9, xmmword ptr ds:[r9], 0xEC RELATIVE: vpcomuw xmm9, xmm9, xmmword ptr ds:[r9], 0xEC -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomuw xmm9, xmm9, xmmword ptr ds:[r9], 0ECh + RELATIVE: vpcomuw xmm9, xmm9, xmmword ptr ds:[r9], 0ECh + +== [ SEGMENTS ] ========================================================================================== 8F 08 30 ED 09 EC : : : :..IMM : : :..MODRM diff --git a/tests/cases/xop_019.out b/tests/cases/xop_019.out index ce2e7f75..c124c45f 100644 --- a/tests/cases/xop_019.out +++ b/tests/cases/xop_019.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vprotd [ENC: XOP, MAP: XOP9, OPC: 0x92] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP OPTIMIZED: 8F 69 38 92 E1 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 UINT xmm12 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R NDSNDD 128 4 32 UINT xmm8 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vprotd %xmm8, %xmm1, %xmm12 RELATIVE: vprotd %xmm8, %xmm1, %xmm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vprotd xmm12, xmm1, xmm8 RELATIVE: vprotd xmm12, xmm1, xmm8 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vprotd xmm12, xmm1, xmm8 + RELATIVE: vprotd xmm12, xmm1, xmm8 + +== [ SEGMENTS ] ========================================================================================== 8F 29 38 92 E1 : : :..MODRM : :..OPCODE diff --git a/tests/cases/xop_020.out b/tests/cases/xop_020.out index f662de4b..fd463f02 100644 --- a/tests/cases/xop_020.out +++ b/tests/cases/xop_020.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmacssdqh [ENC: XOP, MAP: XOP8, OPC: 0x8F] LENGTH: 6 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F E8 30 8F 26 E0 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 INT xmm4 @@ -25,19 +25,23 @@ 3 REGISTER EXPLICIT R IS4 128 2 64 INT xmm14 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmacssdqh %xmm14, (%rsi), %xmm9, %xmm4 RELATIVE: vpmacssdqh %xmm14, (%rsi), %xmm9, %xmm4 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmacssdqh xmm4, xmm9, xmmword ptr ds:[rsi], xmm14 RELATIVE: vpmacssdqh xmm4, xmm9, xmmword ptr ds:[rsi], xmm14 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmacssdqh xmm4, xmm9, xmmword ptr ds:[rsi], xmm14 + RELATIVE: vpmacssdqh xmm4, xmm9, xmmword ptr ds:[rsi], xmm14 + +== [ SEGMENTS ] ========================================================================================== 8F E8 30 8F 26 ED : : : :..IMM : : :..MODRM diff --git a/tests/cases/xop_021.out b/tests/cases/xop_021.out index 28656b30..2f4c38f3 100644 --- a/tests/cases/xop_021.out +++ b/tests/cases/xop_021.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomud [ENC: XOP, MAP: XOP8, OPC: 0xEE] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 68 00 EE B2 F0 06 01 49 FA -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 UINT xmm14 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000FA -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomud $0xFA, 0x490106F0(%rdx), %xmm15, %xmm14 RELATIVE: vpcomud $0xFA, 0x490106F0(%rdx), %xmm15, %xmm14 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomud xmm14, xmm15, xmmword ptr ds:[rdx+0x490106F0], 0xFA RELATIVE: vpcomud xmm14, xmm15, xmmword ptr ds:[rdx+0x490106F0], 0xFA -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomud xmm14, xmm15, xmmword ptr ds:[rdx+490106F0h], 0FAh + RELATIVE: vpcomud xmm14, xmm15, xmmword ptr ds:[rdx+490106F0h], 0FAh + +== [ SEGMENTS ] ========================================================================================== 8F 28 00 EE B2 F0 06 01 49 FA : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_022.out b/tests/cases/xop_022.out index 0817a6d8..afe69c2f 100644 --- a/tests/cases/xop_022.out +++ b/tests/cases/xop_022.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpshaw [ENC: XOP, MAP: XOP9, OPC: 0x99] LENGTH: 5 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP OPTIMIZED: 8F 49 00 99 E6 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 8 16 INT xmm12 @@ -19,19 +19,23 @@ 2 REGISTER EXPLICIT R MODRM_RM 128 8 16 INT xmm15 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpshaw %xmm15, %xmm14, %xmm12 RELATIVE: vpshaw %xmm15, %xmm14, %xmm12 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpshaw xmm12, xmm14, xmm15 RELATIVE: vpshaw xmm12, xmm14, xmm15 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpshaw xmm12, xmm14, xmm15 + RELATIVE: vpshaw xmm12, xmm14, xmm15 + +== [ SEGMENTS ] ========================================================================================== 8F 49 88 99 E7 : : :..MODRM : :..OPCODE diff --git a/tests/cases/xop_023.out b/tests/cases/xop_023.out index c308dd02..22201466 100644 --- a/tests/cases/xop_023.out +++ b/tests/cases/xop_023.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpcomud [ENC: XOP, MAP: XOP8, OPC: 0xEE] LENGTH: 10 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F C8 70 EE BE A1 6E 55 A6 D3 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 4 32 UINT xmm7 @@ -25,19 +25,23 @@ 3 IMMEDIATE EXPLICIT R UIMM8 8 1 8 UINT [U A 8] 0x00000000000000D3 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpcomud $0xD3, -0x59AA915F(%r14), %xmm1, %xmm7 RELATIVE: vpcomud $0xD3, -0x59AA915F(%r14), %xmm1, %xmm7 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpcomud xmm7, xmm1, xmmword ptr ds:[r14-0x59AA915F], 0xD3 RELATIVE: vpcomud xmm7, xmm1, xmmword ptr ds:[r14-0x59AA915F], 0xD3 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpcomud xmm7, xmm1, xmmword ptr ds:[r14-59AA915Fh], 0D3h + RELATIVE: vpcomud xmm7, xmm1, xmmword ptr ds:[r14-59AA915Fh], 0D3h + +== [ SEGMENTS ] ========================================================================================== 8F 88 70 EE BE A1 6E 55 A6 D3 : : : : :..IMM : : : :..DISP diff --git a/tests/cases/xop_024.out b/tests/cases/xop_024.out index 033ebc86..d176d57f 100644 --- a/tests/cases/xop_024.out +++ b/tests/cases/xop_024.out @@ -1,4 +1,4 @@ -== [ BASIC ] ============================================================================================ +== [ BASIC ] ========================================================================================== MNEMONIC: vpmacssdqh [ENC: XOP, MAP: XOP8, OPC: 0x8F] LENGTH: 7 SSZ: 64 @@ -11,7 +11,7 @@ ATTRIBUTES: HAS_MODRM HAS_SIB HAS_XOP ACCEPTS_SEGMENT OPTIMIZED: 8F 68 30 8F 3C 09 90 -== [ OPERANDS ] ============================================================================================ +== [ OPERANDS ] ========================================================================================== ## TYPE VISIBILITY ACTION ENCODING SIZE NELEM ELEMSZ ELEMTYPE VALUE -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- 0 REGISTER EXPLICIT W MODRM_REG 128 2 64 INT xmm15 @@ -25,19 +25,23 @@ 3 REGISTER EXPLICIT R IS4 128 2 64 INT xmm9 -- --------- ---------- ------ ------------ ---- ----- ------ -------- --------------------------- -== [ AVX ] ============================================================================================ +== [ AVX ] ========================================================================================== VECTORLEN: 128 BROADCAST: NONE -== [ ATT ] ============================================================================================ +== [ ATT ] ========================================================================================== ABSOLUTE: vpmacssdqh %xmm9, (%rcx,%rcx,1), %xmm9, %xmm15 RELATIVE: vpmacssdqh %xmm9, (%rcx,%rcx,1), %xmm9, %xmm15 -== [ INTEL ] ============================================================================================ +== [ INTEL ] ========================================================================================== ABSOLUTE: vpmacssdqh xmm15, xmm9, xmmword ptr ds:[rcx+rcx*1], xmm9 RELATIVE: vpmacssdqh xmm15, xmm9, xmmword ptr ds:[rcx+rcx*1], xmm9 -== [ SEGMENTS ] ============================================================================================ +== [ INTEL_MASM ] ========================================================================================== + ABSOLUTE: vpmacssdqh xmm15, xmm9, xmmword ptr ds:[rcx+rcx*1], xmm9 + RELATIVE: vpmacssdqh xmm15, xmm9, xmmword ptr ds:[rcx+rcx*1], xmm9 + +== [ SEGMENTS ] ========================================================================================== 8F 68 30 8F 3C 09 98 : : : : :..IMM : : : :..SIB diff --git a/tools/ZydisInfo.c b/tools/ZydisInfo.c index 12dffafc..92af187f 100644 --- a/tools/ZydisInfo.c +++ b/tools/ZydisInfo.c @@ -115,8 +115,8 @@ static const char* GetAccessedFlagActionString(const ZydisAccessedFlags* accesse */ static void PrintSectionHeader(const char* name) { - ZYAN_ASSERT(ZYAN_STRLEN(name) <= 8); - ZYAN_PRINTF("%s== [ %s%8s%s ] ==============================================================" \ + ZYAN_ASSERT(ZYAN_STRLEN(name) <= 10); + ZYAN_PRINTF("%s== [ %s%10s%s ] ============================================================" \ "==============================%s\n", CVT100_OUT(COLOR_HEADER), CVT100_OUT(COLOR_HEADER_TITLE), name, CVT100_OUT(COLOR_HEADER), CVT100_OUT(COLOR_DEFAULT)); @@ -829,6 +829,18 @@ static void PrintDisassembly(const ZydisDecodedInstruction* instruction, } PrintSectionHeader("INTEL"); break; + case ZYDIS_FORMATTER_STYLE_INTEL_MASM: + if (!ZYAN_SUCCESS(status = ZydisFormatterInit(&formatter, ZYDIS_FORMATTER_STYLE_INTEL_MASM)) || + !ZYAN_SUCCESS(status = ZydisFormatterSetProperty(&formatter, + ZYDIS_FORMATTER_PROP_FORCE_SEGMENT, ZYAN_TRUE)) || + !ZYAN_SUCCESS(status = ZydisFormatterSetProperty(&formatter, + ZYDIS_FORMATTER_PROP_FORCE_SIZE, ZYAN_TRUE))) + { + PrintStatusError(status, "Failed to initialize instruction-formatter"); + exit(status); + } + PrintSectionHeader("INTEL_MASM"); + break; default: ZYAN_UNREACHABLE; } @@ -1077,6 +1089,8 @@ static void PrintInstruction(const ZydisDecoder* decoder, PrintDisassembly(instruction, operands, ZYDIS_FORMATTER_STYLE_ATT); ZYAN_PUTS(""); PrintDisassembly(instruction, operands, ZYDIS_FORMATTER_STYLE_INTEL); + ZYAN_PUTS(""); + PrintDisassembly(instruction, operands, ZYDIS_FORMATTER_STYLE_INTEL_MASM); } /* ============================================================================================== */