1# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
2
3#CHECK: lr	%r0, %r1                # encoding: [0x18,0x01]
4#CHECK: lr	%r2, %r3                # encoding: [0x18,0x23]
5#CHECK: lr	%r4, %r5                # encoding: [0x18,0x45]
6#CHECK: lr	%r6, %r7                # encoding: [0x18,0x67]
7#CHECK: lr	%r8, %r9                # encoding: [0x18,0x89]
8#CHECK: lr	%r10, %r11              # encoding: [0x18,0xab]
9#CHECK: lr	%r12, %r13              # encoding: [0x18,0xcd]
10#CHECK: lr	%r14, %r15              # encoding: [0x18,0xef]
11
12	lr	%r0,%r1
13	lr	%r2,%r3
14	lr	%r4,%r5
15	lr	%r6,%r7
16	lr	%r8,%r9
17	lr	%r10,%r11
18	lr	%r12,%r13
19	lr	%r14,%r15
20
21#CHECK: lgr	%r0, %r1                # encoding: [0xb9,0x04,0x00,0x01]
22#CHECK: lgr	%r2, %r3                # encoding: [0xb9,0x04,0x00,0x23]
23#CHECK: lgr	%r4, %r5                # encoding: [0xb9,0x04,0x00,0x45]
24#CHECK: lgr	%r6, %r7                # encoding: [0xb9,0x04,0x00,0x67]
25#CHECK: lgr	%r8, %r9                # encoding: [0xb9,0x04,0x00,0x89]
26#CHECK: lgr	%r10, %r11              # encoding: [0xb9,0x04,0x00,0xab]
27#CHECK: lgr	%r12, %r13              # encoding: [0xb9,0x04,0x00,0xcd]
28#CHECK: lgr	%r14, %r15              # encoding: [0xb9,0x04,0x00,0xef]
29
30	lgr	%r0,%r1
31	lgr	%r2,%r3
32	lgr	%r4,%r5
33	lgr	%r6,%r7
34	lgr	%r8,%r9
35	lgr	%r10,%r11
36	lgr	%r12,%r13
37	lgr	%r14,%r15
38
39#CHECK: dlr	%r0, %r0                # encoding: [0xb9,0x97,0x00,0x00]
40#CHECK: dlr	%r2, %r0                # encoding: [0xb9,0x97,0x00,0x20]
41#CHECK: dlr	%r4, %r0                # encoding: [0xb9,0x97,0x00,0x40]
42#CHECK: dlr	%r6, %r0                # encoding: [0xb9,0x97,0x00,0x60]
43#CHECK: dlr	%r8, %r0                # encoding: [0xb9,0x97,0x00,0x80]
44#CHECK: dlr	%r10, %r0               # encoding: [0xb9,0x97,0x00,0xa0]
45#CHECK: dlr	%r12, %r0               # encoding: [0xb9,0x97,0x00,0xc0]
46#CHECK: dlr	%r14, %r0               # encoding: [0xb9,0x97,0x00,0xe0]
47
48	dlr	%r0,%r0
49	dlr	%r2,%r0
50	dlr	%r4,%r0
51	dlr	%r6,%r0
52	dlr	%r8,%r0
53	dlr	%r10,%r0
54	dlr	%r12,%r0
55	dlr	%r14,%r0
56
57#CHECK: ler	%f0, %f1                # encoding: [0x38,0x01]
58#CHECK: ler	%f2, %f3                # encoding: [0x38,0x23]
59#CHECK: ler	%f4, %f5                # encoding: [0x38,0x45]
60#CHECK: ler	%f6, %f7                # encoding: [0x38,0x67]
61#CHECK: ler	%f8, %f9                # encoding: [0x38,0x89]
62#CHECK: ler	%f10, %f11              # encoding: [0x38,0xab]
63#CHECK: ler	%f12, %f13              # encoding: [0x38,0xcd]
64#CHECK: ler	%f14, %f15              # encoding: [0x38,0xef]
65
66	ler	%f0,%f1
67	ler	%f2,%f3
68	ler	%f4,%f5
69	ler	%f6,%f7
70	ler	%f8,%f9
71	ler	%f10,%f11
72	ler	%f12,%f13
73	ler	%f14,%f15
74
75#CHECK: ldr	%f0, %f1                # encoding: [0x28,0x01]
76#CHECK: ldr	%f2, %f3                # encoding: [0x28,0x23]
77#CHECK: ldr	%f4, %f5                # encoding: [0x28,0x45]
78#CHECK: ldr	%f6, %f7                # encoding: [0x28,0x67]
79#CHECK: ldr	%f8, %f9                # encoding: [0x28,0x89]
80#CHECK: ldr	%f10, %f11              # encoding: [0x28,0xab]
81#CHECK: ldr	%f12, %f13              # encoding: [0x28,0xcd]
82#CHECK: ldr	%f14, %f15              # encoding: [0x28,0xef]
83
84	ldr	%f0,%f1
85	ldr	%f2,%f3
86	ldr	%f4,%f5
87	ldr	%f6,%f7
88	ldr	%f8,%f9
89	ldr	%f10,%f11
90	ldr	%f12,%f13
91	ldr	%f14,%f15
92
93#CHECK: lxr	%f0, %f1                # encoding: [0xb3,0x65,0x00,0x01]
94#CHECK: lxr	%f4, %f5                # encoding: [0xb3,0x65,0x00,0x45]
95#CHECK: lxr	%f8, %f9                # encoding: [0xb3,0x65,0x00,0x89]
96#CHECK: lxr	%f12, %f13              # encoding: [0xb3,0x65,0x00,0xcd]
97
98	lxr	%f0,%f1
99	lxr	%f4,%f5
100	lxr	%f8,%f9
101	lxr	%f12,%f13
102
103#CHECK: .cfi_offset %r0, 0
104#CHECK: .cfi_offset %r1, 8
105#CHECK: .cfi_offset %r2, 16
106#CHECK: .cfi_offset %r3, 24
107#CHECK: .cfi_offset %r4, 32
108#CHECK: .cfi_offset %r5, 40
109#CHECK: .cfi_offset %r6, 48
110#CHECK: .cfi_offset %r7, 56
111#CHECK: .cfi_offset %r8, 64
112#CHECK: .cfi_offset %r9, 72
113#CHECK: .cfi_offset %r10, 80
114#CHECK: .cfi_offset %r11, 88
115#CHECK: .cfi_offset %r12, 96
116#CHECK: .cfi_offset %r13, 104
117#CHECK: .cfi_offset %r14, 112
118#CHECK: .cfi_offset %r15, 120
119#CHECK: .cfi_offset %f0, 128
120#CHECK: .cfi_offset %f1, 136
121#CHECK: .cfi_offset %f2, 144
122#CHECK: .cfi_offset %f3, 152
123#CHECK: .cfi_offset %f4, 160
124#CHECK: .cfi_offset %f5, 168
125#CHECK: .cfi_offset %f6, 176
126#CHECK: .cfi_offset %f7, 184
127#CHECK: .cfi_offset %f8, 192
128#CHECK: .cfi_offset %f9, 200
129#CHECK: .cfi_offset %f10, 208
130#CHECK: .cfi_offset %f11, 216
131#CHECK: .cfi_offset %f12, 224
132#CHECK: .cfi_offset %f13, 232
133#CHECK: .cfi_offset %f14, 240
134#CHECK: .cfi_offset %f15, 248
135
136	.cfi_startproc
137	.cfi_offset %r0,0
138	.cfi_offset %r1,8
139	.cfi_offset %r2,16
140	.cfi_offset %r3,24
141	.cfi_offset %r4,32
142	.cfi_offset %r5,40
143	.cfi_offset %r6,48
144	.cfi_offset %r7,56
145	.cfi_offset %r8,64
146	.cfi_offset %r9,72
147	.cfi_offset %r10,80
148	.cfi_offset %r11,88
149	.cfi_offset %r12,96
150	.cfi_offset %r13,104
151	.cfi_offset %r14,112
152	.cfi_offset %r15,120
153	.cfi_offset %f0,128
154	.cfi_offset %f1,136
155	.cfi_offset %f2,144
156	.cfi_offset %f3,152
157	.cfi_offset %f4,160
158	.cfi_offset %f5,168
159	.cfi_offset %f6,176
160	.cfi_offset %f7,184
161	.cfi_offset %f8,192
162	.cfi_offset %f9,200
163	.cfi_offset %f10,208
164	.cfi_offset %f11,216
165	.cfi_offset %f12,224
166	.cfi_offset %f13,232
167	.cfi_offset %f14,240
168	.cfi_offset %f15,248
169	.cfi_endproc
170