Hello sir,
Hello sir,
I am trying to identify the instruction which depends on load instruction .I
am running out of order CMP simulation. here Instruction have to wait until
it have the value ready. please tell me where does it store the dependence
information for the instruction.
I have checked the ROB contents and LSQ contents. It does not have dependency
information.
Rob contents:
4540 <microArch.cpp:325> {633}- theCPUID=1
4541 <cycle.cpp:71> {633}- Cycle begine
4542 <cycle.cpp:76> {633}- Bala_ROBcontent#11[01] @v:001038a28 |d459e0a8| ldx
[%g7 + 168], %o2 {executed}
4543 <cycle.cpp:76> {633}- Bala_ROBcontent#12[01] @v:001038a2c |d402a0f4| lduw
[%o2 + 244], %o2
4544 <cycle.cpp:76> {633}- Bala_ROBcontent#13[01] @v:001038a30 |80a28008| cmp
%o2, %o0
4545 <cycle.cpp:76> {633}- Bala_ROBcontent#14[01] @v:001038a34 |9564d008| movl
%xcc,%o0,%o2
4546 <cycle.cpp:76> {633}- Bala_ROBcontent#15[01] @v:001038a38 |9190000a| wrpr
%g0, %o2, %pil
4547 <cycle.cpp:76> {633}- Bala_ROBcontent#16[01] @v:001038a3c |81c3e008| jmpl
[%o7 + 8], %g0 {completed}
4548 <cycle.cpp:76> {633}- Bala_ROBcontent#17[01] @v:001038a40 |90100009| mov
%o1, %o0 {completed}
4549 <cycle.cpp:76> {633}- Bala_ROBcontent#33[01] @v:001048868 |a0100011| mov
%l1, %l0 {completed}
4550 <cycle.cpp:76> {633}- Bala_ROBcontent#34[01] @v:00104886c |80a46000| cmp
%l1, 0 {completed}
4551 <cycle.cpp:76> {633}- Bala_ROBcontent#35[01] @v:001048870 |12680006|
bne,pt %xcc, 0x1048888 {completed}
4552 <cycle.cpp:76> {633}- Bala_ROBcontent#36[01] @v:001048874 |01000000| nop
{completed}
4553 <cycle.cpp:76> {633}- Bala_ROBcontent#37[01] @v:001048878 |81c7e008| jmpl
[%i7 + 8], %g0 {completed}
4554 <cycle.cpp:76> {633}- Bala_ROBcontent#38[01] @v:00104887c |91e82000|
restore %g0, 0, %o0 {completed}
LSQ contents:
43365 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(IssuedToMemory)[58] Load(8) v:30001364070 p:00562c070 {#385[01]
@v:0010487c8 |c85e2070| ldx [%i0 + 112], %g4 {executed}}
43366 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[59] Load(1) v:ffffffffffffffff p:ffffffffffffffff
{#391[01] @v:0010487e0 |c40920d1| ldub [%g4 + 209], %g2 }
43367 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[60] Load(8) v:ffffffffffffffff p:ffffffffffffffff
{#394[01] @v:0010487ec |c8592070| ldx [%g4 + 112], %g4 }
43368 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[61] Load(2) v:ffffffffffffffff p:ffffffffffffffff
{#395[01] @v:0010487f0 |c45120d2| ldsh [%g4 + 210], %g2 }
43369 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[62] Load(8) v:ffffffffffffffff p:ffffffffffffffff
{#398[01] @v:0010487fc |c8592070| ldx [%g4 + 112], %g4 }
43370 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(IssuedToMemory)[63] Load(8) v:30001364040 p:00562c040 {#399[01]
@v:001048800 |c65e2040| ldx [%i0 + 64], %g3 {executed}}
43371 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[64] Load(2) v:ffffffffffffffff p:ffffffffffffffff
{#400[01] @v:001048804 |ca5120b2| ldsh [%g4 + 178], %g5 }
43372 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[65] Load(8) v:ffffffffffffffff p:ffffffffffffffff
{#401[01] @v:001048808 |c4592040| ldx [%g4 + 64], %g2 }
43373 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[66] Load(8) v:ffffffffffffffff p:ffffffffffffffff
{#406[01] @v:00104881c |c8592070| ldx [%g4 + 112], %g4 }
43374 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[67] Load(8) v:ffffffffffffffff p:ffffffffffffffff
{#410[01] @v:00104882c |c8592070| ldx [%g4 + 112], %g4 }
43375 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[69] Load(1) v:ffffffffffffffff p:ffffffffffffffff
{#434[01] @v:001048850 |c40920d1| ldub [%g4 + 209], %g2 }
43376 <memunit.cpp:99> {2540}- Bala (nov 26)_LSQ
content:LSQ(AwaitingAddress)[70] Load(8) v:ffffffffffffffff p:ffffffffffffffff
{#442[01] @v:001038a28 |d459e0a8| ldx [%g7 + 168], %o2 }
Thanking you
Bala
LSU