Remove duplicated code in RISC-V asm bad-reg test
This commit is contained in:
parent
2f348cb7ce
commit
cfb8be52b3
7 changed files with 90 additions and 128 deletions
|
@ -22,170 +22,164 @@ error: invalid register `gp`: the global pointer cannot be used as an operand fo
|
|||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("tp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `zero`: the zero register cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:45:18
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
|
|
||||
LL | asm!("", out("zero") _);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:96:18
|
||||
--> $DIR/bad-reg.rs:94:18
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:99:18
|
||||
--> $DIR/bad-reg.rs:97:18
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:102:26
|
||||
--> $DIR/bad-reg.rs:100:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:105:26
|
||||
--> $DIR/bad-reg.rs:103:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(vreg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x16`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:48:18
|
||||
--> $DIR/bad-reg.rs:46:18
|
||||
|
|
||||
LL | asm!("", out("x16") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x17`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:50:18
|
||||
--> $DIR/bad-reg.rs:48:18
|
||||
|
|
||||
LL | asm!("", out("x17") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x18`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:52:18
|
||||
--> $DIR/bad-reg.rs:50:18
|
||||
|
|
||||
LL | asm!("", out("x18") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x19`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:54:18
|
||||
--> $DIR/bad-reg.rs:52:18
|
||||
|
|
||||
LL | asm!("", out("x19") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x20`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:56:18
|
||||
--> $DIR/bad-reg.rs:54:18
|
||||
|
|
||||
LL | asm!("", out("x20") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x21`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:58:18
|
||||
--> $DIR/bad-reg.rs:56:18
|
||||
|
|
||||
LL | asm!("", out("x21") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x22`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:60:18
|
||||
--> $DIR/bad-reg.rs:58:18
|
||||
|
|
||||
LL | asm!("", out("x22") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x23`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:62:18
|
||||
--> $DIR/bad-reg.rs:60:18
|
||||
|
|
||||
LL | asm!("", out("x23") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x24`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:64:18
|
||||
--> $DIR/bad-reg.rs:62:18
|
||||
|
|
||||
LL | asm!("", out("x24") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x25`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:66:18
|
||||
--> $DIR/bad-reg.rs:64:18
|
||||
|
|
||||
LL | asm!("", out("x25") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x26`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:68:18
|
||||
--> $DIR/bad-reg.rs:66:18
|
||||
|
|
||||
LL | asm!("", out("x26") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x27`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:70:18
|
||||
--> $DIR/bad-reg.rs:68:18
|
||||
|
|
||||
LL | asm!("", out("x27") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x28`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:72:18
|
||||
--> $DIR/bad-reg.rs:70:18
|
||||
|
|
||||
LL | asm!("", out("x28") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x29`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:74:18
|
||||
--> $DIR/bad-reg.rs:72:18
|
||||
|
|
||||
LL | asm!("", out("x29") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x30`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:76:18
|
||||
--> $DIR/bad-reg.rs:74:18
|
||||
|
|
||||
LL | asm!("", out("x30") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: cannot use register `x31`: register can't be used with the `e` target feature
|
||||
--> $DIR/bad-reg.rs:78:18
|
||||
--> $DIR/bad-reg.rs:76:18
|
||||
|
|
||||
LL | asm!("", out("x31") _);
|
||||
| ^^^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:82:26
|
||||
--> $DIR/bad-reg.rs:80:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) f);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:84:26
|
||||
--> $DIR/bad-reg.rs:82:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:86:26
|
||||
--> $DIR/bad-reg.rs:84:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) d);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:89:26
|
||||
--> $DIR/bad-reg.rs:87:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) d);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:96:27
|
||||
--> $DIR/bad-reg.rs:94:27
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^
|
||||
|
@ -193,7 +187,7 @@ LL | asm!("", in("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:99:28
|
||||
--> $DIR/bad-reg.rs:97:28
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^
|
||||
|
@ -201,12 +195,12 @@ LL | asm!("", out("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:102:35
|
||||
--> $DIR/bad-reg.rs:100:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^
|
||||
|
|
||||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: aborting due to 34 previous errors
|
||||
error: aborting due to 33 previous errors
|
||||
|
||||
|
|
|
@ -22,50 +22,44 @@ error: invalid register `gp`: the global pointer cannot be used as an operand fo
|
|||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("tp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `zero`: the zero register cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:45:18
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
|
|
||||
LL | asm!("", out("zero") _);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:96:18
|
||||
--> $DIR/bad-reg.rs:94:18
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:99:18
|
||||
--> $DIR/bad-reg.rs:97:18
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:102:26
|
||||
--> $DIR/bad-reg.rs:100:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:105:26
|
||||
--> $DIR/bad-reg.rs:103:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(vreg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:96:27
|
||||
--> $DIR/bad-reg.rs:94:27
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^
|
||||
|
@ -73,7 +67,7 @@ LL | asm!("", in("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:99:28
|
||||
--> $DIR/bad-reg.rs:97:28
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^
|
||||
|
@ -81,12 +75,12 @@ LL | asm!("", out("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:102:35
|
||||
--> $DIR/bad-reg.rs:100:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^
|
||||
|
|
||||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: aborting due to 14 previous errors
|
||||
error: aborting due to 13 previous errors
|
||||
|
||||
|
|
|
@ -22,74 +22,68 @@ error: invalid register `gp`: the global pointer cannot be used as an operand fo
|
|||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("tp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `zero`: the zero register cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:45:18
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
|
|
||||
LL | asm!("", out("zero") _);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:96:18
|
||||
--> $DIR/bad-reg.rs:94:18
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:99:18
|
||||
--> $DIR/bad-reg.rs:97:18
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:102:26
|
||||
--> $DIR/bad-reg.rs:100:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:105:26
|
||||
--> $DIR/bad-reg.rs:103:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(vreg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:82:26
|
||||
--> $DIR/bad-reg.rs:80:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) f);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:84:26
|
||||
--> $DIR/bad-reg.rs:82:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:86:26
|
||||
--> $DIR/bad-reg.rs:84:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) d);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:89:26
|
||||
--> $DIR/bad-reg.rs:87:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) d);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:96:27
|
||||
--> $DIR/bad-reg.rs:94:27
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^
|
||||
|
@ -97,7 +91,7 @@ LL | asm!("", in("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:99:28
|
||||
--> $DIR/bad-reg.rs:97:28
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^
|
||||
|
@ -105,12 +99,12 @@ LL | asm!("", out("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:102:35
|
||||
--> $DIR/bad-reg.rs:100:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^
|
||||
|
|
||||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: aborting due to 18 previous errors
|
||||
error: aborting due to 17 previous errors
|
||||
|
||||
|
|
|
@ -22,50 +22,44 @@ error: invalid register `gp`: the global pointer cannot be used as an operand fo
|
|||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("tp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `zero`: the zero register cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:45:18
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
|
|
||||
LL | asm!("", out("zero") _);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:96:18
|
||||
--> $DIR/bad-reg.rs:94:18
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:99:18
|
||||
--> $DIR/bad-reg.rs:97:18
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:102:26
|
||||
--> $DIR/bad-reg.rs:100:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:105:26
|
||||
--> $DIR/bad-reg.rs:103:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(vreg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: `d` target feature is not enabled
|
||||
--> $DIR/bad-reg.rs:86:35
|
||||
--> $DIR/bad-reg.rs:84:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) d);
|
||||
| ^
|
||||
|
@ -73,7 +67,7 @@ LL | asm!("/* {} */", in(freg) d);
|
|||
= note: this is required to use type `f64` with register class `freg`
|
||||
|
||||
error: `d` target feature is not enabled
|
||||
--> $DIR/bad-reg.rs:89:36
|
||||
--> $DIR/bad-reg.rs:87:36
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) d);
|
||||
| ^
|
||||
|
@ -81,7 +75,7 @@ LL | asm!("/* {} */", out(freg) d);
|
|||
= note: this is required to use type `f64` with register class `freg`
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:96:27
|
||||
--> $DIR/bad-reg.rs:94:27
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^
|
||||
|
@ -89,7 +83,7 @@ LL | asm!("", in("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:99:28
|
||||
--> $DIR/bad-reg.rs:97:28
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^
|
||||
|
@ -97,12 +91,12 @@ LL | asm!("", out("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:102:35
|
||||
--> $DIR/bad-reg.rs:100:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^
|
||||
|
|
||||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: aborting due to 16 previous errors
|
||||
error: aborting due to 15 previous errors
|
||||
|
||||
|
|
|
@ -22,50 +22,44 @@ error: invalid register `gp`: the global pointer cannot be used as an operand fo
|
|||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("tp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `zero`: the zero register cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:45:18
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
|
|
||||
LL | asm!("", out("zero") _);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:96:18
|
||||
--> $DIR/bad-reg.rs:94:18
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:99:18
|
||||
--> $DIR/bad-reg.rs:97:18
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:102:26
|
||||
--> $DIR/bad-reg.rs:100:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:105:26
|
||||
--> $DIR/bad-reg.rs:103:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(vreg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:96:27
|
||||
--> $DIR/bad-reg.rs:94:27
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^
|
||||
|
@ -73,7 +67,7 @@ LL | asm!("", in("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:99:28
|
||||
--> $DIR/bad-reg.rs:97:28
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^
|
||||
|
@ -81,12 +75,12 @@ LL | asm!("", out("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:102:35
|
||||
--> $DIR/bad-reg.rs:100:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^
|
||||
|
|
||||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: aborting due to 14 previous errors
|
||||
error: aborting due to 13 previous errors
|
||||
|
||||
|
|
|
@ -22,74 +22,68 @@ error: invalid register `gp`: the global pointer cannot be used as an operand fo
|
|||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("gp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
--> $DIR/bad-reg.rs:41:18
|
||||
|
|
||||
LL | asm!("", out("tp") _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: invalid register `zero`: the zero register cannot be used as an operand for inline asm
|
||||
--> $DIR/bad-reg.rs:45:18
|
||||
--> $DIR/bad-reg.rs:43:18
|
||||
|
|
||||
LL | asm!("", out("zero") _);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:96:18
|
||||
--> $DIR/bad-reg.rs:94:18
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:99:18
|
||||
--> $DIR/bad-reg.rs:97:18
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:102:26
|
||||
--> $DIR/bad-reg.rs:100:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `vreg` can only be used as a clobber, not as an input or output
|
||||
--> $DIR/bad-reg.rs:105:26
|
||||
--> $DIR/bad-reg.rs:103:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(vreg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:82:26
|
||||
--> $DIR/bad-reg.rs:80:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) f);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:84:26
|
||||
--> $DIR/bad-reg.rs:82:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) _);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:86:26
|
||||
--> $DIR/bad-reg.rs:84:26
|
||||
|
|
||||
LL | asm!("/* {} */", in(freg) d);
|
||||
| ^^^^^^^^^^
|
||||
|
||||
error: register class `freg` requires at least one of the following target features: d, f
|
||||
--> $DIR/bad-reg.rs:89:26
|
||||
--> $DIR/bad-reg.rs:87:26
|
||||
|
|
||||
LL | asm!("/* {} */", out(freg) d);
|
||||
| ^^^^^^^^^^^
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:96:27
|
||||
--> $DIR/bad-reg.rs:94:27
|
||||
|
|
||||
LL | asm!("", in("v0") x);
|
||||
| ^
|
||||
|
@ -97,7 +91,7 @@ LL | asm!("", in("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:99:28
|
||||
--> $DIR/bad-reg.rs:97:28
|
||||
|
|
||||
LL | asm!("", out("v0") x);
|
||||
| ^
|
||||
|
@ -105,12 +99,12 @@ LL | asm!("", out("v0") x);
|
|||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: type `i32` cannot be used with this register class
|
||||
--> $DIR/bad-reg.rs:102:35
|
||||
--> $DIR/bad-reg.rs:100:35
|
||||
|
|
||||
LL | asm!("/* {} */", in(vreg) x);
|
||||
| ^
|
||||
|
|
||||
= note: register class `vreg` supports these types:
|
||||
|
||||
error: aborting due to 18 previous errors
|
||||
error: aborting due to 17 previous errors
|
||||
|
||||
|
|
|
@ -38,8 +38,6 @@ fn f() {
|
|||
//~^ ERROR invalid register `sp`: the stack pointer cannot be used as an operand for inline asm
|
||||
asm!("", out("gp") _);
|
||||
//~^ ERROR invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
asm!("", out("gp") _);
|
||||
//~^ ERROR invalid register `gp`: the global pointer cannot be used as an operand for inline asm
|
||||
asm!("", out("tp") _);
|
||||
//~^ ERROR invalid register `tp`: the thread pointer cannot be used as an operand for inline asm
|
||||
asm!("", out("zero") _);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue