Index: src/hydrogen.h |
diff --git a/src/hydrogen.h b/src/hydrogen.h |
index 7516e9c55e6f4cc729db665f68024e6107317124..415e9a40d767214fce379e2426f2a1f45d0d26bb 100644 |
--- a/src/hydrogen.h |
+++ b/src/hydrogen.h |
@@ -1633,6 +1633,23 @@ inline HInstruction* HGraphBuilder::AddUncasted<HReturn>(HConstant* value) { |
template<> |
+inline HInstruction* HGraphBuilder::AddUncasted<HCallRuntime>( |
+ Handle<String> name, |
+ const Runtime::Function* c_function, |
+ int argument_count) { |
+ HCallRuntime* instr = New<HCallRuntime>(name, c_function, argument_count); |
+ if (graph()->info()->IsStub()) { |
+ // When compiling code stubs, we don't want to save all double registers |
+ // upon entry to the stub, but instead have the call runtime instruction |
+ // save the double registers only on-demand (in the fallback case). |
+ instr->set_save_doubles(kSaveFPRegs); |
+ } |
+ AddInstruction(instr); |
+ return instr; |
+} |
+ |
+ |
+template<> |
inline HInstruction* HGraphBuilder::NewUncasted<HContext>() { |
return HContext::New(zone()); |
} |