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

Unified Diff: src/x64/full-codegen-x64.cc

Issue 7068009: Pass undefined to JS builtins when called with implicit receiver. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 9 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: src/x64/full-codegen-x64.cc
diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc
index 329fd18dc47cbbde28cd7a16e274d84159cda4e1..78ae5ddbe8b49cdbbc600ba4e60283af4f1c2f18 100644
--- a/src/x64/full-codegen-x64.cc
+++ b/src/x64/full-codegen-x64.cc
@@ -131,11 +131,11 @@ void FullCodeGenerator::Generate(CompilationInfo* info) {
}
#endif
- // Strict mode functions need to replace the receiver with undefined
- // when called as functions (without an explicit receiver
- // object). rcx is zero for method calls and non-zero for function
- // calls.
- if (info->is_strict_mode()) {
+ // Strict mode functions and builtins need to replace the receiver
+ // with undefined when called as functions (without an explicit
+ // receiver object). rcx is zero for method calls and non-zero for
+ // function calls.
Lasse Reichstein 2011/05/26 08:26:55 Do we know, or could we make sure we know, that th
Mads Ager (chromium) 2011/05/26 10:14:07 Yes, we could. Currently, we use a valid smi which
+ if (info->is_strict_mode() || info->is_es5_native()) {
Label ok;
__ testq(rcx, rcx);
__ j(zero, &ok, Label::kNear);

Powered by Google App Engine
This is Rietveld 408576698