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 "test/unittests/compiler/interpreter-assembler-unittest.h" | 5 #include "test/unittests/compiler/interpreter-assembler-unittest.h" |
6 | 6 |
7 #include "src/compiler/graph.h" | 7 #include "src/compiler/graph.h" |
8 #include "src/compiler/node.h" | 8 #include "src/compiler/node.h" |
9 #include "src/interface-descriptors.h" | 9 #include "src/interface-descriptors.h" |
10 #include "src/isolate.h" | 10 #include "src/isolate.h" |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 } | 178 } |
179 } | 179 } |
180 | 180 |
181 | 181 |
182 TARGET_TEST_F(InterpreterAssemblerTest, BytecodeOperand) { | 182 TARGET_TEST_F(InterpreterAssemblerTest, BytecodeOperand) { |
183 TRACED_FOREACH(interpreter::Bytecode, bytecode, kBytecodes) { | 183 TRACED_FOREACH(interpreter::Bytecode, bytecode, kBytecodes) { |
184 InterpreterAssemblerForTest m(this, bytecode); | 184 InterpreterAssemblerForTest m(this, bytecode); |
185 int number_of_operands = interpreter::Bytecodes::NumberOfOperands(bytecode); | 185 int number_of_operands = interpreter::Bytecodes::NumberOfOperands(bytecode); |
186 for (int i = 0; i < number_of_operands; i++) { | 186 for (int i = 0; i < number_of_operands; i++) { |
187 switch (interpreter::Bytecodes::GetOperandType(bytecode, i)) { | 187 switch (interpreter::Bytecodes::GetOperandType(bytecode, i)) { |
| 188 case interpreter::OperandType::kCount: |
| 189 EXPECT_THAT(m.BytecodeOperandCount(i), m.IsBytecodeOperand(i)); |
| 190 break; |
188 case interpreter::OperandType::kIdx: | 191 case interpreter::OperandType::kIdx: |
189 EXPECT_THAT(m.BytecodeOperandIdx(i), m.IsBytecodeOperand(i)); | 192 EXPECT_THAT(m.BytecodeOperandIdx(i), m.IsBytecodeOperand(i)); |
190 break; | 193 break; |
191 case interpreter::OperandType::kImm8: | 194 case interpreter::OperandType::kImm8: |
192 EXPECT_THAT(m.BytecodeOperandImm8(i), | 195 EXPECT_THAT(m.BytecodeOperandImm8(i), |
193 m.IsBytecodeOperandSignExtended(i)); | 196 m.IsBytecodeOperandSignExtended(i)); |
194 break; | 197 break; |
195 case interpreter::OperandType::kReg: | 198 case interpreter::OperandType::kReg: |
196 EXPECT_THAT(m.BytecodeOperandReg(i), | 199 EXPECT_THAT(m.BytecodeOperandReg(i), |
197 m.IsBytecodeOperandSignExtended(i)); | 200 m.IsBytecodeOperandSignExtended(i)); |
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 feedback_vector, | 397 feedback_vector, |
395 m.IsLoad(kMachAnyTagged, load_shared_function_info_matcher, | 398 m.IsLoad(kMachAnyTagged, load_shared_function_info_matcher, |
396 IsIntPtrConstant(SharedFunctionInfo::kFeedbackVectorOffset - | 399 IsIntPtrConstant(SharedFunctionInfo::kFeedbackVectorOffset - |
397 kHeapObjectTag))); | 400 kHeapObjectTag))); |
398 } | 401 } |
399 } | 402 } |
400 | 403 |
401 } // namespace compiler | 404 } // namespace compiler |
402 } // namespace internal | 405 } // namespace internal |
403 } // namespace v8 | 406 } // namespace v8 |
OLD | NEW |