Commit 2bd4bfee by Ganesh Gopalasubramanian Committed by Ganesh Gopalasubramanian

Remove vpmacsdql instruction from multiplication

From-SVN: r211702
parent debd8f30
2014-06-16 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com>
* config/i386/i386.c (ix86_expand_sse2_mulvxdi3): Issue
instructions "vpmuludq" and "vpaddq" instead of "vpmacsdql" for
handling 32-bit multiplication.
2014-06-16 Chung-Lin Tang <cltang@codesourcery.com>
PR middle-end/61430
......
......@@ -45279,8 +45279,13 @@ ix86_expand_sse2_mulvxdi3 (rtx op0, rtx op1, rtx op2)
/* t4: ((B*E)+(A*F))<<32, ((D*G)+(C*H))<<32 */
emit_insn (gen_ashlv2di3 (t4, t3, GEN_INT (32)));
/* op0: (((B*E)+(A*F))<<32)+(B*F), (((D*G)+(C*H))<<32)+(D*H) */
emit_insn (gen_xop_pmacsdql (op0, op1, op2, t4));
/* Multiply lower parts and add all */
t5 = gen_reg_rtx (V2DImode);
emit_insn (gen_vec_widen_umult_even_v4si (t5,
gen_lowpart (V4SImode, op1),
gen_lowpart (V4SImode, op2)));
op0 = expand_binop (mode, add_optab, t5, t4, op0, 1, OPTAB_DIRECT);
}
else
{
2014-06-16 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com>
* gcc.target/i386/xop-imul64-vector.c: Remove the check for
vpmacsdql instruction.
2014-06-16 Yury Gribov <y.gribov@samsung.com>
* c-c++-common/asan/instrument-with-calls-1.c: New test.
......
......@@ -33,4 +33,3 @@ int main ()
/* { dg-final { scan-assembler "vpmulld" } } */
/* { dg-final { scan-assembler "vphadddq" } } */
/* { dg-final { scan-assembler "vpmacsdql" } } */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment