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