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 |