diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2020-01-05 22:32:15 +0100 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-02-12 15:30:51 +0100 |
| commit | 03a73fa2cf5688a12fa5557170945a2a7c27436e (patch) | |
| tree | f1c6a93c49e1500b93cdb8dc700b89984fd23445 /src/rustllvm/RustWrapper.cpp | |
| parent | cd5441faf4e56d136d7c05d5eb55b4a41396edaf (diff) | |
| download | rust-03a73fa2cf5688a12fa5557170945a2a7c27436e.tar.gz rust-03a73fa2cf5688a12fa5557170945a2a7c27436e.zip | |
Use IRBuilder to create memset
To avoid creating memsets with outdated signature. For some reason SROA chokes on this when using NewPM.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
| -rw-r--r-- | src/rustllvm/RustWrapper.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/rustllvm/RustWrapper.cpp b/src/rustllvm/RustWrapper.cpp index 46e467011b9..49b6e1bfec3 100644 --- a/src/rustllvm/RustWrapper.cpp +++ b/src/rustllvm/RustWrapper.cpp @@ -1296,6 +1296,14 @@ extern "C" LLVMValueRef LLVMRustBuildMemMove(LLVMBuilderRef B, #endif } +extern "C" LLVMValueRef LLVMRustBuildMemSet(LLVMBuilderRef B, + LLVMValueRef Dst, unsigned DstAlign, + LLVMValueRef Val, + LLVMValueRef Size, bool IsVolatile) { + return wrap(unwrap(B)->CreateMemSet( + unwrap(Dst), unwrap(Val), unwrap(Size), DstAlign, IsVolatile)); +} + extern "C" LLVMValueRef LLVMRustBuildInvoke(LLVMBuilderRef B, LLVMValueRef Fn, LLVMValueRef *Args, unsigned NumArgs, LLVMBasicBlockRef Then, |
