OLD | NEW |
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 #ifndef V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 5 #ifndef V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
6 #define V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 6 #define V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "v8globals.h" | 10 #include "v8globals.h" |
(...skipping 813 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
824 inline void Move(Register dst, Register src) { Mov(dst, src); } | 824 inline void Move(Register dst, Register src) { Mov(dst, src); } |
825 | 825 |
826 void LoadInstanceDescriptors(Register map, | 826 void LoadInstanceDescriptors(Register map, |
827 Register descriptors); | 827 Register descriptors); |
828 void EnumLengthUntagged(Register dst, Register map); | 828 void EnumLengthUntagged(Register dst, Register map); |
829 void EnumLengthSmi(Register dst, Register map); | 829 void EnumLengthSmi(Register dst, Register map); |
830 void NumberOfOwnDescriptors(Register dst, Register map); | 830 void NumberOfOwnDescriptors(Register dst, Register map); |
831 | 831 |
832 template<typename Field> | 832 template<typename Field> |
833 void DecodeField(Register reg) { | 833 void DecodeField(Register reg) { |
834 static const uint64_t shift = Field::kShift + kSmiShift; | 834 static const uint64_t shift = Field::kShift; |
835 static const uint64_t setbits = CountSetBits(Field::kMask, 32); | 835 static const uint64_t setbits = CountSetBits(Field::kMask, 32); |
836 Ubfx(reg, reg, shift, setbits); | 836 Ubfx(reg, reg, shift, setbits); |
837 } | 837 } |
838 | 838 |
839 // ---- SMI and Number Utilities ---- | 839 // ---- SMI and Number Utilities ---- |
840 | 840 |
841 inline void SmiTag(Register dst, Register src); | 841 inline void SmiTag(Register dst, Register src); |
842 inline void SmiTag(Register smi); | 842 inline void SmiTag(Register smi); |
843 inline void SmiUntag(Register dst, Register src); | 843 inline void SmiUntag(Register dst, Register src); |
844 inline void SmiUntag(Register smi); | 844 inline void SmiUntag(Register smi); |
(...skipping 1439 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2284 #error "Unsupported option" | 2284 #error "Unsupported option" |
2285 #define CODE_COVERAGE_STRINGIFY(x) #x | 2285 #define CODE_COVERAGE_STRINGIFY(x) #x |
2286 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 2286 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
2287 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 2287 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
2288 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 2288 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
2289 #else | 2289 #else |
2290 #define ACCESS_MASM(masm) masm-> | 2290 #define ACCESS_MASM(masm) masm-> |
2291 #endif | 2291 #endif |
2292 | 2292 |
2293 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 2293 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
OLD | NEW |