Browse Source

adjusted memcpy

Nicolas Winkler 6 years ago
parent
commit
7dcc9e3838
1 changed files with 3 additions and 1 deletions
  1. 3 1
      src/CodegenVisitor.cpp

+ 3 - 1
src/CodegenVisitor.cpp

@@ -503,7 +503,9 @@ llvm::Value* StatementVisitor::visit(sem::AssignmentStatement& assignment,
     
     
     if (val->getType()->isPointerTy() && val->getType()->getPointerElementType()->isStructTy()) {
     if (val->getType()->isPointerTy() && val->getType()->getPointerElementType()->isStructTy()) {
         const llvm::DataLayout& layout = fg.builder.GetInsertBlock()->getModule()->getDataLayout();
         const llvm::DataLayout& layout = fg.builder.GetInsertBlock()->getModule()->getDataLayout();
-        return fg.builder.CreateMemCpy(target, val, layout.getTypeAllocSize(val->getType()->getPointerElementType()), 1);
+        return fg.builder.CreateMemCpy(target, 1, val, 1, layout.getTypeAllocSize(val->getType()->getPointerElementType()), false);
+        //llvm::Intrinsic::memcpy_element_unordered_atomic
+        //return fg.builder.CreateMemMove(target, val, layout.getTypeAllocSize(val->getType()->getPointerElementType()), 1);
     }
     }
     else {
     else {
         return fg.builder.CreateStore(val, target);
         return fg.builder.CreateStore(val, target);