That code ends up in src/arch/arm/isa/insts/mult.isa which ultimately calls 
buildMultInst() and that function emits two versions of Mul one that sets the 
condition codes and one that does not. The prior has Cc appended to the name.

Ali

On Jun 24, 2013, at 4:13 PM, Jianghao <guojh...@gmail.com> wrote:

> I have a questions about ARM ISA implementation.
> From the document, instruction "format" is basically a Python function to 
> generate up to four pieces of C++ code.
> If it's nested format structure like following code, which one will be used, 
> DataOp, ArmMultAndMultAcc or both for the multiply instruction?
> 
> decode COND_CODE {
> 0xF: ArmUnconditional::armUnconditional();
> default: decode ENCODING {
> format DataOp {
>     0x0: decode SEVEN_AND_FOUR {
>         1: decode MISC_OPCODE {
>             0x9: decode PREPOST {
>                 0: ArmMultAndMultAcc::armMultAndMultAcc();
>                 1: ArmSyncMem::armSyncMem();
>             }
>             0xb, 0xd, 0xf: AddrMode3::addrMode3();
>         }
> 
> When I take a look of ArmMultAndMultAcc format code, there are return 
> statements like following 
> "return new MulCc(machInst, rd, rm, rn);"
> What's the meaning of this? I even cannot grep any definition of MulCc in src 
> directory.
> 
> Thanks
> _______________________________________________
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to