On 16/01/15 15:06, Maxim Kuvyrkov wrote: > @@ -1874,7 +1889,8 @@ const struct tune_params arm_cortex_a15_tune = > true, true, /* Prefer 32-bit encodings. > */ > true, /* Prefer Neon for > stringops. */ > 8, /* Maximum insns to inline > memset. */ > - ARM_FUSE_NOTHING /* Fuseable pairs of > instructions. */ > + ARM_FUSE_NOTHING, /* Fuseable pairs of > instructions. */ > + max_insn_queue_index + 1 /* Sched L2 autopref depth. */ > };
Hmm, two issues here: 1) This requires a static constructor for the tuning table entry (since the value of max_insn_queue_index has to be looked up at run time. 2) Doesn't this mean that the depth of searching will depend on properties of the automata rather than some machine specific values (so that potentially adding or removing unrelated scheduler rules could change the behaviour of the compiler)? In general, how should someone tuning the compiler for this parameter select a value that isn't one of (-1, m_i_q_d+1)? R.