<div dir="auto"><div><div class="gmail_quote"><div dir="ltr">Hi All,<br></div>
<br>
For the below C code<br>
<br>
Test.u32pt = u32PtLen;<br>
Test.u32pn = u32PtCnt;<br>
Test.pstpk = pstPt;<br>
Test.psteo = pstEgrInfo;<br>
Test.e = 1;<br>
Test.pstfi = pstFi ;<br>
<br>
return foo(&Test, AclAction);<br>
<br>
where "Test" is the struct type .<br>
<br>
the generated code for mips (with -fno-delayed-branch) :<br>
<br>
Test.u32pt = u32PtLen;<br>
370: afb50084 sw s5,132(sp)<br>
Test.u32pn = u32PtCnt;<br>
374: afb60080 sw s6,128(sp)<br>
Test.pstpk = pstPt;<br>
Test.psteo = pstEgrInfo;<br>
Test.e = 1;<br>
Test.pstfi = pstFi ;<br>
<br>
return foo(&Test, AclAction)<br>
378: 0c000000 jal 0 <FSVC_Egr_L4ACLfoo><br>
37c: 00000000 nop<br>
<br>
with -fdelayed-branch(gcc 4.8.1) the generated code is<br>
<br>
Test.u32pt = u32PtLen;<br>
370: afb50084 sw s5,132(sp)<br>
Test.pstpk = pstPt;<br>
Test.psteo = pstEgrInfo;<br>
Test.e = 1;<br>
Test.pstfi = pstFi ;<br>
<br>
return foo(&Test, AclAction)<br>
378: 0c000000 jal 0 <FSVC_Egr_L4ACLfoo><br>
Test.u32pn = u32PtCnt;<br>
374: afb60080 sw s6,128(sp)<br>
<br>
can filler place the "sw s6,128(sp)" in the delay slot ,is<br>
that legal and if not why it so ?<br>
<br>
Thank you<br>
~Umesh<br>
</div></div></div>