Skip to content

Commit 5782b21

Browse files
authored
Merge pull request #1587 from rust-lang/asm_fixes
Some fixes for inline asm
2 parents a0c1a29 + 868d953 commit 5782b21

File tree

2 files changed

+3
-14
lines changed

2 files changed

+3
-14
lines changed

src/global_asm.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,9 @@ pub(crate) fn compile_global_asm(
202202
return Err(format!("Failed to assemble `{}`", global_asm));
203203
}
204204
} else {
205+
// Escape { and }
206+
let global_asm = global_asm.replace('{', "{{").replace('}', "}}");
207+
205208
let mut child = Command::new(std::env::current_exe().unwrap())
206209
// Avoid a warning about the jobserver fd not being passed
207210
.env_remove("CARGO_MAKEFLAGS")

src/inline_asm.rs

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -568,20 +568,6 @@ impl<'tcx> InlineAssemblyGenerator<'_, 'tcx> {
568568
.emit(&mut generated_asm, InlineAsmArch::X86_64, *modifier)
569569
.unwrap(),
570570
},
571-
InlineAsmArch::AArch64 => match reg {
572-
InlineAsmReg::AArch64(reg) if reg.vreg_index().is_some() => {
573-
// rustc emits v0 rather than q0
574-
reg.emit(
575-
&mut generated_asm,
576-
InlineAsmArch::AArch64,
577-
Some(modifier.unwrap_or('q')),
578-
)
579-
.unwrap()
580-
}
581-
_ => reg
582-
.emit(&mut generated_asm, InlineAsmArch::AArch64, *modifier)
583-
.unwrap(),
584-
},
585571
_ => reg.emit(&mut generated_asm, self.arch, *modifier).unwrap(),
586572
}
587573
}

0 commit comments

Comments
 (0)