>From the PTLSim manual:

   - cc is any valid condition code flag evaluation
   - The sel uop merges the selected operand with ra in accordance with the
   standard x86 merging rules described previously
   - The 64-bit result and all flags are treated as a single value for
   selection purposes, i.e. the flags attached to the selected input are
   passed to the output
   - If one of the (ra, rb) operands is not valid (has FLAG_INV set) but
   the selected operand is valid, the result is valid. This is an exception to
   the invalid bit propagation rule only when the selected input is valid. If
   the rc operand is invalid, the result is always invalid.
   - If any of the inputs are waiting (FLAG_WAIT is set), the uop does not
   issue, even if the selected input was ready. This is a pipeline
   simplification.
   - set rd = (a),b
   - sel rd = b,0,1,c

mf is a Memory Fence
      ptlhwdef.cpp:86:  {"mf",             OPCLASS_FENCE,         opNOSIZE
}, // memory fence (extshift holds type: 01 = st, 10 = ld, 11 = ld.st)

The + means the TransOP has flags, the - means the TransOP doesn't have
flags.


On Thu, May 9, 2013 at 4:15 PM, Aziz <[email protected]> wrote:

> I still couldn't find the answer.
> These are hopefully simple questions but very important for me. Can
> anyone please help about these?
>
> On Tue, Apr 30, 2013 at 11:04 PM, Aziz <[email protected]> wrote:
> > Hello,
> >
> > What is the meaning of the micro-op sel.cc or seld.cc? I saw some lines
> in
> > the transops like:
> >
> >>> seld.e       tr2 = tr0,rsi,tr1
> >>> seld.ne      rax = rax,tr0,tr1
> >
> > I think it selects something based on the flags. But what does it select
> > among the register list ra, rb, rc, rd? And what do we mean by "select"?
> > What about the difference between sel and seld, is it for the size
> double?
> >
> > Another micro-op is mf.all. What is its meaning? A transop is like:
> >>> mf.all       tr0 = [zero,zero]
> >
> > Finally what does + or - signs signify at the end of each transop when we
> > print them?
> >
> > I saw some explanation here, but it did not answer my questions. I am
> sorry
> > if this is written somewhere else in detail, I just couldn't find.
> >
> > Best,
> > Aziz
>
> _______________________________________________
> http://www.marss86.org
> Marss86-Devel mailing list
> [email protected]
> https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel
>
_______________________________________________
http://www.marss86.org
Marss86-Devel mailing list
[email protected]
https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel

Reply via email to