Commit 676ab98b authored by Travis Hance's avatar Travis Hance

simplify the loadConst function, it doesn't need to initialize in a register

parent e3850872
...@@ -620,21 +620,11 @@ RewriterVar* Rewriter::loadConst(int64_t val, Location dest) { ...@@ -620,21 +620,11 @@ RewriterVar* Rewriter::loadConst(int64_t val, Location dest) {
return var; return var;
} else { } else {
RewriterVar* result = createNewConstantVar(val); RewriterVar* result = createNewConstantVar(val);
addAction([=]() { this->_loadConst(result, val, dest); }, {}, ActionType::NORMAL);
const_loader_var = result; const_loader_var = result;
return result; return result;
} }
} }
void Rewriter::_loadConst(RewriterVar* result, int64_t val, Location dest) {
assembler::Register reg = allocReg(dest);
const_loader.loadConstIntoReg(val, reg);
result->initializeInReg(reg);
result->releaseIfNoUses();
assertConsistent();
}
RewriterVar* Rewriter::call(bool can_call_into_python, void* func_addr) { RewriterVar* Rewriter::call(bool can_call_into_python, void* func_addr) {
RewriterVar::SmallVector args; RewriterVar::SmallVector args;
RewriterVar::SmallVector args_xmm; RewriterVar::SmallVector args_xmm;
......
...@@ -420,7 +420,7 @@ private: ...@@ -420,7 +420,7 @@ private:
bool finishAssembly(ICSlotInfo* picked_slot, int continue_offset) override; bool finishAssembly(ICSlotInfo* picked_slot, int continue_offset) override;
void _trap(); void _trap();
void _loadConst(RewriterVar* result, int64_t val, Location loc); void _loadConst(RewriterVar* result, int64_t val);
void _call(RewriterVar* result, bool can_call_into_python, void* func_addr, const RewriterVar::SmallVector& args, void _call(RewriterVar* result, bool can_call_into_python, void* func_addr, const RewriterVar::SmallVector& args,
const RewriterVar::SmallVector& args_xmm); const RewriterVar::SmallVector& args_xmm);
void _add(RewriterVar* result, RewriterVar* a, int64_t b, Location dest); void _add(RewriterVar* result, RewriterVar* a, int64_t b, Location dest);
......
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