https://sourceware.org/bugzilla/show_bug.cgi?id=18737
Bug ID: 18737 Summary: Wrong memory operand size for x86 GATHER/SCATTER instructions Product: binutils Version: 2.24 Status: NEW Severity: normal Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: m at rolle dot name Target Milestone: --- gather/scatter instructions require a memory size to match the vector register size. However, the memory size is actually the element size, according to Intel doc. as will accept memory operand without a size specifier. vgatherqps ymm30{k1},DWORD PTR [rcx+zmm31*4+0x400] # Error: operand size mismatch for `vgatherqps' vgatherqps ymm30{k1},YMMWORD PTR [rcx+zmm31*4+0x400] vgatherqps ymm30{k1},[rcx+zmm31*4+0x400] vscatterqps DWORD PTR [rcx+zmm31*4+0x400]{k1},ymm30 # Error: operand size mismatch for `vscatterqps' vscatterqps YMMWORD PTR [rcx+zmm31*4+0x400]{k1},ymm30 vscatterqps [rcx+zmm31*4+0x400]{k1},ymm30 If possible, why don't you accept both the vector size and the element size. Otherwise, please change the vector size to the element size. Does not produce incorrect code, but it is serious because it will not assemble a valid instruction according to the Intel doc. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils