OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
6 | 6 |
7 #include "src/arm64/macro-assembler-arm64.h" | 7 #include "src/arm64/macro-assembler-arm64.h" |
8 #include "src/compiler/code-generator-impl.h" | 8 #include "src/compiler/code-generator-impl.h" |
9 #include "src/compiler/gap-resolver.h" | 9 #include "src/compiler/gap-resolver.h" |
10 #include "src/compiler/node-matchers.h" | 10 #include "src/compiler/node-matchers.h" |
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 int slot = MiscField::decode(instr->opcode()) - 1; | 332 int slot = MiscField::decode(instr->opcode()) - 1; |
333 __ PokePair(i.InputRegister(1), i.InputRegister(0), slot * kPointerSize); | 333 __ PokePair(i.InputRegister(1), i.InputRegister(0), slot * kPointerSize); |
334 break; | 334 break; |
335 } | 335 } |
336 case kArm64Cmp: | 336 case kArm64Cmp: |
337 __ Cmp(i.InputRegister(0), i.InputOperand(1)); | 337 __ Cmp(i.InputRegister(0), i.InputOperand(1)); |
338 break; | 338 break; |
339 case kArm64Cmp32: | 339 case kArm64Cmp32: |
340 __ Cmp(i.InputRegister32(0), i.InputOperand32(1)); | 340 __ Cmp(i.InputRegister32(0), i.InputOperand32(1)); |
341 break; | 341 break; |
| 342 case kArm64Cmn: |
| 343 __ Cmn(i.InputRegister(0), i.InputOperand(1)); |
| 344 break; |
| 345 case kArm64Cmn32: |
| 346 __ Cmn(i.InputRegister32(0), i.InputOperand32(1)); |
| 347 break; |
342 case kArm64Tst: | 348 case kArm64Tst: |
343 __ Tst(i.InputRegister(0), i.InputOperand(1)); | 349 __ Tst(i.InputRegister(0), i.InputOperand(1)); |
344 break; | 350 break; |
345 case kArm64Tst32: | 351 case kArm64Tst32: |
346 __ Tst(i.InputRegister32(0), i.InputOperand32(1)); | 352 __ Tst(i.InputRegister32(0), i.InputOperand32(1)); |
347 break; | 353 break; |
348 case kArm64Float64Cmp: | 354 case kArm64Float64Cmp: |
349 __ Fcmp(i.InputDoubleRegister(0), i.InputDoubleRegister(1)); | 355 __ Fcmp(i.InputDoubleRegister(0), i.InputDoubleRegister(1)); |
350 break; | 356 break; |
351 case kArm64Float64Add: | 357 case kArm64Float64Add: |
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
846 } | 852 } |
847 | 853 |
848 | 854 |
849 void CodeGenerator::AddNopForSmiCodeInlining() { __ movz(xzr, 0); } | 855 void CodeGenerator::AddNopForSmiCodeInlining() { __ movz(xzr, 0); } |
850 | 856 |
851 #undef __ | 857 #undef __ |
852 | 858 |
853 } // namespace compiler | 859 } // namespace compiler |
854 } // namespace internal | 860 } // namespace internal |
855 } // namespace v8 | 861 } // namespace v8 |
OLD | NEW |