#mach: crisv32 #output: Basic clock cycles, total @: 18\n #output: Memory source stall cycles: 0\n #output: Memory read-after-write stall cycles: 0\n #output: Movem source stall cycles: 0\n #output: Movem destination stall cycles: 6\n #output: Movem address stall cycles: 0\n #output: Multiplication source stall cycles: 0\n #output: Jump source stall cycles: 0\n #output: Branch misprediction stall cycles: 0\n #output: Jump target stall cycles: 0\n #sim: --cris-cycles=basic ; Check that movem to register followed by register write dword ; to one of the registers is logged as needing two stall cycles, ; regardless of size. .include "testutils.inc" startnostack move.d 0f,r5 moveq 0,r8 moveq 0,r9 movem [r5],r4 move.d r8,r1 addq 1,r1 ; 2 cycles. movem [r5],r4 move.w r8,r1 addq 1,r1 ; 2 cycles. movem [r5],r4 move.b r8,r1 addq 1,r1 ; 2 cycles. movem [r5],r4 move.b r8,r1 addq 1,r9 movem [r5],r4 move.d r8,r1 addq 1,r8 break 15 .data .p2align 5 0: .dword 0b .dword 0b .dword 0b .dword 0b .dword 0b