diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2009-11-18 15:25:58 +0100 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2009-11-18 15:28:54 +0100 |
commit | 728d8a37f471afaeaa6af19823f9da8c41f1f65a (patch) | |
tree | 21e014089ff0bfb7d493691620ab9eee51176d28 /deps/v8/src/arm/constants-arm.h | |
parent | 8195e0f7232fed3d6a3a2cc8464fec5e36f4433c (diff) | |
download | node-new-728d8a37f471afaeaa6af19823f9da8c41f1f65a.tar.gz |
Upgrade v8 to 2.0
(With just one change: remove -Werror)
Diffstat (limited to 'deps/v8/src/arm/constants-arm.h')
-rw-r--r-- | deps/v8/src/arm/constants-arm.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/deps/v8/src/arm/constants-arm.h b/deps/v8/src/arm/constants-arm.h index 6bd0d00804..58396f8777 100644 --- a/deps/v8/src/arm/constants-arm.h +++ b/deps/v8/src/arm/constants-arm.h @@ -75,6 +75,9 @@ namespace arm { // Number of registers in normal ARM mode. static const int kNumRegisters = 16; +// VFP support. +static const int kNumVFPRegisters = 48; + // PC is register 15. static const int kPCRegister = 15; static const int kNoRegister = -1; @@ -231,6 +234,16 @@ class Instr { inline int RnField() const { return Bits(19, 16); } inline int RdField() const { return Bits(15, 12); } + // Support for VFP. + // Vn(19-16) | Vd(15-12) | Vm(3-0) + inline int VnField() const { return Bits(19, 16); } + inline int VmField() const { return Bits(3, 0); } + inline int VdField() const { return Bits(15, 12); } + inline int NField() const { return Bit(7); } + inline int MField() const { return Bit(5); } + inline int DField() const { return Bit(22); } + inline int RtField() const { return Bits(15, 12); } + // Fields used in Data processing instructions inline Opcode OpcodeField() const { return static_cast<Opcode>(Bits(24, 21)); @@ -307,7 +320,7 @@ class Registers { struct RegisterAlias { int reg; - const char *name; + const char* name; }; private: @@ -315,6 +328,15 @@ class Registers { static const RegisterAlias aliases_[]; }; +// Helper functions for converting between VFP register numbers and names. +class VFPRegisters { + public: + // Return the name of the register. + static const char* Name(int reg); + + private: + static const char* names_[kNumVFPRegisters]; +}; } } // namespace assembler::arm |