]>
git.proxmox.com Git - rustc.git/blob - src/test/codegen/asm-powerpc-clobbers.rs
1 // min-llvm-version: 10.0.1
2 // revisions: powerpc powerpc64 powerpc64le
3 //[powerpc] compile-flags: --target powerpc-unknown-linux-gnu
4 //[powerpc] needs-llvm-components: powerpc
5 //[powerpc64] compile-flags: --target powerpc64-unknown-linux-gnu
6 //[powerpc64] needs-llvm-components: powerpc
7 //[powerpc64le] compile-flags: --target powerpc64le-unknown-linux-gnu
8 //[powerpc64le] needs-llvm-components: powerpc
10 #![crate_type = "rlib"]
11 #![feature(no_core, rustc_attrs, lang_items)]
17 #[rustc_builtin_macro]
22 // CHECK-LABEL: @cr_clobber
23 // CHECK: call void asm sideeffect "", "~{cr}"()
25 pub unsafe fn cr_clobber() {
26 asm
!("", out("cr") _
, options(nostack
, nomem
));
29 // CHECK-LABEL: @cr0_clobber
30 // CHECK: call void asm sideeffect "", "~{cr0}"()
32 pub unsafe fn cr0_clobber() {
33 asm
!("", out("cr0") _
, options(nostack
, nomem
));
36 // CHECK-LABEL: @cr5_clobber
37 // CHECK: call void asm sideeffect "", "~{cr5}"()
39 pub unsafe fn cr5_clobber() {
40 asm
!("", out("cr5") _
, options(nostack
, nomem
));
43 // CHECK-LABEL: @xer_clobber
44 // CHECK: call void asm sideeffect "", "~{xer}"()
46 pub unsafe fn xer_clobber() {
47 asm
!("", out("xer") _
, options(nostack
, nomem
));