diff options
| author | kadmin <julianknodt@gmail.com> | 2020-12-29 02:00:04 +0000 |
|---|---|---|
| committer | kadmin <julianknodt@gmail.com> | 2021-03-09 16:54:14 +0000 |
| commit | 982382dc0361aa19e2f7e1e2b02003320d34b502 (patch) | |
| tree | fcdd29dca8dfbc300b4ef2684e9e3d50d81049c7 /compiler/rustc_codegen_cranelift | |
| parent | 37a6c04718b9e8577b92aff2ab58a5c69a6c822a (diff) | |
| download | rust-982382dc0361aa19e2f7e1e2b02003320d34b502.tar.gz rust-982382dc0361aa19e2f7e1e2b02003320d34b502.zip | |
Update cranelift
Diffstat (limited to 'compiler/rustc_codegen_cranelift')
| -rw-r--r-- | compiler/rustc_codegen_cranelift/src/base.rs | 10 | ||||
| -rw-r--r-- | compiler/rustc_codegen_cranelift/src/lib.rs | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_cranelift/src/base.rs b/compiler/rustc_codegen_cranelift/src/base.rs index f2c61c95f4f..ba7c82d24c5 100644 --- a/compiler/rustc_codegen_cranelift/src/base.rs +++ b/compiler/rustc_codegen_cranelift/src/base.rs @@ -832,6 +832,16 @@ fn codegen_stmt<'tcx>( } } StatementKind::Coverage { .. } => fx.tcx.sess.fatal("-Zcoverage is unimplemented"), + StatementKind::CopyNonOverlapping(box rustc_middle::mir::CopyNonOverlapping { + src, + dst, + count, + }) => { + let dst = codegen_operand(fx, dst).load_scalar(fx); + let src = codegen_operand(fx, src).load_scalar(fx); + let count = codegen_operand(fx, count).load_scalar(fx); + fx.bcx.call_memcpy(fx.cx.module.target_config(), dst, src, count); + } } } diff --git a/compiler/rustc_codegen_cranelift/src/lib.rs b/compiler/rustc_codegen_cranelift/src/lib.rs index 8edb883ccb5..fae71fef9e6 100644 --- a/compiler/rustc_codegen_cranelift/src/lib.rs +++ b/compiler/rustc_codegen_cranelift/src/lib.rs @@ -11,6 +11,7 @@ #![warn(rust_2018_idioms)] #![warn(unused_lifetimes)] #![warn(unreachable_pub)] +#![feature(box_patterns)] extern crate snap; #[macro_use] |
