| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Platform-specific code for Linux goes here. For the POSIX-compatible | 5 // Platform-specific code for Linux goes here. For the POSIX-compatible |
| 6 // parts, the implementation is in platform-posix.cc. | 6 // parts, the implementation is in platform-posix.cc. |
| 7 | 7 |
| 8 #include <pthread.h> | 8 #include <pthread.h> |
| 9 #include <semaphore.h> | 9 #include <semaphore.h> |
| 10 #include <signal.h> | 10 #include <signal.h> |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 // the Floating Point ABI used (PCS stands for Procedure Call Standard). | 65 // the Floating Point ABI used (PCS stands for Procedure Call Standard). |
| 66 // We use these as well as a couple of other defines to statically determine | 66 // We use these as well as a couple of other defines to statically determine |
| 67 // what FP ABI used. | 67 // what FP ABI used. |
| 68 // GCC versions 4.4 and below don't support hard-fp. | 68 // GCC versions 4.4 and below don't support hard-fp. |
| 69 // GCC versions 4.5 may support hard-fp without defining __ARM_PCS or | 69 // GCC versions 4.5 may support hard-fp without defining __ARM_PCS or |
| 70 // __ARM_PCS_VFP. | 70 // __ARM_PCS_VFP. |
| 71 | 71 |
| 72 #define GCC_VERSION (__GNUC__ * 10000 \ | 72 #define GCC_VERSION (__GNUC__ * 10000 \ |
| 73 + __GNUC_MINOR__ * 100 \ | 73 + __GNUC_MINOR__ * 100 \ |
| 74 + __GNUC_PATCHLEVEL__) | 74 + __GNUC_PATCHLEVEL__) |
| 75 #if GCC_VERSION >= 40600 | 75 #if GCC_VERSION >= 40600 && !defined(__clang__) |
| 76 #if defined(__ARM_PCS_VFP) | 76 #if defined(__ARM_PCS_VFP) |
| 77 return true; | 77 return true; |
| 78 #else | 78 #else |
| 79 return false; | 79 return false; |
| 80 #endif | 80 #endif |
| 81 | 81 |
| 82 #elif GCC_VERSION < 40500 | 82 #elif GCC_VERSION < 40500 && !defined(__clang__) |
| 83 return false; | 83 return false; |
| 84 | 84 |
| 85 #else | 85 #else |
| 86 #if defined(__ARM_PCS_VFP) | 86 #if defined(__ARM_PCS_VFP) |
| 87 return true; | 87 return true; |
| 88 #elif defined(__ARM_PCS) || defined(__SOFTFP__) || defined(__SOFTFP) || \ | 88 #elif defined(__ARM_PCS) || defined(__SOFTFP__) || defined(__SOFTFP) || \ |
| 89 !defined(__VFP_FP__) | 89 !defined(__VFP_FP__) |
| 90 return false; | 90 return false; |
| 91 #else | 91 #else |
| 92 #error "Your version of GCC does not report the FP ABI compiled for." \ | 92 #error "Your version of compiler does not report the FP ABI compiled for." \ |
| 93 "Please report it on this issue" \ | 93 "Please report it on this issue" \ |
| 94 "http://code.google.com/p/v8/issues/detail?id=2140" | 94 "http://code.google.com/p/v8/issues/detail?id=2140" |
| 95 | 95 |
| 96 #endif | 96 #endif |
| 97 #endif | 97 #endif |
| 98 #undef GCC_VERSION | 98 #undef GCC_VERSION |
| 99 } | 99 } |
| 100 | 100 |
| 101 #endif // def __arm__ | 101 #endif // def __arm__ |
| 102 | 102 |
| (...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 383 return munmap(base, size) == 0; | 383 return munmap(base, size) == 0; |
| 384 } | 384 } |
| 385 | 385 |
| 386 | 386 |
| 387 bool VirtualMemory::HasLazyCommits() { | 387 bool VirtualMemory::HasLazyCommits() { |
| 388 return true; | 388 return true; |
| 389 } | 389 } |
| 390 | 390 |
| 391 } // namespace base | 391 } // namespace base |
| 392 } // namespace v8 | 392 } // namespace v8 |
| OLD | NEW |