diff options
Diffstat (limited to 'lib/Bytecode/Reader/Reader.cpp')
-rw-r--r-- | lib/Bytecode/Reader/Reader.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Bytecode/Reader/Reader.cpp b/lib/Bytecode/Reader/Reader.cpp index 82a73fa599..24875e42fd 100644 --- a/lib/Bytecode/Reader/Reader.cpp +++ b/lib/Bytecode/Reader/Reader.cpp @@ -720,6 +720,7 @@ void BytecodeReader::ParseInstruction(std::vector<unsigned> &Oprnds, break; } + case 61: // tail call case Instruction::Call: { if (Oprnds.size() == 0) error("Invalid call instruction encountered!"); @@ -765,6 +766,7 @@ void BytecodeReader::ParseInstruction(std::vector<unsigned> &Oprnds, } Result = new CallInst(F, Params); + if (Opcode == 61) cast<CallInst>(Result)->setTailCall(true); break; } case Instruction::Invoke: { |