Pointer width for PIC16 is 16 bits. Modify getMemCpy, getMemMove and getMemSet accordingly.

llvm-svn: 59613
This commit is contained in:
Sanjiv Gupta
2008-11-19 09:02:07 +00:00
parent 839679afda
commit f99d54498a

View File

@@ -760,6 +760,7 @@ llvm::Function *CodeGenModule::getMemCpyFn() {
llvm::Intrinsic::ID IID;
switch (Context.Target.getPointerWidth(0)) {
default: assert(0 && "Unknown ptr width");
case 16: IID = llvm::Intrinsic::memcpy_i16; break;
case 32: IID = llvm::Intrinsic::memcpy_i32; break;
case 64: IID = llvm::Intrinsic::memcpy_i64; break;
}
@@ -771,6 +772,7 @@ llvm::Function *CodeGenModule::getMemMoveFn() {
llvm::Intrinsic::ID IID;
switch (Context.Target.getPointerWidth(0)) {
default: assert(0 && "Unknown ptr width");
case 16: IID = llvm::Intrinsic::memmove_i16; break;
case 32: IID = llvm::Intrinsic::memmove_i32; break;
case 64: IID = llvm::Intrinsic::memmove_i64; break;
}
@@ -782,6 +784,7 @@ llvm::Function *CodeGenModule::getMemSetFn() {
llvm::Intrinsic::ID IID;
switch (Context.Target.getPointerWidth(0)) {
default: assert(0 && "Unknown ptr width");
case 16: IID = llvm::Intrinsic::memset_i16; break;
case 32: IID = llvm::Intrinsic::memset_i32; break;
case 64: IID = llvm::Intrinsic::memset_i64; break;
}