OLD | NEW |
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_X64_MACRO_ASSEMBLER_X64_H_ | 5 #ifndef V8_X64_MACRO_ASSEMBLER_X64_H_ |
6 #define V8_X64_MACRO_ASSEMBLER_X64_H_ | 6 #define V8_X64_MACRO_ASSEMBLER_X64_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/bailout-reason.h" | 9 #include "src/bailout-reason.h" |
10 #include "src/base/flags.h" | 10 #include "src/base/flags.h" |
(...skipping 1408 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1419 void set_generating_stub(bool value) { generating_stub_ = value; } | 1419 void set_generating_stub(bool value) { generating_stub_ = value; } |
1420 bool generating_stub() { return generating_stub_; } | 1420 bool generating_stub() { return generating_stub_; } |
1421 void set_has_frame(bool value) { has_frame_ = value; } | 1421 void set_has_frame(bool value) { has_frame_ = value; } |
1422 bool has_frame() { return has_frame_; } | 1422 bool has_frame() { return has_frame_; } |
1423 inline bool AllowThisStubCall(CodeStub* stub); | 1423 inline bool AllowThisStubCall(CodeStub* stub); |
1424 | 1424 |
1425 static int SafepointRegisterStackIndex(Register reg) { | 1425 static int SafepointRegisterStackIndex(Register reg) { |
1426 return SafepointRegisterStackIndex(reg.code()); | 1426 return SafepointRegisterStackIndex(reg.code()); |
1427 } | 1427 } |
1428 | 1428 |
| 1429 // Load the type feedback vector from a JavaScript frame. |
| 1430 void EmitLoadTypeFeedbackVector(Register vector); |
| 1431 |
1429 // Activation support. | 1432 // Activation support. |
1430 void EnterFrame(StackFrame::Type type); | 1433 void EnterFrame(StackFrame::Type type); |
1431 void EnterFrame(StackFrame::Type type, bool load_constant_pool_pointer_reg); | 1434 void EnterFrame(StackFrame::Type type, bool load_constant_pool_pointer_reg); |
1432 void LeaveFrame(StackFrame::Type type); | 1435 void LeaveFrame(StackFrame::Type type); |
1433 | 1436 |
1434 // Expects object in rax and returns map with validated enum cache | 1437 // Expects object in rax and returns map with validated enum cache |
1435 // in rax. Assumes that any other register can be used as a scratch. | 1438 // in rax. Assumes that any other register can be used as a scratch. |
1436 void CheckEnumCache(Register null_value, | 1439 void CheckEnumCache(Register null_value, |
1437 Label* call_runtime); | 1440 Label* call_runtime); |
1438 | 1441 |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1633 masm->popfq(); \ | 1636 masm->popfq(); \ |
1634 } \ | 1637 } \ |
1635 masm-> | 1638 masm-> |
1636 #else | 1639 #else |
1637 #define ACCESS_MASM(masm) masm-> | 1640 #define ACCESS_MASM(masm) masm-> |
1638 #endif | 1641 #endif |
1639 | 1642 |
1640 } } // namespace v8::internal | 1643 } } // namespace v8::internal |
1641 | 1644 |
1642 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ | 1645 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ |
OLD | NEW |