sim: bfin: import testsuite
[deliverable/binutils-gdb.git] / sim / testsuite / sim / bfin / ashift_flags.s
1 # mach: bfin
2
3 .include "testutils.inc"
4 start
5
6 // load r1=0x7fffffff
7 // load r2=0x80000000
8 // load r3=0x000000ff
9 // load r4=0x00000000
10 loadsym p0, data0;
11 R0 = [ P0 ++ ];
12 R1 = [ P0 ++ ];
13 R2 = [ P0 ++ ];
14 R3 = [ P0 ++ ];
15 R4 = [ P0 ++ ];
16
17 _dbg r0;
18 _dbg r1;
19 _dbg r2;
20 _dbg r3;
21 _dbg r4;
22
23 R7 = 0;
24 ASTAT = R7;
25 r5 = r1 << 0x4 (s);
26 _DBG ASTAT;
27 r7=astat;
28 dbga (r5.h, 0x7fff);
29 dbga (r5.l, 0xffff);
30 dbga (r7.h, 0x0300); // V=1, VS=1
31 dbga (r7.l, 0x8);
32
33 R7 = 0;
34 ASTAT = R7;
35 r5.h = r1.h << 0x4 (s);
36 _DBG ASTAT;
37 r7=astat;
38 dbga (r5.h, 0x7fff);
39 dbga (r7.h, 0x0300); // V=1, VS=1
40 dbga (r7.l, 0x8);
41
42 A0 = 0;
43 A0.w = r1;
44 A0.x = r0.l;
45 r6 = 0x3;
46 _dbg r6;
47 _dbg A0;
48 R7 = 0;
49 ASTAT = R7;
50 A0 = ASHIFT A0 BY R6.L;
51 _DBG ASTAT;
52 _DBG A0;
53 r7 = astat;
54 dbga (r7.h, 0x0); // AV0=0, AV0S=0
55 dbga (r7.l, 0x2); // AN = 1
56
57 A1 = 0;
58 A1 = r1;
59 A1.x = r0.l;
60 r6 = 0x3;
61 _dbg A1;
62 R7 = 0;
63 ASTAT = R7;
64 A1 = ASHIFT A1 BY R6.L;
65 _DBG ASTAT;
66 _DBG A1;
67 r7 = astat;
68 dbga (r7.h, 0x0); // AV1=0, AV1S=0
69 dbga (r7.l, 0x2); // AN = 1
70
71 pass
72
73 .data 0x1000;
74 data0:
75 .dw 0x1111
76 .dw 0x1111
77 .dw 0xffff
78 .dw 0x7fff
79 .dw 0x0000
80 .dw 0x8000
81 .dw 0x00ff
82 .dw 0x0000
83 .dw 0x0000
84 .dw 0x0000
This page took 0.0312 seconds and 4 git commands to generate.