> we need to generate
>
> vxorp[ds] %xmmN, %xmmN, %xmmN
> ...
> vcvtss2sd f(%rip), %xmmN, %xmmX
> ...
> vcvtsi2ss i(%rip), %xmmN, %xmmY
>
> to avoid partial XMM register stall. This patch adds a pass to generate
> a single
>
> vxorps
On Tue, Aug 28, 2018 at 11:04 AM, H.J. Lu wrote:
> With -mavx, for
>
> [hjl@gnu-cfl-1 skx-2]$ cat foo.i
> extern float f;
> extern double d;
> extern int i;
>
> void
> foo (void)
> {
> d = f;
> f = i;
> }
>
> we need to generate
>
> vxorp[ds] %xmmN, %xmmN, %xmmN
> ...
>