This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFC] PowerPC DFA description
- From: Vladimir Makarov <vmakarov at redhat dot com>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: Daniel Egger <degger at fhm dot edu>, dalej at apple dot com, Daniel Berlin <dan at dberlin dot org>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 29 May 2002 18:50:44 -0400
- Subject: Re: [RFC] PowerPC DFA description
- References: <200205292228.SAA31672@makai.watson.ibm.com>
David Edelsohn wrote:
>
> >>>>> Daniel Egger writes:
>
> Daniel> In contrast to the 7450 which has four AlitVec units (VUI1, VUI2, VFPU
> Daniel> and VPU) the 7400 has two units only (VALU and VPU) the former of which
> Daniel> having three subunits. Since I couldn't imagine any better way to model
> Daniel> that I followed the pattern I though I found in your description by
> Daniel> adding a new automaton for the completely seperate vector unit.
>
> That is associating instruction types with function units, not
> automata. How many automata per function unit is a different question --
> at least the way Red Hat generated the initial description.
Generally speaking, one person could use structural description of the
processor (using real units present in the processor), another person
could use behavioral description (pseudo units) to achieve the same
behaviour of the pipeline hazard recognizer.
Earlier versions of genautomata.c generated code which changes states
of all automata .md file for each insn (the more automata we have in .md
file, the slower work of pipeline hazard recognizer). As I understand,
the Redhat ppc descriptions (which are 1.5 years old) reuse the units
for different processors to minimize number of automata.
The current version of genautomata generates code changing states of
only automata whose units are present in given insn reservation. I'd
recommend to use different units for each processor because the
description will be more readable and the code speed will be the same.
Vlad