On the current tip of binutils-2_26-branch, gas is emitting an incorrect warning 'Warning: index and destination registers should be distinct' when the two zmm registers are separated by 16. For exmaple, zmm19 and zmm3 in 'vgatherqpd (%rax,%zmm19,8), %zmm3 {%k1}'. This warning was added in commit 8444f82a1d163171deccfcf014cc31adb81f703b. The problem appears to be that the register_number() function in gas/config/tc-i386.c doesn't check for RegVRex flag like it does for the RegRex flag, leading to aliasing issues between the low and high 16 registers.
Steven Vormwald _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils