Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.mips > #14

Delay slot filler. Is that legal instruction to have ??

Newsgroups comp.sys.mips
Date 2018-10-25 15:50 -0700
Message-ID <f5abeeeb-e596-4f7c-a345-d7913a1a56f6@googlegroups.com> (permalink)
Subject Delay slot filler. Is that legal instruction to have ??
From Umesh Kalappa <umesh.kalappa0@gmail.com>

Show all headers | View raw


Hi All,

For the below C code

    Test.u32pt = u32PtLen;
    Test.u32pn = u32PtCnt;
    Test.pstpk = pstPt;
    Test.psteo = pstEgrInfo;
    Test.e = 1;
    Test.pstfi = pstFi ;

    return foo(&Test, AclAction);

    where "Test" is the struct type .

  the generated code for mips (with -fno-delayed-branch) :

   Test.u32pt = u32PtLen;
   370:    afb50084         sw      s5,132(sp)
   Test.u32pn = u32PtCnt;
   374:    afb60080         sw      s6,128(sp)
   Test.pstpk = pstPt;
   Test.psteo = pstEgrInfo;
   Test.e = 1;
   Test.pstfi = pstFi ;

   return foo(&Test, AclAction)
   378:    0c000000         jal     0 <FSVC_Egr_L4ACLfoo>
   37c:    00000000         nop

   with -fdelayed-branch(gcc 4.8.1) the generated code is

     Test.u32pt = u32PtLen;
      370:    afb50084         sw      s5,132(sp)
     Test.pstpk = pstPt;
     Test.psteo = pstEgrInfo;
     Test.e = 1;
     Test.pstfi = pstFi ;

      return foo(&Test, AclAction)
      378:    0c000000         jal     0 <FSVC_Egr_L4ACLfoo>
      Test.u32pn = u32PtCnt;
      374:    afb60080         sw      s6,128(sp)

  can filler place the "sw      s6,128(sp)"  in the delay slot ,is
that legal and if not why it so  ?

  Thank you
  ~Umesh

Back to comp.sys.mips | Previous | Next | Find similar


Thread

Delay slot filler. Is that legal instruction to have ?? Umesh Kalappa <umesh.kalappa0@gmail.com> - 2018-10-25 15:50 -0700

csiph-web