This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 045/236] define_bypass guard functions take a pair of rtx_insn


On Wed, 2014-08-13 at 12:07 -0600, Jeff Law wrote:
> On 08/06/14 11:20, David Malcolm wrote:
> > (define_bypass) clauses in .md files can specify the name of a guard
> > function as their final operand.  Currently these functions are called
> > with a pair of rtx.  This patch strengthens insn-automata.c so that such
> > guard functions are passed a pair of rtx_insn *, allowing these guard
> > functions to be similarly strengthened in the per-target phase of this
> > patch kit.
> >
> > gcc/
> > 	* genautomata.c (output_internal_insn_latency_func): When writing
> > 	the function "internal_insn_latency" to insn-automata.c,
> > 	strengthen params "insn" and "insn2" from rtx to rtx_insn *, thus
> > 	allowing the optional guard function of (define_bypass) clauses to
> > 	expect a pair of rtx_insn *, rather than a pair of rtx.
> > 	(output_insn_latency_func): When writing the function
> > 	"insn_latency", add an "uncast_" prefix to params "insn" and
> > 	"insn2", reintroducing "insn" and "insn2" as rtx_insn * locals
> > 	using checked casts from the params, thus enabling the above
> > 	change to the generated "internal_insn_latency" function.
> OK.
Thanks; committed to trunk as r214273, with the trivial fixup of
as_a_nullable to safe_as_a.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]