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/frames.h" | 9 #include "src/frames.h" |
10 #include "src/globals.h" | 10 #include "src/globals.h" |
(...skipping 1015 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1026 void SlowTruncateToI(Register result_reg, Register input_reg, | 1026 void SlowTruncateToI(Register result_reg, Register input_reg, |
1027 int offset = HeapNumber::kValueOffset - kHeapObjectTag); | 1027 int offset = HeapNumber::kValueOffset - kHeapObjectTag); |
1028 | 1028 |
1029 void TruncateHeapNumberToI(Register result_reg, Register input_reg); | 1029 void TruncateHeapNumberToI(Register result_reg, Register input_reg); |
1030 void TruncateDoubleToI(Register result_reg, XMMRegister input_reg); | 1030 void TruncateDoubleToI(Register result_reg, XMMRegister input_reg); |
1031 | 1031 |
1032 void DoubleToI(Register result_reg, XMMRegister input_reg, | 1032 void DoubleToI(Register result_reg, XMMRegister input_reg, |
1033 XMMRegister scratch, MinusZeroMode minus_zero_mode, | 1033 XMMRegister scratch, MinusZeroMode minus_zero_mode, |
1034 Label* conversion_failed, Label::Distance dst = Label::kFar); | 1034 Label* conversion_failed, Label::Distance dst = Label::kFar); |
1035 | 1035 |
1036 void TaggedToI(Register result_reg, Register input_reg, XMMRegister temp, | |
1037 MinusZeroMode minus_zero_mode, Label* lost_precision, | |
1038 Label::Distance dst = Label::kFar); | |
1039 | |
1040 void LoadUint32(XMMRegister dst, Register src); | 1036 void LoadUint32(XMMRegister dst, Register src); |
1041 | 1037 |
1042 void LoadInstanceDescriptors(Register map, Register descriptors); | 1038 void LoadInstanceDescriptors(Register map, Register descriptors); |
1043 void EnumLength(Register dst, Register map); | 1039 void EnumLength(Register dst, Register map); |
1044 void NumberOfOwnDescriptors(Register dst, Register map); | 1040 void NumberOfOwnDescriptors(Register dst, Register map); |
1045 | 1041 |
1046 template<typename Field> | 1042 template<typename Field> |
1047 void DecodeField(Register reg) { | 1043 void DecodeField(Register reg) { |
1048 static const int shift = Field::kShift; | 1044 static const int shift = Field::kShift; |
1049 static const int mask = Field::kMask >> Field::kShift; | 1045 static const int mask = Field::kMask >> Field::kShift; |
(...skipping 593 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1643 masm->popfq(); \ | 1639 masm->popfq(); \ |
1644 } \ | 1640 } \ |
1645 masm-> | 1641 masm-> |
1646 #else | 1642 #else |
1647 #define ACCESS_MASM(masm) masm-> | 1643 #define ACCESS_MASM(masm) masm-> |
1648 #endif | 1644 #endif |
1649 | 1645 |
1650 } } // namespace v8::internal | 1646 } } // namespace v8::internal |
1651 | 1647 |
1652 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ | 1648 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ |
OLD | NEW |