| OLD | NEW |
| 1 // Copyright 2009 the V8 project authors. All rights reserved. | 1 // Copyright 2009 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 25 matching lines...) Expand all Loading... |
| 36 # define USE_ARM_EABI 1 | 36 # define USE_ARM_EABI 1 |
| 37 #endif | 37 #endif |
| 38 | 38 |
| 39 // This means that interwork-compatible jump instructions are generated. We | 39 // This means that interwork-compatible jump instructions are generated. We |
| 40 // want to generate them on the simulator too so it makes snapshots that can | 40 // want to generate them on the simulator too so it makes snapshots that can |
| 41 // be used on real hardware. | 41 // be used on real hardware. |
| 42 #if defined(__THUMB_INTERWORK__) || !defined(__arm__) | 42 #if defined(__THUMB_INTERWORK__) || !defined(__arm__) |
| 43 # define USE_THUMB_INTERWORK 1 | 43 # define USE_THUMB_INTERWORK 1 |
| 44 #endif | 44 #endif |
| 45 | 45 |
| 46 #if defined(__ARM_ARCH_5T__) || \ | 46 #if defined(__ARM_ARCH_7A__) || \ |
| 47 defined(__ARM_ARCH_5TE__) || \ | 47 defined(__ARM_ARCH_7R__) || \ |
| 48 defined(__ARM_ARCH_6__) || \ | |
| 49 defined(__ARM_ARCH_7A__) || \ | |
| 50 defined(__ARM_ARCH_7__) | 48 defined(__ARM_ARCH_7__) |
| 49 # define CAN_USE_ARMV7_INSTRUCTIONS 1 |
| 50 #endif |
| 51 |
| 52 #if defined(__ARM_ARCH_6__) || \ |
| 53 defined(__ARM_ARCH_6J__) || \ |
| 54 defined(__ARM_ARCH_6K__) || \ |
| 55 defined(__ARM_ARCH_6Z__) || \ |
| 56 defined(__ARM_ARCH_6ZK__) || \ |
| 57 defined(__ARM_ARCH_6T2__) || \ |
| 58 defined(CAN_USE_ARMV7_INSTRUCTIONS) |
| 59 # define CAN_USE_ARMV6_INSTRUCTIONS 1 |
| 60 #endif |
| 61 |
| 62 #if defined(__ARM_ARCH_5T__) || \ |
| 63 defined(__ARM_ARCH_5TE__) || \ |
| 64 defined(CAN_USE_ARMV6_INSTRUCTIONS) |
| 51 # define CAN_USE_ARMV5_INSTRUCTIONS 1 | 65 # define CAN_USE_ARMV5_INSTRUCTIONS 1 |
| 52 # define CAN_USE_THUMB_INSTRUCTIONS 1 | 66 # define CAN_USE_THUMB_INSTRUCTIONS 1 |
| 53 #endif | 67 #endif |
| 54 | 68 |
| 55 #if defined(__ARM_ARCH_6__) || \ | |
| 56 defined(__ARM_ARCH_7A__) || \ | |
| 57 defined(__ARM_ARCH_7__) | |
| 58 # define CAN_USE_ARMV6_INSTRUCTIONS 1 | |
| 59 #endif | |
| 60 | |
| 61 #if defined(__ARM_ARCH_7A__) || \ | |
| 62 defined(__ARM_ARCH_7__) | |
| 63 # define CAN_USE_ARMV7_INSTRUCTIONS 1 | |
| 64 #endif | |
| 65 | |
| 66 // Simulator should support ARM5 instructions. | 69 // Simulator should support ARM5 instructions. |
| 67 #if !defined(__arm__) | 70 #if !defined(__arm__) |
| 68 # define CAN_USE_ARMV5_INSTRUCTIONS 1 | 71 # define CAN_USE_ARMV5_INSTRUCTIONS 1 |
| 69 # define CAN_USE_THUMB_INSTRUCTIONS 1 | 72 # define CAN_USE_THUMB_INSTRUCTIONS 1 |
| 70 #endif | 73 #endif |
| 71 | 74 |
| 72 namespace assembler { | 75 namespace assembler { |
| 73 namespace arm { | 76 namespace arm { |
| 74 | 77 |
| 75 // Number of registers in normal ARM mode. | 78 // Number of registers in normal ARM mode. |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 static const char* Name(int reg); | 338 static const char* Name(int reg); |
| 336 | 339 |
| 337 private: | 340 private: |
| 338 static const char* names_[kNumVFPRegisters]; | 341 static const char* names_[kNumVFPRegisters]; |
| 339 }; | 342 }; |
| 340 | 343 |
| 341 | 344 |
| 342 } } // namespace assembler::arm | 345 } } // namespace assembler::arm |
| 343 | 346 |
| 344 #endif // V8_ARM_CONSTANTS_ARM_H_ | 347 #endif // V8_ARM_CONSTANTS_ARM_H_ |
| OLD | NEW |