For PR1284:

Implement the "part_set" intrinsic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35938 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer
2007-04-12 02:48:46 +00:00
parent 78732c2d8a
commit f75b874957
4 changed files with 207 additions and 16 deletions

View File

@@ -1028,13 +1028,14 @@ void Verifier::VerifyIntrinsicPrototype(Intrinsic::ID ID, Function *F, ...) {
if (GotBits < 16 || GotBits % 16 != 0)
CheckFailed("Intrinsic requires even byte width argument", F);
/* FALL THROUGH */
case Intrinsic::part_set:
case Intrinsic::part_select:
if (ArgNo == 1) {
unsigned ResultBits =
cast<IntegerType>(FTy->getReturnType())->getBitWidth();
if (GotBits != ResultBits)
CheckFailed("Intrinsic requires parameter and result bit "
"widths to match", F);
CheckFailed("Intrinsic requires the bit widths of the first "
"parameter and the result to match", F);
}
break;
}