On 1.7.2011 14:57, Jakub Jermar wrote: > On 1.7.2011 12:41, Artyom Tarasenko wrote: >> Looks like it's a pretty nice test case. >> >> The test case scenario is to load the initial values into the >> registers (you already know them), >> calculate the mins, cmp the result with expected and jump somewhere. >> Since it happens with interrupts disabled, we don't need an OS or bios >> to test that. The binary just has to have an entry point at 0x20, >> then we can load it instead of bios. >> >> Care to produce the test case? (Otherwise I'll do it, but probably not >> until the weekend after the next one). > > Yes I have a small reproducible testcase, see the attachments.
Actually, the testcase can be further reduced into: .global _start .text .space 0x20 _start: set 110393, %i1 set 0x40, %i2 cmp %i1, %i2 udivx %g0, 1, %g0 movgu %xcc, %i2, %i1 cmp %i1, 512 bgu %xcc, 0f nop succ: ta 0 fail: 0: ta 1 The presence of the `udivx` instruction seems to be essential. Even though it has no effect on the computation, removing it will make the testcase non-reproducible. Jakub