Hi,
On tiistai 19 helmikuu 2013, laurent.sallafranque@xxxxxxx wrote:
Eero, can you tell me which instructions return 0 cycles ?
I know I didn't finish the job for Fpu and MMU instructions, but if
the instructions you speak about are in the 68030 CPU, I'd be
interrested.
This is from TOS v4.x bootup:
$e3ddc4 : 3047 movea.w d7,a0
inf% (3, 0, 0)
$e4929c : c042 and.w d2,d0
inf% (9, 0, 0)
$e4929c : c042 and.w d2,d0
inf% (10, 0, 0)
$e4929c : c042 and.w d2,d0
inf% (11, 0, 0)
$e4929c : c042 and.w d2,d0
inf% (12, 0, 0)
$e490ec : 7200 moveq #0,d1
inf% (1, 0, 0)
$e490f4 : 7400 moveq #0,d2
inf% (1, 0, 0)
$e25bf4 : 7218 moveq #$18,d1
inf% (3, 0, 0)
$e25c20 : c041 and.w d1,d0
inf% (3, 0, 0)
$e1fb30 : 200d move.l a5,d0
inf% (5, 0, 0)
$e1fa54 : 200c move.l a4,d0
inf% (5, 0, 0)
$e1fb30 : 200d move.l a5,d0
inf% (6, 0, 0)
$e25bf4 : 7218 moveq #$18,d1
inf% (4, 0, 0)
$e25c20 : c041 and.w d1,d0
inf% (4, 0, 0)
$e1fa54 : 200c move.l a4,d0
inf% (6, 0, 0)
This from latest EmuTOS CVS snapshot bootup on Falcon mode:
$e0b912 : 5242 addq.w #1,d2
0.00% (6, 0, 0)
$e0dd1c : b042 cmp.w d2,d0
0.00% (1, 0, 0)
$e0dc1c : 3801 move.w d1,d4
0.00% (1, 0, 0)
$e0dc44 : 3608 move.w a0,d3
0.00% (1, 0, 0)
$e05854 : c001 and.b d1,d0
0.00% (1, 0, 0)
$e0589e : 8001 or.b d1,d0
0.00% (1, 0, 0)
$e05f64 : d082 add.l d2,d0
0.00% (1, 0, 0)
$e05f62 : 2002 move.l d2,d0
0.00% (2, 2, 1)
...
$e0dd1c : b042 cmp.w d2,d0
0.00% (56, 28, 0)
$e139d4 : 2245 movea.l d5,a1
0.00% (1, 0, 0)
$e136e4 : 3800 move.w d0,d4
0.00% (1, 0, 0)
$e13a48 : 4443 neg.w d3
0.00% (75, 0, 0)
I.e. it's the basic instructions which would seem to have problems
with cycles counter:
move, neg. or, and, add, cmp...
The interesting thing is that some of them (at least add, move, cmp)
have cycles sometimes.
As debugger is called right before DSP and DSP uses the same call to
get cycles, CPU vs. DSP ratio is most likely pretty bogus because of
this. :-/
If you want to see the same output, update to latest Hatari version,
change DEBUG in start of src/debug/profile.c to 1 and do:
echo "profiling on" > profile.ini
hatari --parse profile.ini --machine falcon --tos tos404.img
- Eero