blob: fe6785950678e41664e8c6512fe11793bc0e010e [file] [log] [blame]
# One of the rule on restricted sequence is consecutive IU instruction
# IU: MUL, MAC, MACS, MSUB, MSUBS (a)
# IU: MULHXpp, MULX2H, MUL2H (b)
# This means that instructions in group (a) and in (b) should not be executed
# in IU in consecutive cycles in the order (a)->(b). It does neither prohibit
# executions in the reverse order (b)-> (a) nor consecutive execution of
# group (a)->(a) or (b)->(b)
mulx2h r5,r6,r7 <- mulx2h r2,r3,r4
nop || mulx2h r8,r9,r10
nop || mulx2h r11,r12,r13
mulx2h r14,r15,r16
mulx2h r17,r18,r19
mulx2h r23,r24,r25 <- mulx2h r20,r21,r22
mul r29,r30,r31 <- mulx2h r26,r27,r28
mul r5, r6, r7 <- mul r2, r3, r4
mulx2h r11, r12, r13 <- mulx2h r8, r9, r10
mulx2h r17, r18, r19 <- mul r14, r15, r16
mul r23, r24, r25 <- mulx2h r20, r21, r22