diff options
| author | bors <bors@rust-lang.org> | 2025-02-13 02:13:24 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-02-13 02:13:24 +0000 |
| commit | 9fcc9cf4a202aadfe1f44722b39c83536eba3dba (patch) | |
| tree | 4af2d23be4f10713dd414dbbb0848093f0223c3b /tests/codegen/asm/csky-clobbers.rs | |
| parent | 6dce9f8c2d8dde4c9ea20bab981cd70229c37fdc (diff) | |
| parent | d16b067f8cad5c006e967ad030c4ca4a33602966 (diff) | |
| download | rust-9fcc9cf4a202aadfe1f44722b39c83536eba3dba.tar.gz rust-9fcc9cf4a202aadfe1f44722b39c83536eba3dba.zip | |
Auto merge of #136954 - jhpratt:rollup-koefsot, r=jhpratt
Rollup of 12 pull requests Successful merges: - #134090 (Stabilize target_feature_11) - #135025 (Cast allocas to default address space) - #135841 (Reject `?Trait` bounds in various places where we unconditionally warned since 1.0) - #136217 (Mark condition/carry bit as clobbered in C-SKY inline assembly) - #136699 (std: replace the `FromInner` implementation for addresses with private conversion functions) - #136806 (Fix cycle when debug-printing opaque types from RPITIT) - #136807 (compiler: internally merge `PtxKernel` into `GpuKernel`) - #136818 (Implement `read*_exact` for `std:io::repeat`) - #136927 (Correctly escape hashtags when running `invalid_rust_codeblocks` lint) - #136937 (Update books) - #136945 (Add diagnostic item for `std::io::BufRead`) - #136947 (Reinstate nnethercote in the review rotation.) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'tests/codegen/asm/csky-clobbers.rs')
| -rw-r--r-- | tests/codegen/asm/csky-clobbers.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/codegen/asm/csky-clobbers.rs b/tests/codegen/asm/csky-clobbers.rs new file mode 100644 index 00000000000..4986d0fe56d --- /dev/null +++ b/tests/codegen/asm/csky-clobbers.rs @@ -0,0 +1,24 @@ +//@ add-core-stubs +//@ compile-flags: --target csky-unknown-linux-gnuabiv2 +//@ needs-llvm-components: csky + +#![crate_type = "rlib"] +#![feature(no_core, asm_experimental_arch)] +#![no_core] + +extern crate minicore; +use minicore::*; + +// CHECK-LABEL: @flags_clobber +// CHECK: call void asm sideeffect "", "~{psr}"() +#[no_mangle] +pub unsafe fn flags_clobber() { + asm!("", options(nostack, nomem)); +} + +// CHECK-LABEL: @no_clobber +// CHECK: call void asm sideeffect "", ""() +#[no_mangle] +pub unsafe fn no_clobber() { + asm!("", options(nostack, nomem, preserves_flags)); +} |
