The accurate cost of an pattern can get with insn_count * perf_ratio
The default value is set to 0 instead of 1, since that we will need to distinguish the default value and it is really set for an pattern. Since it is not set for most patterns yet, to use it, we will need to be sure that it's value is greater than 0. This attr will be used in `mips_insn_cost`. gcc * config/mips/mips.md (perf_ratio): New attribute. --- gcc/config/mips/mips.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index a4c6d630aeb..7db341c694c 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -312,6 +312,10 @@ (define_attr "sync_insn2" "nop,and,xor,not" ;; "11" specifies MEMMODEL_ACQUIRE. (define_attr "sync_memmodel" "" (const_int 10)) +;; Performance ratio. Add this attr to the slow INSNs. +;; Used by mips_insn_cost. +(define_attr "perf_ratio" "" (const_int 0)) + ;; Accumulator operand for madd patterns. (define_attr "accum_in" "none,0,1,2,3,4,5" (const_string "none")) -- 2.39.2