forked from OSchip/llvm-project
Fix IRgen of __builtin_memset.
- Fix test case to not only have negative tests. llvm-svn: 64674
This commit is contained in:
parent
58b0589d73
commit
e28b359881
|
@ -280,7 +280,8 @@ RValue CodeGenFunction::EmitBuiltinExpr(unsigned BuiltinID, const CallExpr *E) {
|
|||
case Builtin::BI__builtin_memset: {
|
||||
Value *Address = EmitScalarExpr(E->getArg(0));
|
||||
Builder.CreateCall4(CGM.getMemSetFn(), Address,
|
||||
EmitScalarExpr(E->getArg(1)),
|
||||
Builder.CreateTrunc(EmitScalarExpr(E->getArg(1)),
|
||||
llvm::Type::Int8Ty),
|
||||
EmitScalarExpr(E->getArg(2)),
|
||||
llvm::ConstantInt::get(llvm::Type::Int32Ty, 1));
|
||||
return RValue::get(Address);
|
||||
|
|
|
@ -1,4 +1,8 @@
|
|||
// RUN: clang -emit-llvm -o - %s | not grep __builtin
|
||||
// RUN: clang -arch i386 -emit-llvm -o %t %s &&
|
||||
// RUN: grep '@llvm.memset.i32' %t &&
|
||||
// RUN: grep '@llvm.memcpy.i32' %t &&
|
||||
// RUN: grep '@llvm.memmove.i32' %t &&
|
||||
// RUN: grep __builtin %t | count 0
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
unsigned char a = 0x11223344;
|
||||
|
|
Loading…
Reference in New Issue