On 05/23/2018 04:08 AM, Uros Bizjak wrote:
> Hello!
> 
> With current insn mnemonic and ATT assembler dialect, there is no way
> for the assembler to distinguish between DImode and SImode instruction
> when memory input operand is used. The dump for 32bit memory reads as:
> 
>    0:   62 f1 7e 08 7b 05 00    vcvtusi2ss 0x0(%rip),%xmm0,%xmm0
>    7:   00 00 00
>   10:   62 f1 7f 08 7b 05 00    vcvtusi2sd 0x0(%rip),%xmm0,%xmm0
>   17:   00 00 00
> 
> And for 64bit access:
> 
>   20:   62 f1 fe 08 7b 05 00    vcvtusi2ss 0x0(%rip),%xmm0,%xmm0
>   27:   00 00 00
>   30:   62 f1 ff 08 7b 05 00    vcvtusi2sd 0x0(%rip),%xmm0,%xmm0
>   37:   00 00 00
> 
>  (Note the difference in the 3rd byte. On a related note, binutils
> should also be fixed to dump vcvtsi2sdq in the 64bit case to avoid
> ambiguity)
> 
> We should use "q" suffix with the ATT dialect in the Dimode insn mnemonic.
> 
> 2018-05-23  Uros Bizjak  <ubiz...@gmail.com>
> 
>     * config/i386/sse.md (cvtusi2<ssescalarmodesuffix>64<round_name>):
>     Add {q} suffix to insn mnemonic.
> 
>     testsuite/Changelog:
> 
> 2018-05-23  Uros Bizjak  <ubiz...@gmail.com>
> 
>     * gcc.target/i386/avx512f-vcvtusi2sd64-1.c: Update scan string.
>     * gcc.target/i386/avx512f-vcvtusi2ss64-1.c: Ditto.
> 
> Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.
> 
> OK for mainline and backports?
OK.
jeff

Reply via email to