diff options
Diffstat (limited to 'src/compiler/codegen/MethodBitcode.cc')
| -rw-r--r-- | src/compiler/codegen/MethodBitcode.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compiler/codegen/MethodBitcode.cc b/src/compiler/codegen/MethodBitcode.cc index 055a99d0ec..6f2c52d97d 100644 --- a/src/compiler/codegen/MethodBitcode.cc +++ b/src/compiler/codegen/MethodBitcode.cc @@ -608,6 +608,10 @@ void convertInvoke(CompilationUnit* cUnit, BasicBlock* bb, MIR* mir, llvm::Value* res = cUnit->irb->CreateCall(intr, args); if (info->result.location != kLocInvalid) { defineValue(cUnit, res, info->result.origSReg); + if (info->result.ref) { + setShadowFrameEntry(cUnit, (llvm::Value*) + cUnit->llvmValues.elemList[info->result.origSReg]); + } } } |