On Mon, Jun 29, 2009 at 7:07 PM, Gabriel Michael Black <
gbl...@eecs.umich.edu> wrote:

> Quoting Steve Reinhardt <ste...@gmail.com>:
>
> > On Mon, Jun 29, 2009 at 6:02 PM, Gabriel Michael Black <
> > gbl...@eecs.umich.edu> wrote:
> >
> >> That is true, but I think what he's talking about is when the CPSR
> >> doesn't actually matter at all since the condition is "always". I
> >> don't know what the best way to do that would be, but one possibility
> >> would be to decode each instruction as two variants, one that's
> >> conditional and one that isn't. At this point we'd have four variants
> >> of a number of instructions (conditional X branch), but since
> >> unconditional is probably the most common form and we'd save the
> >> condition check in those versions it's likely worth it from a
> >> performance perspective too.
> >>
> >
> > I've only been half-following this thread, but I believe Gabe is right:
> you
> > need StaticInst objects that claim to be different things
> > (branch/non-branch, conditional/unconditional, dependent/independent of
> > flags, etc.) based on the details of the encoding.  Whether you do this
> by
> > decoding to different classes (like most ISAs with normal branches do) or
> > just having more-complex-than-usual methods on a single class (as I think
> > Jack has already suggested) is just a tradeoff of decoder complexity vs.
> > runtime performance, as far as I can tell.
> >
> > Steve
> >
>
> In this case it's also a question of where the decision is made. If
> it's in the decoder then it's isolated to that ISA, and if not it's in
> the CPU(s) for all ISAs. That wouldn't be horrible, but it would be
> really nice to avoid.


Yea, I thought we'd agreed to push as much as possible into the decoder.


> Have you thought of any way to get the isa_parser to cooperate as far
> as the operand reading/writing code?
>

Not really... haven't put much time into it.  I know the issue is that the
simplistic regex method of identifying sources and dests will not handle
conditional updates; is there a way we can override that in these cases?

Steve
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to