about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/compilers/llvm/12/compiler-rt/darwin-targetconditionals.patch
blob: 425dc2af01e7c6dc530883d443b42ef99250a20e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
diff --git a/lib/sanitizer_common/sanitizer_mac.cpp b/lib/sanitizer_common/sanitizer_mac.cpp
--- a/lib/sanitizer_common/sanitizer_mac.cpp
+++ b/lib/sanitizer_common/sanitizer_mac.cpp
@@ -613,9 +613,15 @@ HandleSignalMode GetHandleSignalMode(int signum) {
 // Offset example:
 // XNU 17 -- macOS 10.13 -- iOS 11 -- tvOS 11 -- watchOS 4
 constexpr u16 GetOSMajorKernelOffset() {
-  if (TARGET_OS_OSX) return 4;
-  if (TARGET_OS_IOS || TARGET_OS_TV) return 6;
-  if (TARGET_OS_WATCH) return 13;
+#if TARGET_OS_OSX
+  return 4;
+#endif
+#if TARGET_OS_IOS || TARGET_OS_TV
+  return 6;
+#endif
+#if TARGET_OS_WATCH
+  return 13;
+#endif
 }
 
 using VersStr = char[64];
@@ -627,13 +633,13 @@ static uptr ApproximateOSVersionViaKernelVersion(VersStr vers) {
   u16 os_major = kernel_major - offset;
 
   const char *format = "%d.0";
-  if (TARGET_OS_OSX) {
-    if (os_major >= 16) {  // macOS 11+
-      os_major -= 5;
-    } else {  // macOS 10.15 and below
-      format = "10.%d";
-    }
+#if TARGET_OS_OSX
+  if (os_major >= 16) {  // macOS 11+
+    os_major -= 5;
+  } else {  // macOS 10.15 and below
+    format = "10.%d";
   }
+#endif
   return internal_snprintf(vers, sizeof(VersStr), format, os_major);
 }
 
@@ -681,15 +687,14 @@ void ParseVersion(const char *vers, u16 *major, u16 *minor) {
 // Aligned versions example:
 // macOS 10.15 -- iOS 13 -- tvOS 13 -- watchOS 6
 static void MapToMacos(u16 *major, u16 *minor) {
-  if (TARGET_OS_OSX)
-    return;
-
-  if (TARGET_OS_IOS || TARGET_OS_TV)
+#if !TARGET_OS_OSX
+#if TARGET_OS_IOS || TARGET_OS_TV
     *major += 2;
-  else if (TARGET_OS_WATCH)
+#elif TARGET_OS_WATCH
     *major += 9;
-  else
+#else
     UNREACHABLE("unsupported platform");
+#endif
 
   if (*major >= 16) {  // macOS 11+
     *major -= 5;
@@ -697,6 +702,7 @@ static void MapToMacos(u16 *major, u16 *minor) {
     *minor = *major;
     *major = 10;
   }
+#endif
 }
 
 static MacosVersion GetMacosAlignedVersionInternal() {