12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- # frv testcase for ldq @($GRi,$GRj),$GRk
- # mach: frv
- .include "testutils.inc"
- start
- .global ldq
- ldq:
- set_mem_limmed 0xdead,0xbeef,sp
- inc_gr_immed -4,sp
- set_mem_limmed 0xbeef,0xdead,sp
- inc_gr_immed -4,sp
- set_mem_limmed 0x1234,0x5678,sp
- inc_gr_immed -4,sp
- set_mem_limmed 0x9abc,0xdef0,sp
- set_gr_limmed 0xdead,0xbeef,gr8
- set_gr_limmed 0xbeef,0xdead,gr9
- set_gr_limmed 0x1234,0x5678,gr10
- set_gr_limmed 0x9abc,0xdef0,gr11
- set_gr_immed 0,gr7
- ldq @(sp,gr7),gr8
- test_gr_limmed 0x9abc,0xdef0,gr8
- test_gr_limmed 0x1234,0x5678,gr9
- test_gr_limmed 0xbeef,0xdead,gr10
- test_gr_limmed 0xdead,0xbeef,gr11
- set_gr_limmed 0xdead,0xbeef,gr8
- set_gr_limmed 0xbeef,0xdead,gr9
- set_gr_limmed 0x1234,0x5678,gr10
- set_gr_limmed 0x9abc,0xdef0,gr11
- inc_gr_immed -16,sp
- set_gr_immed 16,gr7
- ldq @(sp,gr7),gr8
- test_gr_limmed 0x9abc,0xdef0,gr8
- test_gr_limmed 0x1234,0x5678,gr9
- test_gr_limmed 0xbeef,0xdead,gr10
- test_gr_limmed 0xdead,0xbeef,gr11
- set_gr_limmed 0xdead,0xbeef,gr8
- set_gr_limmed 0xbeef,0xdead,gr9
- set_gr_limmed 0x1234,0x5678,gr10
- set_gr_limmed 0x9abc,0xdef0,gr11
- inc_gr_immed 32,sp
- set_gr_immed -16,gr7
- ldq @(sp,gr7),gr8
- test_gr_limmed 0x9abc,0xdef0,gr8
- test_gr_limmed 0x1234,0x5678,gr9
- test_gr_limmed 0xbeef,0xdead,gr10
- test_gr_limmed 0xdead,0xbeef,gr11
- ; loading into gr0 has no effect
- ; gr1 is sp
- set_gr_gr gr1,gr8
- set_gr_limmed 0x1234,0x5678,gr2
- set_gr_limmed 0x9abc,0xdef0,gr3
- ldq @(sp,gr7),gr0
- test_gr_immed 0,gr0
- test_gr_gr gr1,gr8
- set_gr_immed 0x12345678,gr2
- set_gr_immed 0x9abcdef0,gr3
- pass
|