1
1
error: invalid register class `foo`: unknown register class
2
- --> $DIR/bad-reg.rs:14 :20
2
+ --> $DIR/bad-reg.rs:12 :20
3
3
|
4
4
LL | asm!("{}", in(foo) foo);
5
5
| ^^^^^^^^^^^
6
6
7
7
error: invalid register `foo`: unknown register
8
- --> $DIR/bad-reg.rs:16 :18
8
+ --> $DIR/bad-reg.rs:14 :18
9
9
|
10
10
LL | asm!("", in("foo") foo);
11
11
| ^^^^^^^^^^^^^
12
12
13
13
error: invalid asm template modifier for this register class
14
- --> $DIR/bad-reg.rs:18 :15
14
+ --> $DIR/bad-reg.rs:16 :15
15
15
|
16
16
LL | asm!("{:z}", in(reg) foo);
17
17
| ^^^^ ----------- argument
@@ -21,7 +21,7 @@ LL | asm!("{:z}", in(reg) foo);
21
21
= note: the `reg` register class supports the following template modifiers: `w`, `x`
22
22
23
23
error: invalid asm template modifier for this register class
24
- --> $DIR/bad-reg.rs:20 :15
24
+ --> $DIR/bad-reg.rs:18 :15
25
25
|
26
26
LL | asm!("{:r}", in(vreg) foo);
27
27
| ^^^^ ------------ argument
@@ -31,7 +31,7 @@ LL | asm!("{:r}", in(vreg) foo);
31
31
= note: the `vreg` register class supports the following template modifiers: `b`, `h`, `s`, `d`, `q`, `v`
32
32
33
33
error: invalid asm template modifier for this register class
34
- --> $DIR/bad-reg.rs:22 :15
34
+ --> $DIR/bad-reg.rs:20 :15
35
35
|
36
36
LL | asm!("{:r}", in(vreg_low16) foo);
37
37
| ^^^^ ------------------ argument
@@ -41,117 +41,117 @@ LL | asm!("{:r}", in(vreg_low16) foo);
41
41
= note: the `vreg_low16` register class supports the following template modifiers: `b`, `h`, `s`, `d`, `q`, `v`
42
42
43
43
error: asm template modifiers are not allowed for `const` arguments
44
- --> $DIR/bad-reg.rs:24 :15
44
+ --> $DIR/bad-reg.rs:22 :15
45
45
|
46
46
LL | asm!("{:a}", const 0);
47
47
| ^^^^ ------- argument
48
48
| |
49
49
| template modifier
50
50
51
51
error: asm template modifiers are not allowed for `sym` arguments
52
- --> $DIR/bad-reg.rs:26 :15
52
+ --> $DIR/bad-reg.rs:24 :15
53
53
|
54
54
LL | asm!("{:a}", sym main);
55
55
| ^^^^ -------- argument
56
56
| |
57
57
| template modifier
58
58
59
59
error: invalid register `x29`: the frame pointer cannot be used as an operand for inline asm
60
- --> $DIR/bad-reg.rs:28 :18
60
+ --> $DIR/bad-reg.rs:26 :18
61
61
|
62
62
LL | asm!("", in("x29") foo);
63
63
| ^^^^^^^^^^^^^
64
64
65
65
error: invalid register `sp`: the stack pointer cannot be used as an operand for inline asm
66
- --> $DIR/bad-reg.rs:30 :18
66
+ --> $DIR/bad-reg.rs:28 :18
67
67
|
68
68
LL | asm!("", in("sp") foo);
69
69
| ^^^^^^^^^^^^
70
70
71
71
error: invalid register `xzr`: the zero register cannot be used as an operand for inline asm
72
- --> $DIR/bad-reg.rs:32 :18
72
+ --> $DIR/bad-reg.rs:30 :18
73
73
|
74
74
LL | asm!("", in("xzr") foo);
75
75
| ^^^^^^^^^^^^^
76
76
77
77
error: invalid register `x19`: x19 is used internally by LLVM and cannot be used as an operand for inline asm
78
- --> $DIR/bad-reg.rs:34 :18
78
+ --> $DIR/bad-reg.rs:32 :18
79
79
|
80
80
LL | asm!("", in("x19") foo);
81
81
| ^^^^^^^^^^^^^
82
82
83
83
error: register class `preg` can only be used as a clobber, not as an input or output
84
- --> $DIR/bad-reg.rs:37 :18
84
+ --> $DIR/bad-reg.rs:35 :18
85
85
|
86
86
LL | asm!("", in("p0") foo);
87
87
| ^^^^^^^^^^^^
88
88
89
89
error: register class `preg` can only be used as a clobber, not as an input or output
90
- --> $DIR/bad-reg.rs:41 :20
90
+ --> $DIR/bad-reg.rs:39 :20
91
91
|
92
92
LL | asm!("{}", in(preg) foo);
93
93
| ^^^^^^^^^^^^
94
94
95
95
error: register class `preg` can only be used as a clobber, not as an input or output
96
- --> $DIR/bad-reg.rs:44 :20
96
+ --> $DIR/bad-reg.rs:42 :20
97
97
|
98
98
LL | asm!("{}", out(preg) _);
99
99
| ^^^^^^^^^^^
100
100
101
101
error: register `w0` conflicts with register `x0`
102
- --> $DIR/bad-reg.rs:50 :32
102
+ --> $DIR/bad-reg.rs:48 :32
103
103
|
104
104
LL | asm!("", in("x0") foo, in("w0") bar);
105
105
| ------------ ^^^^^^^^^^^^ register `w0`
106
106
| |
107
107
| register `x0`
108
108
109
109
error: register `x0` conflicts with register `x0`
110
- --> $DIR/bad-reg.rs:52 :32
110
+ --> $DIR/bad-reg.rs:50 :32
111
111
|
112
112
LL | asm!("", in("x0") foo, out("x0") bar);
113
113
| ------------ ^^^^^^^^^^^^^ register `x0`
114
114
| |
115
115
| register `x0`
116
116
|
117
117
help: use `lateout` instead of `out` to avoid conflict
118
- --> $DIR/bad-reg.rs:52 :18
118
+ --> $DIR/bad-reg.rs:50 :18
119
119
|
120
120
LL | asm!("", in("x0") foo, out("x0") bar);
121
121
| ^^^^^^^^^^^^
122
122
123
123
error: register `q0` conflicts with register `v0`
124
- --> $DIR/bad-reg.rs:55 :32
124
+ --> $DIR/bad-reg.rs:53 :32
125
125
|
126
126
LL | asm!("", in("v0") foo, in("q0") bar);
127
127
| ------------ ^^^^^^^^^^^^ register `q0`
128
128
| |
129
129
| register `v0`
130
130
131
131
error: register `q0` conflicts with register `v0`
132
- --> $DIR/bad-reg.rs:57 :32
132
+ --> $DIR/bad-reg.rs:55 :32
133
133
|
134
134
LL | asm!("", in("v0") foo, out("q0") bar);
135
135
| ------------ ^^^^^^^^^^^^^ register `q0`
136
136
| |
137
137
| register `v0`
138
138
|
139
139
help: use `lateout` instead of `out` to avoid conflict
140
- --> $DIR/bad-reg.rs:57 :18
140
+ --> $DIR/bad-reg.rs:55 :18
141
141
|
142
142
LL | asm!("", in("v0") foo, out("q0") bar);
143
143
| ^^^^^^^^^^^^
144
144
145
145
error: type `i32` cannot be used with this register class
146
- --> $DIR/bad-reg.rs:37 :27
146
+ --> $DIR/bad-reg.rs:35 :27
147
147
|
148
148
LL | asm!("", in("p0") foo);
149
149
| ^^^
150
150
|
151
151
= note: register class `preg` supports these types:
152
152
153
153
error: type `i32` cannot be used with this register class
154
- --> $DIR/bad-reg.rs:41 :29
154
+ --> $DIR/bad-reg.rs:39 :29
155
155
|
156
156
LL | asm!("{}", in(preg) foo);
157
157
| ^^^
0 commit comments