@@ -730,8 +730,7 @@ void irgen::emitBuiltinCall(IRGenFunction &IGF, const BuiltinInfo &Builtin,
730730 newval = IGF.Builder .CreatePtrToInt (newval, IGF.IGM .IntPtrTy );
731731 }
732732
733- pointer = IGF.Builder .CreateBitCast (pointer,
734- llvm::PointerType::getUnqual (cmp->getType ()));
733+ pointer = IGF.Builder .CreateBitCast (pointer, IGM.PtrTy );
735734 llvm::Value *value = IGF.Builder .CreateAtomicCmpXchg (
736735 pointer, cmp, newval, llvm::MaybeAlign (),
737736 successOrdering, failureOrdering,
@@ -799,8 +798,7 @@ void irgen::emitBuiltinCall(IRGenFunction &IGF, const BuiltinInfo &Builtin,
799798 if (origTy->isPointerTy ())
800799 val = IGF.Builder .CreatePtrToInt (val, IGF.IGM .IntPtrTy );
801800
802- pointer = IGF.Builder .CreateBitCast (pointer,
803- llvm::PointerType::getUnqual (val->getType ()));
801+ pointer = IGF.Builder .CreateBitCast (pointer, IGM.PtrTy );
804802 llvm::Value *value = IGF.Builder .CreateAtomicRMW (
805803 SubOpcode, pointer, val, llvm::MaybeAlign (), ordering,
806804 isSingleThread ? llvm::SyncScope::SingleThread
0 commit comments