forked from OSchip/llvm-project
Fix a use-of-undefined, IRgen expects the RValue for "void" to be a scalar RValue.
llvm-svn: 72504
This commit is contained in:
parent
14f5c132c1
commit
16f422ec86
|
@ -475,7 +475,7 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
|
|||
const llvm::Type *ElTy =
|
||||
cast<llvm::PointerType>(Ptr->getType())->getElementType();
|
||||
Builder.CreateStore(llvm::Constant::getNullValue(ElTy), Ptr, true);
|
||||
return RValue();
|
||||
return RValue::get(0);
|
||||
}
|
||||
|
||||
case Builtin::BI__sync_synchronize: {
|
||||
|
@ -483,7 +483,7 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
|
|||
C[0] = C[1] = C[2] = C[3] = llvm::ConstantInt::get(llvm::Type::Int1Ty, 1);
|
||||
C[4] = ConstantInt::get(llvm::Type::Int1Ty, 0);
|
||||
Builder.CreateCall(CGM.getIntrinsic(Intrinsic::memory_barrier), C, C + 5);
|
||||
return RValue();
|
||||
return RValue::get(0);
|
||||
}
|
||||
|
||||
// Library functions with special handling.
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
int atomic(void)
|
||||
{
|
||||
// nonsenical test for sync functions
|
||||
// non-sensical test for sync functions
|
||||
int old;
|
||||
int val = 1;
|
||||
char valc = 1;
|
||||
|
|
Loading…
Reference in New Issue