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 659 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
670 Goto(&counter_saturated); | 670 Goto(&counter_saturated); |
671 } | 671 } |
672 | 672 |
673 Bind(&counter_saturated); | 673 Bind(&counter_saturated); |
674 } | 674 } |
675 | 675 |
676 // static | 676 // static |
677 bool InterpreterAssembler::TargetSupportsUnalignedAccess() { | 677 bool InterpreterAssembler::TargetSupportsUnalignedAccess() { |
678 #if V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 | 678 #if V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 |
679 return false; | 679 return false; |
680 #elif V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_PPC | 680 #elif V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_PPC || \ |
| 681 V8_TARGET_ARCH_S390 |
681 return CpuFeatures::IsSupported(UNALIGNED_ACCESSES); | 682 return CpuFeatures::IsSupported(UNALIGNED_ACCESSES); |
682 #elif V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_X87 || \ | 683 #elif V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_X87 |
683 V8_TARGET_ARCH_S390 | |
684 return true; | 684 return true; |
685 #else | 685 #else |
686 #error "Unknown Architecture" | 686 #error "Unknown Architecture" |
687 #endif | 687 #endif |
688 } | 688 } |
689 | 689 |
690 Node* InterpreterAssembler::RegisterCount() { | 690 Node* InterpreterAssembler::RegisterCount() { |
691 Node* bytecode_array = LoadRegister(Register::bytecode_array()); | 691 Node* bytecode_array = LoadRegister(Register::bytecode_array()); |
692 Node* frame_size = LoadObjectField( | 692 Node* frame_size = LoadObjectField( |
693 bytecode_array, BytecodeArray::kFrameSizeOffset, MachineType::Int32()); | 693 bytecode_array, BytecodeArray::kFrameSizeOffset, MachineType::Int32()); |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
761 Goto(&loop); | 761 Goto(&loop); |
762 } | 762 } |
763 Bind(&done_loop); | 763 Bind(&done_loop); |
764 | 764 |
765 return array; | 765 return array; |
766 } | 766 } |
767 | 767 |
768 } // namespace interpreter | 768 } // namespace interpreter |
769 } // namespace internal | 769 } // namespace internal |
770 } // namespace v8 | 770 } // namespace v8 |
OLD | NEW |