Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(36)

Side by Side Diff: src/hydrogen.h

Issue 1306993003: Call JS functions via native context instead of js builtins object. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: rebase Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/harmony-spread.js ('k') | src/hydrogen.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_HYDROGEN_H_ 5 #ifndef V8_HYDROGEN_H_
6 #define V8_HYDROGEN_H_ 6 #define V8_HYDROGEN_H_
7 7
8 #include "src/accessors.h" 8 #include "src/accessors.h"
9 #include "src/allocation.h" 9 #include "src/allocation.h"
10 #include "src/ast.h" 10 #include "src/ast.h"
(...skipping 1985 matching lines...) Expand 10 before | Expand all | Expand 10 after
1996 1996
1997 1997
1998 template<> 1998 template<>
1999 inline HInstruction* HGraphBuilder::AddUncasted<HReturn>(HConstant* value) { 1999 inline HInstruction* HGraphBuilder::AddUncasted<HReturn>(HConstant* value) {
2000 return Add<HReturn>(value); 2000 return Add<HReturn>(value);
2001 } 2001 }
2002 2002
2003 2003
2004 template<> 2004 template<>
2005 inline HCallRuntime* HGraphBuilder::Add<HCallRuntime>( 2005 inline HCallRuntime* HGraphBuilder::Add<HCallRuntime>(
2006 Handle<String> name,
2007 const Runtime::Function* c_function, 2006 const Runtime::Function* c_function,
2008 int argument_count) { 2007 int argument_count) {
2009 HCallRuntime* instr = New<HCallRuntime>(name, c_function, argument_count); 2008 HCallRuntime* instr = New<HCallRuntime>(c_function, argument_count);
2010 if (graph()->info()->IsStub()) { 2009 if (graph()->info()->IsStub()) {
2011 // When compiling code stubs, we don't want to save all double registers 2010 // When compiling code stubs, we don't want to save all double registers
2012 // upon entry to the stub, but instead have the call runtime instruction 2011 // upon entry to the stub, but instead have the call runtime instruction
2013 // save the double registers only on-demand (in the fallback case). 2012 // save the double registers only on-demand (in the fallback case).
2014 instr->set_save_doubles(kSaveFPRegs); 2013 instr->set_save_doubles(kSaveFPRegs);
2015 } 2014 }
2016 AddInstruction(instr); 2015 AddInstruction(instr);
2017 return instr; 2016 return instr;
2018 } 2017 }
2019 2018
2020 2019
2021 template<> 2020 template<>
2022 inline HInstruction* HGraphBuilder::AddUncasted<HCallRuntime>( 2021 inline HInstruction* HGraphBuilder::AddUncasted<HCallRuntime>(
2023 Handle<String> name, 2022 Handle<String> name,
2024 const Runtime::Function* c_function, 2023 const Runtime::Function* c_function,
2025 int argument_count) { 2024 int argument_count) {
2026 return Add<HCallRuntime>(name, c_function, argument_count); 2025 return Add<HCallRuntime>(c_function, argument_count);
2027 } 2026 }
2028 2027
2029 2028
2030 template<> 2029 template<>
2031 inline HContext* HGraphBuilder::New<HContext>() { 2030 inline HContext* HGraphBuilder::New<HContext>() {
2032 return HContext::New(zone()); 2031 return HContext::New(zone());
2033 } 2032 }
2034 2033
2035 2034
2036 template<> 2035 template<>
(...skipping 1007 matching lines...) Expand 10 before | Expand all | Expand 10 after
3044 } 3043 }
3045 3044
3046 private: 3045 private:
3047 HGraphBuilder* builder_; 3046 HGraphBuilder* builder_;
3048 }; 3047 };
3049 3048
3050 3049
3051 } } // namespace v8::internal 3050 } } // namespace v8::internal
3052 3051
3053 #endif // V8_HYDROGEN_H_ 3052 #endif // V8_HYDROGEN_H_
OLDNEW
« no previous file with comments | « src/harmony-spread.js ('k') | src/hydrogen.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698