RISC-V: Cleanup the imply code and test cases for vendor xsf extensions.
[binutils-gdb.git] / sim / testsuite / frv / sra.cgs
blob0f0c8644d03a05759a0e61f367e4d13ff20acb93
1 # frv testcase for sra $GRi,$GRj,$GRk
2 # mach: all
4         .include "testutils.inc"
6         start
8         .global sra
9 sra:
10         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
11         set_gr_limmed   0x8000,0x0000,gr8
12         set_icc         0x05,0          ; Set mask opposite of expected
13         sra             gr8,gr7,gr8
14         test_icc        0 1 0 1 icc0
15         test_gr_limmed  0x8000,0x0000,gr8
17         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
18         set_gr_limmed   0x8000,0x0000,gr8
19         set_icc         0x0f,0          ; Set mask opposite of expected
20         sra             gr8,gr7,gr8
21         test_icc        1 1 1 1 icc0
22         test_gr_limmed  0xc000,0x0000,gr8
24         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
25         set_gr_limmed   0x8000,0x0000,gr8
26         set_icc         0x0f,0          ; Set mask opposite of expected
27         sra             gr8,gr7,gr8
28         test_icc        1 1 1 1 icc0
29         test_gr_immed   -1,gr8
31         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
32         set_gr_limmed   0x4000,0x0000,gr8
33         set_icc         0x0a,0          ; Set mask opposite of expected
34         sra             gr8,gr7,gr8
35         test_icc        1 0 1 0 icc0
36         test_gr_immed   0x00000000,gr8
38         pass