Commit 7c080ade by Jan Hubicka Committed by Jan Hubicka

re PR target/81616 (Update -mtune=generic for the current Intel and AMD processors)

	PR target/81616
	* x86-tnue-costs.h (generic_cost): Revise for modern CPUs
	* gcc.target/i386/l_fma_double_1.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_double_2.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_double_3.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_double_4.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_double_5.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_double_6.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_float_1.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_float_2.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_float_3.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_float_4.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_float_5.c: Update count of fma instructions.
	* gcc.target/i386/l_fma_float_6.c: Update count of fma instructions.

From-SVN: r255268
parent a52206ae
2017-11-30 Jan Hubicka <hubicka@ucw.cz>
PR target/81616
* x86-tnue-costs.h (generic_cost): Revise for modern CPUs
2017-11-30 Richard Biener <rguenther@suse.de> 2017-11-30 Richard Biener <rguenther@suse.de>
PR tree-optimization/83202 PR tree-optimization/83202
...@@ -2243,11 +2243,11 @@ struct processor_costs generic_cost = { ...@@ -2243,11 +2243,11 @@ struct processor_costs generic_cost = {
COSTS_N_INSNS (4), /* HI */ COSTS_N_INSNS (4), /* HI */
COSTS_N_INSNS (3), /* SI */ COSTS_N_INSNS (3), /* SI */
COSTS_N_INSNS (4), /* DI */ COSTS_N_INSNS (4), /* DI */
COSTS_N_INSNS (2)}, /* other */ COSTS_N_INSNS (4)}, /* other */
0, /* cost of multiply per each bit set */ 0, /* cost of multiply per each bit set */
{COSTS_N_INSNS (18), /* cost of a divide/mod for QI */ {COSTS_N_INSNS (16), /* cost of a divide/mod for QI */
COSTS_N_INSNS (26), /* HI */ COSTS_N_INSNS (22), /* HI */
COSTS_N_INSNS (42), /* SI */ COSTS_N_INSNS (30), /* SI */
COSTS_N_INSNS (74), /* DI */ COSTS_N_INSNS (74), /* DI */
COSTS_N_INSNS (74)}, /* other */ COSTS_N_INSNS (74)}, /* other */
COSTS_N_INSNS (1), /* cost of movsx */ COSTS_N_INSNS (1), /* cost of movsx */
...@@ -2275,13 +2275,13 @@ struct processor_costs generic_cost = { ...@@ -2275,13 +2275,13 @@ struct processor_costs generic_cost = {
2, 3, 4, /* cost of moving XMM,YMM,ZMM register */ 2, 3, 4, /* cost of moving XMM,YMM,ZMM register */
{6, 6, 6, 10, 15}, /* cost of loading SSE registers {6, 6, 6, 10, 15}, /* cost of loading SSE registers
in 32,64,128,256 and 512-bit */ in 32,64,128,256 and 512-bit */
{10, 10, 10, 15, 20}, /* cost of unaligned loads. */ {6, 6, 6, 10, 15}, /* cost of unaligned loads. */
{6, 6, 6, 10, 15}, /* cost of storing SSE registers {6, 6, 6, 10, 15}, /* cost of storing SSE registers
in 32,64,128,256 and 512-bit */ in 32,64,128,256 and 512-bit */
{10, 10, 10, 15, 20}, /* cost of unaligned storess. */ {6, 6, 6, 10, 15}, /* cost of unaligned storess. */
20, 20, /* SSE->integer and integer->SSE moves */ 6, 6, /* SSE->integer and integer->SSE moves */
6, 6, /* Gather load static, per_elt. */ 18, 6, /* Gather load static, per_elt. */
6, 6, /* Gather store static, per_elt. */ 18, 6, /* Gather store static, per_elt. */
32, /* size of l1 cache. */ 32, /* size of l1 cache. */
512, /* size of l2 cache. */ 512, /* size of l2 cache. */
64, /* size of prefetch block */ 64, /* size of prefetch block */
...@@ -2290,11 +2290,11 @@ struct processor_costs generic_cost = { ...@@ -2290,11 +2290,11 @@ struct processor_costs generic_cost = {
value is increased to perhaps more appropriate value of 5. */ value is increased to perhaps more appropriate value of 5. */
3, /* Branch cost */ 3, /* Branch cost */
COSTS_N_INSNS (3), /* cost of FADD and FSUB insns. */ COSTS_N_INSNS (3), /* cost of FADD and FSUB insns. */
COSTS_N_INSNS (3), /* cost of FMUL instruction. */ COSTS_N_INSNS (5), /* cost of FMUL instruction. */
COSTS_N_INSNS (20), /* cost of FDIV instruction. */ COSTS_N_INSNS (20), /* cost of FDIV instruction. */
COSTS_N_INSNS (1), /* cost of FABS instruction. */ COSTS_N_INSNS (1), /* cost of FABS instruction. */
COSTS_N_INSNS (1), /* cost of FCHS instruction. */ COSTS_N_INSNS (1), /* cost of FCHS instruction. */
COSTS_N_INSNS (40), /* cost of FSQRT instruction. */ COSTS_N_INSNS (20), /* cost of FSQRT instruction. */
COSTS_N_INSNS (1), /* cost of cheap SSE instruction. */ COSTS_N_INSNS (1), /* cost of cheap SSE instruction. */
COSTS_N_INSNS (3), /* cost of ADDSS/SD SUBSS/SD insns. */ COSTS_N_INSNS (3), /* cost of ADDSS/SD SUBSS/SD insns. */
...@@ -2306,7 +2306,7 @@ struct processor_costs generic_cost = { ...@@ -2306,7 +2306,7 @@ struct processor_costs generic_cost = {
COSTS_N_INSNS (32), /* cost of DIVSD instruction. */ COSTS_N_INSNS (32), /* cost of DIVSD instruction. */
COSTS_N_INSNS (30), /* cost of SQRTSS instruction. */ COSTS_N_INSNS (30), /* cost of SQRTSS instruction. */
COSTS_N_INSNS (58), /* cost of SQRTSD instruction. */ COSTS_N_INSNS (58), /* cost of SQRTSD instruction. */
1, 2, 1, 1, /* reassoc int, fp, vec_int, vec_fp. */ 1, 4, 3, 3, /* reassoc int, fp, vec_int, vec_fp. */
generic_memcpy, generic_memcpy,
generic_memset, generic_memset,
COSTS_N_INSNS (3), /* cond_taken_branch_cost. */ COSTS_N_INSNS (3), /* cond_taken_branch_cost. */
......
2017-11-30 Jan Hubicka <hubicka@ucw.cz>
PR target/81616
* gcc.target/i386/l_fma_double_1.c: Update count of fma instructions.
* gcc.target/i386/l_fma_double_2.c: Update count of fma instructions.
* gcc.target/i386/l_fma_double_3.c: Update count of fma instructions.
* gcc.target/i386/l_fma_double_4.c: Update count of fma instructions.
* gcc.target/i386/l_fma_double_5.c: Update count of fma instructions.
* gcc.target/i386/l_fma_double_6.c: Update count of fma instructions.
* gcc.target/i386/l_fma_float_1.c: Update count of fma instructions.
* gcc.target/i386/l_fma_float_2.c: Update count of fma instructions.
* gcc.target/i386/l_fma_float_3.c: Update count of fma instructions.
* gcc.target/i386/l_fma_float_4.c: Update count of fma instructions.
* gcc.target/i386/l_fma_float_5.c: Update count of fma instructions.
* gcc.target/i386/l_fma_float_6.c: Update count of fma instructions.
2017-11-30 Richard Biener <rguenther@suse.de> 2017-11-30 Richard Biener <rguenther@suse.de>
PR tree-optimization/83202 PR tree-optimization/83202
......
...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double)))); ...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double))));
/* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 32 } } */
...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double)))); ...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double))));
/* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 32 } } */
...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double)))); ...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double))));
/* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 32 } } */
...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double)))); ...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double))));
/* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 32 } } */
...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double)))); ...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double))));
/* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 32 } } */
...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double)))); ...@@ -13,7 +13,7 @@ typedef double adouble __attribute__((aligned(sizeof (double))));
/* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+pd" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+sd" 32 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 56 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+sd" 32 } } */
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 64 } } */
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 64 } } */
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 64 } } */
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 64 } } */
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 64 } } */
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ps" 8 } } */
/* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfmsub\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmadd\[123\]+ss" 64 } } */
/* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 120 } } */ /* { dg-final { scan-assembler-times "vfnmsub\[123\]+ss" 64 } } */
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