From: Sanjiv Gupta Date: Wed, 19 Nov 2008 09:02:07 +0000 (+0000) Subject: Pointer width for PIC16 is 16 bits. Modify getMemCpy, getMemMove and getMemSet accord... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8fbc1540966901a0b2b033c92f4c4257c08621f8;p=clang Pointer width for PIC16 is 16 bits. Modify getMemCpy, getMemMove and getMemSet accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59613 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp index dd46f91d74..7ea52deb2a 100644 --- a/lib/CodeGen/CodeGenModule.cpp +++ b/lib/CodeGen/CodeGenModule.cpp @@ -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; }