| OLD | NEW |
| 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
| 2 // All Rights Reserved. | 2 // All Rights Reserved. |
| 3 // | 3 // |
| 4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
| 5 // modification, are permitted provided that the following conditions | 5 // modification, are permitted provided that the following conditions |
| 6 // are met: | 6 // are met: |
| 7 // | 7 // |
| 8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
| 9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
| 10 // | 10 // |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 uint64_t answer = 0; | 59 uint64_t answer = 0; |
| 60 #ifdef CAN_USE_ARMV7_INSTRUCTIONS | 60 #ifdef CAN_USE_ARMV7_INSTRUCTIONS |
| 61 answer |= 1u << ARMv7; | 61 answer |= 1u << ARMv7; |
| 62 #endif // def CAN_USE_ARMV7_INSTRUCTIONS | 62 #endif // def CAN_USE_ARMV7_INSTRUCTIONS |
| 63 #ifdef CAN_USE_VFP_INSTRUCTIONS | 63 #ifdef CAN_USE_VFP_INSTRUCTIONS |
| 64 answer |= 1u << VFP3 | 1u << ARMv7; | 64 answer |= 1u << VFP3 | 1u << ARMv7; |
| 65 #endif // def CAN_USE_VFP_INSTRUCTIONS | 65 #endif // def CAN_USE_VFP_INSTRUCTIONS |
| 66 | 66 |
| 67 #ifdef __arm__ | 67 #ifdef __arm__ |
| 68 // If the compiler is allowed to use VFP then we can use VFP too in our code | 68 // If the compiler is allowed to use VFP then we can use VFP too in our code |
| 69 // generation even when generating snapshots. This won't work for cross | 69 // generation even when generating snapshots. ARMv7 and hardware floating |
| 70 // compilation. VFPv3 implies ARMv7, see ARM DDI 0406B, page A1-6. | 70 // point support implies VFPv3, see ARM DDI 0406B, page A1-6. |
| 71 #if defined(__VFP_FP__) && !defined(__SOFTFP__) | 71 #if defined(CAN_USE_ARMV7_INSTRUCTIONS) && defined(__VFP_FP__) \ |
| 72 && !defined(__SOFTFP__) |
| 72 answer |= 1u << VFP3 | 1u << ARMv7; | 73 answer |= 1u << VFP3 | 1u << ARMv7; |
| 73 #endif // defined(__VFP_FP__) && !defined(__SOFTFP__) | 74 #endif // defined(CAN_USE_ARMV7_INSTRUCTIONS) && defined(__VFP_FP__) |
| 75 // && !defined(__SOFTFP__) |
| 74 #endif // def __arm__ | 76 #endif // def __arm__ |
| 75 | 77 |
| 76 return answer; | 78 return answer; |
| 77 } | 79 } |
| 78 | 80 |
| 79 | 81 |
| 80 void CpuFeatures::Probe() { | 82 void CpuFeatures::Probe() { |
| 81 unsigned standard_features = (OS::CpuFeaturesImpliedByPlatform() | | 83 unsigned standard_features = (OS::CpuFeaturesImpliedByPlatform() | |
| 82 CpuFeaturesImpliedByCompiler()); | 84 CpuFeaturesImpliedByCompiler()); |
| 83 ASSERT(supported_ == 0 || supported_ == standard_features); | 85 ASSERT(supported_ == 0 || supported_ == standard_features); |
| (...skipping 2570 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2654 | 2656 |
| 2655 // Since a constant pool was just emitted, move the check offset forward by | 2657 // Since a constant pool was just emitted, move the check offset forward by |
| 2656 // the standard interval. | 2658 // the standard interval. |
| 2657 next_buffer_check_ = pc_offset() + kCheckPoolInterval; | 2659 next_buffer_check_ = pc_offset() + kCheckPoolInterval; |
| 2658 } | 2660 } |
| 2659 | 2661 |
| 2660 | 2662 |
| 2661 } } // namespace v8::internal | 2663 } } // namespace v8::internal |
| 2662 | 2664 |
| 2663 #endif // V8_TARGET_ARCH_ARM | 2665 #endif // V8_TARGET_ARCH_ARM |
| OLD | NEW |