On Wed, 2007-04-04 at 17:38 -0700, Chris Lattner wrote: > > Implement the llvm.bit.part_select.iN.iN.iN overloaded intrinsic. > > Should this check that the third type is smaller than the other two?
No, because that commit comment is in error. I was thinking of the prototype for part_set (which I deleted from the implementation just before commit). The prototype is actually like this: declare i17 @llvm.bit.part_select.i17.i17 (i17 %val, i32 %loBit, i32 % hiBit) which only has two variable parts: result, 1st arg. And those two must be the same width which is what this patch does. The other parameters are i32. Reid. > > -Chris > > > > > --- > > Diffs of the changes: (+2 -0) > > > > Verifier.cpp | 2 ++ > > 1 files changed, 2 insertions(+) > > > > > > Index: llvm/lib/VMCore/Verifier.cpp > > diff -u llvm/lib/VMCore/Verifier.cpp:1.198 llvm/lib/VMCore/ > > Verifier.cpp:1.199 > > --- llvm/lib/VMCore/Verifier.cpp:1.198 Sun Apr 1 02:22:57 2007 > > +++ llvm/lib/VMCore/Verifier.cpp Wed Apr 4 18:48:25 2007 > > @@ -1027,6 +1027,8 @@ > > case Intrinsic::bswap: > > if (GotBits < 16 || GotBits % 16 != 0) > > CheckFailed("Intrinsic requires even byte width > > argument", F); > > + /* FALL THROUGH */ > > + case Intrinsic::bit_part_select: > > if (ArgNo == 1) { > > unsigned ResultBits = > > cast<IntegerType>(FTy->getReturnType())->getBitWidth(); > > > > > > > > _______________________________________________ > > llvm-commits mailing list > > llvm-commits@cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits > > _______________________________________________ > llvm-commits mailing list > llvm-commits@cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
signature.asc
Description: This is a digitally signed message part
_______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits