PowerPC64 .branch_lt address
[binutils-gdb.git] / sim / testsuite / aarch64 / fstur.s
1 # mach: aarch64
2
3 # Check the FP store unscaled offset instructions: fsturs, fsturd, fsturq.
4 # Check the values -1, and XXX_MAX, which tests all bits.
5 # Check with offsets -256 and 255, which tests all bits.
6 # Also tests the FP load unscaled offset instructions: fldurs, fldurd, fldurq.
7
8 .include "testutils.inc"
9
10 .data
11 .align 4
12 fm1:
13 .word 3212836864
14 fmax:
15 .word 2139095039
16 ftmp:
17 .word 0
18
19 dm1:
20 .word 0
21 .word -1074790400
22 dmax:
23 .word 4294967295
24 .word 2146435071
25 dtmp:
26 .word 0
27 .word 0
28
29 ldm1:
30 .word 0
31 .word 0
32 .word 0
33 .word -1073807360
34 ldmax:
35 .word 4294967295
36 .word 4294967295
37 .word 4294967295
38 .word 2147418111
39 ldtmp:
40 .word 0
41 .word 0
42 .word 0
43 .word 0
44
45 start
46 adrp x1, ftmp
47 add x1, x1, :lo12:ftmp
48
49 adrp x0, fm1
50 add x0, x0, :lo12:fm1
51 sub x5, x0, #255
52 sub x6, x1, #255
53 movi d2, #0
54 ldur s2, [x5, #255]
55 stur s2, [x6, #255]
56 ldr w3, [x0]
57 ldr w4, [x1]
58 cmp w3, w4
59 bne .Lfailure
60
61 adrp x0, fmax
62 add x0, x0, :lo12:fmax
63 add x5, x0, #256
64 add x6, x1, #256
65 movi d2, #0
66 ldur s2, [x5, #-256]
67 stur s2, [x6, #-256]
68 ldr w3, [x0]
69 ldr w4, [x1]
70 cmp w3, w4
71 bne .Lfailure
72
73 adrp x1, dtmp
74 add x1, x1, :lo12:dtmp
75
76 adrp x0, dm1
77 add x0, x0, :lo12:dm1
78 sub x5, x0, #255
79 sub x6, x1, #255
80 movi d2, #0
81 ldur d2, [x5, #255]
82 stur d2, [x6, #255]
83 ldr x3, [x0]
84 ldr x4, [x1]
85 cmp x3, x4
86 bne .Lfailure
87
88 adrp x0, dmax
89 add x0, x0, :lo12:dmax
90 add x5, x0, #256
91 add x6, x1, #256
92 movi d2, #0
93 ldur d2, [x5, #-256]
94 stur d2, [x6, #-256]
95 ldr x3, [x0]
96 ldr x4, [x1]
97 cmp x3, x4
98 bne .Lfailure
99
100 adrp x1, ldtmp
101 add x1, x1, :lo12:ldtmp
102
103 adrp x0, ldm1
104 add x0, x0, :lo12:ldm1
105 sub x5, x0, #255
106 sub x6, x1, #255
107 movi v2.2d, #0
108 ldur q2, [x5, #255]
109 stur q2, [x6, #255]
110 ldr x3, [x0]
111 ldr x4, [x1]
112 cmp x3, x4
113 bne .Lfailure
114 ldr x3, [x0, 8]
115 ldr x4, [x1, 8]
116 cmp x3, x4
117 bne .Lfailure
118
119 adrp x0, ldmax
120 add x0, x0, :lo12:ldmax
121 add x5, x0, #256
122 add x6, x1, #256
123 movi v2.2d, #0
124 ldur q2, [x5, #-256]
125 stur q2, [x6, #-256]
126 ldr x3, [x0]
127 ldr x4, [x1]
128 cmp x3, x4
129 bne .Lfailure
130 ldr x3, [x0, 8]
131 ldr x4, [x1, 8]
132 cmp x3, x4
133 bne .Lfailure
134
135 pass
136 .Lfailure:
137 fail