Skip to content

Commit 422a162

Browse files
bors[bot]Disasm
andauthored
Merge #47
47: Replace asm! with llvm_asm! r=almindor a=Disasm `asm!` was replaced with a different implementation on nightly, the old one is renamed into `llvm_asm!` Co-authored-by: Vadim Kaushan <admin@disasm.info>
2 parents d13776a + 66ebf47 commit 422a162

File tree

4 files changed

+10
-9
lines changed

4 files changed

+10
-9
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
1010
### Changed
1111

1212
- Updated Minimum Supported Rust Version to 1.31.0
13+
- Use `llvm_asm!` instead of `asm!`
1314

1415
## [v0.5.6] - 2020-03-14
1516

src/asm.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ macro_rules! instruction {
77
pub unsafe fn $fnname() {
88
match () {
99
#[cfg(all(riscv, feature = "inline-asm"))]
10-
() => asm!($asm :::: "volatile"),
10+
() => llvm_asm!($asm :::: "volatile"),
1111

1212
#[cfg(all(riscv, not(feature = "inline-asm")))]
1313
() => {
@@ -58,7 +58,7 @@ instruction!(
5858
pub unsafe fn sfence_vma(asid: usize, addr: usize) {
5959
match () {
6060
#[cfg(all(riscv, feature = "inline-asm"))]
61-
() => asm!("sfence.vma $0, $1" :: "r"(asid), "r"(addr) :: "volatile"),
61+
() => llvm_asm!("sfence.vma $0, $1" :: "r"(asid), "r"(addr) :: "volatile"),
6262

6363
#[cfg(all(riscv, not(feature = "inline-asm")))]
6464
() => {

src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
//! - Wrappers around assembly instructions like `WFI`.
1717
1818
#![no_std]
19-
#![cfg_attr(feature = "inline-asm", feature(asm))]
19+
#![cfg_attr(feature = "inline-asm", feature(llvm_asm))]
2020

2121
extern crate bare_metal;
2222
extern crate bit_field;

src/register/macros.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ macro_rules! read_csr {
77
#[cfg(all(riscv, feature = "inline-asm"))]
88
() => {
99
let r: usize;
10-
asm!("csrrs $0, $1, x0" : "=r"(r) : "i"($csr_number) :: "volatile");
10+
llvm_asm!("csrrs $0, $1, x0" : "=r"(r) : "i"($csr_number) :: "volatile");
1111
r
1212
}
1313

@@ -36,7 +36,7 @@ macro_rules! read_csr_rv32 {
3636
#[cfg(all(riscv32, feature = "inline-asm"))]
3737
() => {
3838
let r: usize;
39-
asm!("csrrs $0, $1, x0" : "=r"(r) : "i"($csr_number) :: "volatile");
39+
llvm_asm!("csrrs $0, $1, x0" : "=r"(r) : "i"($csr_number) :: "volatile");
4040
r
4141
}
4242

@@ -102,7 +102,7 @@ macro_rules! write_csr {
102102
unsafe fn _write(bits: usize) {
103103
match () {
104104
#[cfg(all(riscv, feature = "inline-asm"))]
105-
() => asm!("csrrw x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
105+
() => llvm_asm!("csrrw x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
106106

107107
#[cfg(all(riscv, not(feature = "inline-asm")))]
108108
() => {
@@ -128,7 +128,7 @@ macro_rules! write_csr_rv32 {
128128
unsafe fn _write(bits: usize) {
129129
match () {
130130
#[cfg(all(riscv32, feature = "inline-asm"))]
131-
() => asm!("csrrw x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
131+
() => llvm_asm!("csrrw x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
132132

133133
#[cfg(all(riscv32, not(feature = "inline-asm")))]
134134
() => {
@@ -178,7 +178,7 @@ macro_rules! set {
178178
unsafe fn _set(bits: usize) {
179179
match () {
180180
#[cfg(all(riscv, feature = "inline-asm"))]
181-
() => asm!("csrrs x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
181+
() => llvm_asm!("csrrs x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
182182

183183
#[cfg(all(riscv, not(feature = "inline-asm")))]
184184
() => {
@@ -204,7 +204,7 @@ macro_rules! clear {
204204
unsafe fn _clear(bits: usize) {
205205
match () {
206206
#[cfg(all(riscv, feature = "inline-asm"))]
207-
() => asm!("csrrc x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
207+
() => llvm_asm!("csrrc x0, $1, $0" :: "r"(bits), "i"($csr_number) :: "volatile"),
208208

209209
#[cfg(all(riscv, not(feature = "inline-asm")))]
210210
() => {

0 commit comments

Comments
 (0)