OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gdb/] [gdb-6.8/] [sim/] [testsuite/] [sim/] [sh/] [pshlr.s] - Blame information for rev 26

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 26 jlechner
# sh testcase for pshl <reg>
2
# mach: all
3
# as(sh):       -defsym sim_cpu=0
4
# as(shdsp):    -defsym sim_cpu=1 -dsp
5
 
6
        .include "testutils.inc"
7
 
8
        start
9
 
10
pshl_reg:                       ! shift arithmetic, register operand
11
        set_grs_a5a5
12
        lds     r0, a0
13
        pcopy   a0, a1
14
        lds     r0, x0
15
        lds     r0, x1
16
        lds     r0, y0
17
        lds     r0, y1
18
        pcopy   x0, m0
19
        pcopy   y1, m1
20
 
21
        set_sreg 0x10000, x0
22
        set_sreg 0x0, y0
23
        pshl    x0, y0, x0
24
        assert_sreg     0x10000, x0
25
        pneg    y0, y0
26
        pshl    x0, y0, x0
27
        assert_sreg     0x10000, x0
28
 
29
        set_sreg 0x10000, y0
30
        pshl    x0, y0, x0
31
        assert_sreg     0x20000, x0
32
        pneg    y0, y0
33
        pshl    x0, y0, x0
34
        assert_sreg     0x10000, x0
35
 
36
        set_sreg 0x20000, y0
37
        pshl    x0, y0, x0
38
        assert_sreg     0x40000, x0
39
        pneg    y0, y0
40
        pshl    x0, y0, x0
41
        assert_sreg     0x10000, x0
42
 
43
        set_sreg 0x30000, y0
44
        pshl    x0, y0, x0
45
        assert_sreg     0x80000, x0
46
        pneg    y0, y0
47
        pshl    x0, y0, x0
48
        assert_sreg     0x10000, x0
49
 
50
        set_sreg 0x40000, y0
51
        pshl    x0, y0, x0
52
        assert_sreg     0x100000, x0
53
        pneg    y0, y0
54
        pshl    x0, y0, x0
55
        assert_sreg     0x10000, x0
56
 
57
        set_sreg 0x50000, y0
58
        pshl    x0, y0, x0
59
        assert_sreg     0x200000, x0
60
        pneg    y0, y0
61
        pshl    x0, y0, x0
62
        assert_sreg     0x10000, x0
63
 
64
        set_sreg 0x60000, y0
65
        pshl    x0, y0, x0
66
        assert_sreg     0x400000, x0
67
        pneg    y0, y0
68
        pshl    x0, y0, x0
69
        assert_sreg     0x10000, x0
70
 
71
        set_sreg 0x70000, y0
72
        pshl    x0, y0, x0
73
        assert_sreg     0x800000, x0
74
        pneg    y0, y0
75
        pshl    x0, y0, x0
76
        assert_sreg     0x10000, x0
77
 
78
        set_sreg 0x80000, y0
79
        pshl    x0, y0, x0
80
        assert_sreg     0x1000000, x0
81
        pneg    y0, y0
82
        pshl    x0, y0, x0
83
        assert_sreg     0x10000, x0
84
 
85
        set_sreg 0x90000, y0
86
        pshl    x0, y0, x0
87
        assert_sreg     0x2000000, x0
88
        pneg    y0, y0
89
        pshl    x0, y0, x0
90
        assert_sreg     0x10000, x0
91
 
92
        set_sreg 0xa0000, y0
93
        pshl    x0, y0, x0
94
        assert_sreg     0x4000000, x0
95
        pneg    y0, y0
96
        pshl    x0, y0, x0
97
        assert_sreg     0x10000, x0
98
 
99
        set_sreg 0xb0000, y0
100
        pshl    x0, y0, x0
101
        assert_sreg     0x8000000, x0
102
        pneg    y0, y0
103
        pshl    x0, y0, x0
104
        assert_sreg     0x10000, x0
105
 
106
        set_sreg 0xc0000, y0
107
        pshl    x0, y0, x0
108
        assert_sreg     0x10000000, x0
109
        pneg    y0, y0
110
        pshl    x0, y0, x0
111
        assert_sreg     0x10000, x0
112
 
113
        set_sreg 0xd0000, y0
114
        pshl    x0, y0, x0
115
        assert_sreg     0x20000000, x0
116
        pneg    y0, y0
117
        pshl    x0, y0, x0
118
        assert_sreg     0x10000, x0
119
 
120
        set_sreg 0xe0000, y0
121
        pshl    x0, y0, x0
122
        assert_sreg     0x40000000, x0
123
        pneg    y0, y0
124
        pshl    x0, y0, x0
125
        assert_sreg     0x10000, x0
126
 
127
        set_sreg 0xf0000, y0
128
        pshl    x0, y0, x0
129
        assert_sreg     0x80000000, x0
130
        pneg    y0, y0
131
        pshl    x0, y0, x0
132
        assert_sreg     0x10000, x0
133
 
134
        set_sreg 0x100000, y0
135
        pshl    x0, y0, x0
136
        assert_sreg     0x00000000, x0
137
        pneg    y0, y0
138
        pshl    x0, y0, x0
139
        assert_sreg     0x0, x0
140
 
141
        test_grs_a5a5
142
        assert_sreg2    0xa5a5a5a5, a0
143
        assert_sreg2    0xa5a5a5a5, a1
144
        assert_sreg     0xa5a5a5a5, x1
145
        assert_sreg     0xa5a5a5a5, y1
146
        assert_sreg2    0xa5a5a5a5, m0
147
        assert_sreg2    0xa5a5a5a5, m1
148
 
149
 
150
        pass
151
        exit 0
152
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.