Commit 6de98e5a authored by Marius Wachtler's avatar Marius Wachtler

Merge pull request #1156 from undingen/bjit_recordType

bjit: directly emit recordType again
parents 1e2ba218 f690f713
...@@ -881,15 +881,11 @@ std::pair<RewriterVar*, RewriterAction*> JitFragmentWriter::emitPPCall(void* fun ...@@ -881,15 +881,11 @@ std::pair<RewriterVar*, RewriterAction*> JitFragmentWriter::emitPPCall(void* fun
}, args, ActionType::NORMAL); }, args, ActionType::NORMAL);
if (type_recorder) { if (type_recorder) {
RewriterVar* type_recorder_var = imm(type_recorder); RewriterVar* type_recorder_var = imm(type_recorder);
/*
TODO use call for now because this code is broken because it does not check if result is null
RewriterVar* obj_cls_var = result->getAttr(offsetof(Box, cls)); RewriterVar* obj_cls_var = result->getAttr(offsetof(Box, cls));
addAction([=]() { _emitRecordType(type_recorder_var, obj_cls_var); }, { type_recorder_var, obj_cls_var }, addAction([=]() { _emitRecordType(type_recorder_var, obj_cls_var); }, { type_recorder_var, obj_cls_var },
ActionType::NORMAL); ActionType::NORMAL);
*/ result->refUsed();
call(false, (void*)recordType, type_recorder_var, result);
emitPendingCallsCheck(); emitPendingCallsCheck();
return std::make_pair(result, call_action); return std::make_pair(result, call_action);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment