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

Side by Side Diff: src/x64/macro-assembler-x64.h

Issue 7039036: Fix calls of strict mode function with an implicit receiver. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Address comments. Get rid of value check. 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
234 void InitializeRootRegister() { 234 void InitializeRootRegister() {
235 ExternalReference roots_address = 235 ExternalReference roots_address =
236 ExternalReference::roots_address(isolate()); 236 ExternalReference::roots_address(isolate());
237 movq(kRootRegister, roots_address); 237 movq(kRootRegister, roots_address);
238 addq(kRootRegister, Immediate(kRootRegisterBias)); 238 addq(kRootRegister, Immediate(kRootRegisterBias));
239 } 239 }
240 240
241 // --------------------------------------------------------------------------- 241 // ---------------------------------------------------------------------------
242 // JavaScript invokes 242 // JavaScript invokes
243 243
244 // Setup implicit/explicit receiver marking in specified register.
245 void SetReceiverType(Register dst, ReceiverType type);
246
244 // Invoke the JavaScript function code by either calling or jumping. 247 // Invoke the JavaScript function code by either calling or jumping.
245 void InvokeCode(Register code, 248 void InvokeCode(Register code,
246 const ParameterCount& expected, 249 const ParameterCount& expected,
247 const ParameterCount& actual, 250 const ParameterCount& actual,
248 InvokeFlag flag, 251 InvokeFlag flag,
249 const CallWrapper& call_wrapper = NullCallWrapper()); 252 const CallWrapper& call_wrapper = NullCallWrapper());
250 253
251 void InvokeCode(Handle<Code> code, 254 void InvokeCode(Handle<Code> code,
252 const ParameterCount& expected, 255 const ParameterCount& expected,
253 const ParameterCount& actual, 256 const ParameterCount& actual,
(...skipping 1016 matching lines...) Expand 10 before | Expand all | Expand 10 after
1270 masm->popfd(); \ 1273 masm->popfd(); \
1271 } \ 1274 } \
1272 masm-> 1275 masm->
1273 #else 1276 #else
1274 #define ACCESS_MASM(masm) masm-> 1277 #define ACCESS_MASM(masm) masm->
1275 #endif 1278 #endif
1276 1279
1277 } } // namespace v8::internal 1280 } } // namespace v8::internal
1278 1281
1279 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ 1282 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698