OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 #include "src/interpreter/interpreter-assembler.h" | 5 #include "src/interpreter/interpreter-assembler.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 #include <ostream> | 8 #include <ostream> |
9 | 9 |
10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" |
(...skipping 887 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
898 Goto(&counter_saturated); | 898 Goto(&counter_saturated); |
899 } | 899 } |
900 | 900 |
901 Bind(&counter_saturated); | 901 Bind(&counter_saturated); |
902 } | 902 } |
903 | 903 |
904 // static | 904 // static |
905 bool InterpreterAssembler::TargetSupportsUnalignedAccess() { | 905 bool InterpreterAssembler::TargetSupportsUnalignedAccess() { |
906 #if V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 | 906 #if V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 |
907 return false; | 907 return false; |
908 #elif V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_PPC | 908 #elif V8_TARGET_ARCH_PPC |
909 return CpuFeatures::IsSupported(UNALIGNED_ACCESSES); | 909 return CpuFeatures::IsSupported(UNALIGNED_ACCESSES); |
910 #elif V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_X87 || \ | 910 #elif V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_X87 || \ |
911 V8_TARGET_ARCH_S390 | 911 V8_TARGET_ARCH_S390 || V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 |
912 return true; | 912 return true; |
913 #else | 913 #else |
914 #error "Unknown Architecture" | 914 #error "Unknown Architecture" |
915 #endif | 915 #endif |
916 } | 916 } |
917 | 917 |
918 Node* InterpreterAssembler::RegisterCount() { | 918 Node* InterpreterAssembler::RegisterCount() { |
919 Node* bytecode_array = LoadRegister(Register::bytecode_array()); | 919 Node* bytecode_array = LoadRegister(Register::bytecode_array()); |
920 Node* frame_size = LoadObjectField( | 920 Node* frame_size = LoadObjectField( |
921 bytecode_array, BytecodeArray::kFrameSizeOffset, MachineType::Int32()); | 921 bytecode_array, BytecodeArray::kFrameSizeOffset, MachineType::Int32()); |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
989 Goto(&loop); | 989 Goto(&loop); |
990 } | 990 } |
991 Bind(&done_loop); | 991 Bind(&done_loop); |
992 | 992 |
993 return array; | 993 return array; |
994 } | 994 } |
995 | 995 |
996 } // namespace interpreter | 996 } // namespace interpreter |
997 } // namespace internal | 997 } // namespace internal |
998 } // namespace v8 | 998 } // namespace v8 |
OLD | NEW |