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 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
624 // TODO(dcarney): test slot offset and register order. | 624 // TODO(dcarney): test slot offset and register order. |
625 int slot = MiscField::decode(instr->opcode()) - 1; | 625 int slot = MiscField::decode(instr->opcode()) - 1; |
626 __ PokePair(i.InputRegister(0), xzr, slot * kPointerSize); | 626 __ PokePair(i.InputRegister(0), xzr, slot * kPointerSize); |
627 break; | 627 break; |
628 } | 628 } |
629 case kArm64PokePair: { | 629 case kArm64PokePair: { |
630 int slot = MiscField::decode(instr->opcode()) - 1; | 630 int slot = MiscField::decode(instr->opcode()) - 1; |
631 __ PokePair(i.InputRegister(1), i.InputRegister(0), slot * kPointerSize); | 631 __ PokePair(i.InputRegister(1), i.InputRegister(0), slot * kPointerSize); |
632 break; | 632 break; |
633 } | 633 } |
| 634 case kArm64Clz32: |
| 635 __ Clz(i.OutputRegister32(), i.InputRegister32(0)); |
| 636 break; |
634 case kArm64Cmp: | 637 case kArm64Cmp: |
635 __ Cmp(i.InputRegister(0), i.InputOperand(1)); | 638 __ Cmp(i.InputRegister(0), i.InputOperand(1)); |
636 break; | 639 break; |
637 case kArm64Cmp32: | 640 case kArm64Cmp32: |
638 __ Cmp(i.InputRegister32(0), i.InputOperand32(1)); | 641 __ Cmp(i.InputRegister32(0), i.InputOperand32(1)); |
639 break; | 642 break; |
640 case kArm64Cmn: | 643 case kArm64Cmn: |
641 __ Cmn(i.InputRegister(0), i.InputOperand(1)); | 644 __ Cmn(i.InputRegister(0), i.InputOperand(1)); |
642 break; | 645 break; |
643 case kArm64Cmn32: | 646 case kArm64Cmn32: |
(...skipping 562 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1206 } | 1209 } |
1207 } | 1210 } |
1208 MarkLazyDeoptSite(); | 1211 MarkLazyDeoptSite(); |
1209 } | 1212 } |
1210 | 1213 |
1211 #undef __ | 1214 #undef __ |
1212 | 1215 |
1213 } // namespace compiler | 1216 } // namespace compiler |
1214 } // namespace internal | 1217 } // namespace internal |
1215 } // namespace v8 | 1218 } // namespace v8 |
OLD | NEW |