OLD | NEW |
1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
381 | 381 |
382 // VFP FPSCR constants. | 382 // VFP FPSCR constants. |
383 enum VFPConversionMode { | 383 enum VFPConversionMode { |
384 kFPSCRRounding = 0, | 384 kFPSCRRounding = 0, |
385 kDefaultRoundToZero = 1 | 385 kDefaultRoundToZero = 1 |
386 }; | 386 }; |
387 | 387 |
388 // This mask does not include the "inexact" or "input denormal" cumulative | 388 // This mask does not include the "inexact" or "input denormal" cumulative |
389 // exceptions flags, because we usually don't want to check for it. | 389 // exceptions flags, because we usually don't want to check for it. |
390 static const uint32_t kVFPExceptionMask = 0xf; | 390 static const uint32_t kVFPExceptionMask = 0xf; |
| 391 static const uint32_t kVFPInvalidOpExceptionBit = 1 << 0; |
| 392 static const uint32_t kVFPOverflowExceptionBit = 1 << 2; |
| 393 static const uint32_t kVFPUnderflowExceptionBit = 1 << 3; |
391 static const uint32_t kVFPInexactExceptionBit = 1 << 4; | 394 static const uint32_t kVFPInexactExceptionBit = 1 << 4; |
392 static const uint32_t kVFPFlushToZeroMask = 1 << 24; | 395 static const uint32_t kVFPFlushToZeroMask = 1 << 24; |
393 static const uint32_t kVFPInvalidExceptionBit = 1; | |
394 | 396 |
395 static const uint32_t kVFPNConditionFlagBit = 1 << 31; | 397 static const uint32_t kVFPNConditionFlagBit = 1 << 31; |
396 static const uint32_t kVFPZConditionFlagBit = 1 << 30; | 398 static const uint32_t kVFPZConditionFlagBit = 1 << 30; |
397 static const uint32_t kVFPCConditionFlagBit = 1 << 29; | 399 static const uint32_t kVFPCConditionFlagBit = 1 << 29; |
398 static const uint32_t kVFPVConditionFlagBit = 1 << 28; | 400 static const uint32_t kVFPVConditionFlagBit = 1 << 28; |
399 | 401 |
400 | 402 |
401 // VFP rounding modes. See ARM DDI 0406B Page A2-29. | 403 // VFP rounding modes. See ARM DDI 0406B Page A2-29. |
402 enum VFPRoundingMode { | 404 enum VFPRoundingMode { |
403 RN = 0 << 22, // Round to Nearest. | 405 RN = 0 << 22, // Round to Nearest. |
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
760 static int Number(const char* name, bool* is_double); | 762 static int Number(const char* name, bool* is_double); |
761 | 763 |
762 private: | 764 private: |
763 static const char* names_[kNumVFPRegisters]; | 765 static const char* names_[kNumVFPRegisters]; |
764 }; | 766 }; |
765 | 767 |
766 | 768 |
767 } } // namespace v8::internal | 769 } } // namespace v8::internal |
768 | 770 |
769 #endif // V8_ARM_CONSTANTS_ARM_H_ | 771 #endif // V8_ARM_CONSTANTS_ARM_H_ |
OLD | NEW |