Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 // | 4 // |
| 5 // This is forked from Dart revision df52deea9f25690eb8b66c5995da92b70f7ac1fe | 5 // This is forked from Dart revision df52deea9f25690eb8b66c5995da92b70f7ac1fe |
| 6 // Please update the (git) revision if we merge changes from Dart. | 6 // Please update the (git) revision if we merge changes from Dart. |
| 7 // https://code.google.com/p/dart/wiki/GettingTheSource | 7 // https://code.google.com/p/dart/wiki/GettingTheSource |
| 8 | 8 |
| 9 #ifndef VM_ASSEMBLER_ARM_H_ | 9 #ifndef VM_ASSEMBLER_ARM_H_ |
| 10 #define VM_ASSEMBLER_ARM_H_ | 10 #define VM_ASSEMBLER_ARM_H_ |
| (...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 605 // Note that gdb sets breakpoints using the undefined instruction 0xe7f001f0. | 605 // Note that gdb sets breakpoints using the undefined instruction 0xe7f001f0. |
| 606 void bkpt(uint16_t imm16); | 606 void bkpt(uint16_t imm16); |
| 607 | 607 |
| 608 static int32_t BkptEncoding(uint16_t imm16) { | 608 static int32_t BkptEncoding(uint16_t imm16) { |
| 609 // bkpt requires that the cond field is AL. | 609 // bkpt requires that the cond field is AL. |
| 610 return (AL << kConditionShift) | B24 | B21 | | 610 return (AL << kConditionShift) | B24 | B21 | |
| 611 ((imm16 >> 4) << 8) | B6 | B5 | B4 | (imm16 & 0xf); | 611 ((imm16 >> 4) << 8) | B6 | B5 | B4 | (imm16 & 0xf); |
| 612 } | 612 } |
| 613 #endif | 613 #endif |
| 614 | 614 |
| 615 static uword GetBreakInstructionFiller() { | 615 static uword GetBreakInstructionFiller() { |
|
Jim Stichnoth
2016/01/27 22:59:22
Will we ever use this? If not, maybe document tha
Karl
2016/01/27 23:36:42
Done.
| |
| 616 return BkptEncoding(0); | 616 return BkptEncoding(0); |
| 617 } | 617 } |
| 618 | 618 |
| 619 // Floating point instructions (VFPv3-D16 and VFPv3-D32 profiles). | 619 // Floating point instructions (VFPv3-D16 and VFPv3-D32 profiles). |
| 620 #if 0 | 620 #if 0 |
| 621 // Moved to ARM32::AssemblerARM32::vmovsr(). | 621 // Moved to ARM32::AssemblerARM32::vmovsr(). |
| 622 void vmovsr(SRegister sn, Register rt, Condition cond = AL); | 622 void vmovsr(SRegister sn, Register rt, Condition cond = AL); |
| 623 // Moved to ARM32::AssemblerARM32::vmovrs(). | |
| 624 void vmovrs(Register rt, SRegister sn, Condition cond = AL); | |
| 623 #endif | 625 #endif |
| 624 void vmovrs(Register rt, SRegister sn, Condition cond = AL); | |
| 625 void vmovsrr(SRegister sm, Register rt, Register rt2, Condition cond = AL); | 626 void vmovsrr(SRegister sm, Register rt, Register rt2, Condition cond = AL); |
| 626 void vmovrrs(Register rt, Register rt2, SRegister sm, Condition cond = AL); | 627 void vmovrrs(Register rt, Register rt2, SRegister sm, Condition cond = AL); |
| 627 void vmovdrr(DRegister dm, Register rt, Register rt2, Condition cond = AL); | 628 void vmovdrr(DRegister dm, Register rt, Register rt2, Condition cond = AL); |
| 628 void vmovrrd(Register rt, Register rt2, DRegister dm, Condition cond = AL); | 629 void vmovrrd(Register rt, Register rt2, DRegister dm, Condition cond = AL); |
| 629 void vmovdr(DRegister dd, int i, Register rt, Condition cond = AL); | 630 void vmovdr(DRegister dd, int i, Register rt, Condition cond = AL); |
| 630 #if 0 | 631 #if 0 |
| 631 // Moved to ARM32::AssemblerARM32::vmovss(). | 632 // Moved to ARM32::AssemblerARM32::vmovss(). |
| 632 void vmovs(SRegister sd, SRegister sm, Condition cond = AL); | 633 void vmovs(SRegister sd, SRegister sm, Condition cond = AL); |
| 633 // Moved to ARM32::AssemblerARM32::vmovdd(). | 634 // Moved to ARM32::AssemblerARM32::vmovdd(). |
| 634 void vmovd(DRegister dd, DRegister dm, Condition cond = AL); | 635 void vmovd(DRegister dd, DRegister dm, Condition cond = AL); |
| (...skipping 753 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1388 // ARM32::AssemblerARM::veord() | 1389 // ARM32::AssemblerARM::veord() |
| 1389 #endif | 1390 #endif |
| 1390 | 1391 |
| 1391 DISALLOW_ALLOCATION(); | 1392 DISALLOW_ALLOCATION(); |
| 1392 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1393 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1393 }; | 1394 }; |
| 1394 | 1395 |
| 1395 } // namespace dart | 1396 } // namespace dart |
| 1396 | 1397 |
| 1397 #endif // VM_ASSEMBLER_ARM_H_ | 1398 #endif // VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |