Fix misencoding of calling conventions
authorChris Lattner <sabre@nondot.org>
Fri, 19 May 2006 21:57:37 +0000 (21:57 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 19 May 2006 21:57:37 +0000 (21:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28411 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Bytecode/Writer/Writer.cpp

index 80abcacee97d6f09e4ea9ccddb2c24be123727ff..4ec6b2a41e85a56a08215719e4d3ae1053413ee8 100644 (file)
@@ -734,8 +734,9 @@ void BytecodeWriter::outputInstruction(const Instruction &I) {
       // If this is the escape sequence for call, emit the tailcall/cc info.
       const CallInst &CI = cast<CallInst>(I);
       ++NumOperands;
-      if (NumOperands < 3) {
-        Slots[NumOperands-1] = (CI.getCallingConv() << 1)|unsigned(CI.isTailCall());
+      if (NumOperands <= 3) {
+        Slots[NumOperands-1] =
+          (CI.getCallingConv() << 1)|unsigned(CI.isTailCall());
         if (Slots[NumOperands-1] > MaxOpSlot)
           MaxOpSlot = Slots[NumOperands-1];
       }