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

Side by Side Diff: src/crankshaft/hydrogen.cc

Issue 1809993002: Provide optimized support for the %GetOrdinaryHasInstance intrinsic. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@bare-4774-fix
Patch Set: Fix release build compile error. Created 4 years, 9 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
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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 #include "src/crankshaft/hydrogen.h" 5 #include "src/crankshaft/hydrogen.h"
6 6
7 #include <sstream> 7 #include <sstream>
8 8
9 #include "src/allocation-site-scopes.h" 9 #include "src/allocation-site-scopes.h"
10 #include "src/ast/ast-numbering.h" 10 #include "src/ast/ast-numbering.h"
(...skipping 12868 matching lines...) Expand 10 before | Expand all | Expand 10 after
12879 12879
12880 void HOptimizedGraphBuilder::GenerateDebugIsActive(CallRuntime* call) { 12880 void HOptimizedGraphBuilder::GenerateDebugIsActive(CallRuntime* call) {
12881 DCHECK(call->arguments()->length() == 0); 12881 DCHECK(call->arguments()->length() == 0);
12882 HValue* ref = 12882 HValue* ref =
12883 Add<HConstant>(ExternalReference::debug_is_active_address(isolate())); 12883 Add<HConstant>(ExternalReference::debug_is_active_address(isolate()));
12884 HValue* value = 12884 HValue* value =
12885 Add<HLoadNamedField>(ref, nullptr, HObjectAccess::ForExternalUInteger8()); 12885 Add<HLoadNamedField>(ref, nullptr, HObjectAccess::ForExternalUInteger8());
12886 return ast_context()->ReturnValue(value); 12886 return ast_context()->ReturnValue(value);
12887 } 12887 }
12888 12888
12889 void HOptimizedGraphBuilder::GenerateGetOrdinaryHasInstance(CallRuntime* call) {
12890 DCHECK(call->arguments()->length() == 0);
12891 // ordinary_has_instance is immutable so we can treat it as a constant.
12892 HValue* value = Add<HConstant>(
12893 handle(isolate()->native_context()->ordinary_has_instance()));
12894 return ast_context()->ReturnValue(value);
12895 }
12889 12896
12890 #undef CHECK_BAILOUT 12897 #undef CHECK_BAILOUT
12891 #undef CHECK_ALIVE 12898 #undef CHECK_ALIVE
12892 12899
12893 12900
12894 HEnvironment::HEnvironment(HEnvironment* outer, 12901 HEnvironment::HEnvironment(HEnvironment* outer,
12895 Scope* scope, 12902 Scope* scope,
12896 Handle<JSFunction> closure, 12903 Handle<JSFunction> closure,
12897 Zone* zone) 12904 Zone* zone)
12898 : closure_(closure), 12905 : closure_(closure),
(...skipping 621 matching lines...) Expand 10 before | Expand all | Expand 10 after
13520 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); 13527 isolate()->GetHTracer()->TraceHydrogen(name(), graph_);
13521 } 13528 }
13522 13529
13523 #ifdef DEBUG 13530 #ifdef DEBUG
13524 graph_->Verify(false); // No full verify. 13531 graph_->Verify(false); // No full verify.
13525 #endif 13532 #endif
13526 } 13533 }
13527 13534
13528 } // namespace internal 13535 } // namespace internal
13529 } // namespace v8 13536 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698