@@ -730,8 +730,7 @@ void irgen::emitBuiltinCall(IRGenFunction &IGF, const BuiltinInfo &Builtin,
730
730
newval = IGF.Builder .CreatePtrToInt (newval, IGF.IGM .IntPtrTy );
731
731
}
732
732
733
- pointer = IGF.Builder .CreateBitCast (pointer,
734
- llvm::PointerType::getUnqual (cmp->getType ()));
733
+ pointer = IGF.Builder .CreateBitCast (pointer, IGM.PtrTy );
735
734
llvm::Value *value = IGF.Builder .CreateAtomicCmpXchg (
736
735
pointer, cmp, newval, llvm::MaybeAlign (),
737
736
successOrdering, failureOrdering,
@@ -799,8 +798,7 @@ void irgen::emitBuiltinCall(IRGenFunction &IGF, const BuiltinInfo &Builtin,
799
798
if (origTy->isPointerTy ())
800
799
val = IGF.Builder .CreatePtrToInt (val, IGF.IGM .IntPtrTy );
801
800
802
- pointer = IGF.Builder .CreateBitCast (pointer,
803
- llvm::PointerType::getUnqual (val->getType ()));
801
+ pointer = IGF.Builder .CreateBitCast (pointer, IGM.PtrTy );
804
802
llvm::Value *value = IGF.Builder .CreateAtomicRMW (
805
803
SubOpcode, pointer, val, llvm::MaybeAlign (), ordering,
806
804
isSingleThread ? llvm::SyncScope::SingleThread
0 commit comments