aboutsummaryrefslogtreecommitdiff
path: root/devel/intel-graphics-compiler/files/patch-unix
blob: d83ddff3b0a6fab7f230e0c29223fd2f8230fe67 (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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
Relax Linux checks for the code works on any non-Windows platform.

CMake Error at IGC/CMakeLists.txt:1974 (message):
  IGC_OPTION__ARCHITECTURE_TARGET: Target architecture is not specified and
  cannot be deduced from context.

  Please specify one, e.g.  Windows32, Linux64, Android32, ...

--- IGC/cmake/igc_arch_utils.cmake.orig	2021-03-28 09:45:11 UTC
+++ IGC/cmake/igc_arch_utils.cmake
@@ -48,7 +48,7 @@ function(igc_arch_detect targetArchVarName hostArchVar
       set(_targetArchitecture "Windows32")
     endif()
   # Use system processor set by toolchain or CMake.
-  elseif(ANDROID OR (CMAKE_SYSTEM_NAME MATCHES "Linux"))
+  elseif(ANDROID OR (UNIX AND NOT APPLE))
     if(ANDROID)
       set(_targetArchOS "Android")
     else()
@@ -78,7 +78,7 @@ function(igc_arch_detect targetArchVarName hostArchVar
       set(_hostArchitecture "Windows32")
     endif()
   # Use 'uname -m' to detect kernel architecture.
-  elseif(CMAKE_HOST_SYSTEM_NAME MATCHES "Linux")
+  elseif(UNIX AND NOT APPLE)
     set(_hostArchOS "Linux")
     set(_osArchitecture "x86_64")
     execute_process(
--- IGC/CMakeLists.txt.orig	2021-03-28 09:45:11 UTC
+++ IGC/CMakeLists.txt
@@ -429,7 +429,7 @@ endif()
 
 # NOTE: LLVM_ON_UNIX is also true for Android (CMAKE_SYSTEM_NAME specified by Android toolchain file is also "Linux",
 # but we should make sure so there is no errors in our assumptions).
-if((CMAKE_SYSTEM_NAME MATCHES "Linux") OR ANDROID)
+if((UNIX AND NOT APPLE) OR ANDROID)
   set(LLVM_ON_UNIX ON)
 else()
   set(LLVM_ON_UNIX OFF)
--- 3d/common/iStdLib/File.h.orig	2019-11-27 01:05:20 UTC
+++ 3d/common/iStdLib/File.h
@@ -105,12 +105,9 @@ inline DWORD GetModuleFileName( char* pFileName, DWORD
 #elif defined(ISTDLIB_UMD)
     #if defined(_WIN32)
         return ::GetModuleFileNameA( NULL, pFileName, bufSize );
-    #elif defined(__linux__)
+    #else
         //TODO: add Linux implementation.
         return 0;
-    #else
-        // TO DO: replace with non-Windows version
-        #error "TODO implement non-Windows equivalent of GetModuleFileName"
     #endif
 #else
     // this compilation path is not intended
--- 3d/common/iStdLib/Object.h.orig	2019-11-27 01:05:20 UTC
+++ 3d/common/iStdLib/Object.h
@@ -150,7 +150,7 @@ inline long CObject<CAllocatorType>::Acquire( void )
     ASSERT( m_RefCount >= 0 );
     ASSERT( m_RefCount < LONG_MAX );
 
-#if defined(ISTDLIB_MT) && defined(__linux__)
+#if defined(ISTDLIB_MT) && defined(__GNUC__)
     __sync_fetch_and_add(&m_RefCount, 1);
 #elif defined(ISTDLIB_MT)
     ::InterlockedIncrement(&m_RefCount);
@@ -182,7 +182,7 @@ inline long CObject<CAllocatorType>::Release( void )
 {
     ASSERT( m_RefCount > 0 );
 
-#if defined(ISTDLIB_MT) && defined(__linux__)
+#if defined(ISTDLIB_MT) && defined(__GNUC__)
     __sync_sub_and_fetch(&m_RefCount, 1);
 #elif defined(ISTDLIB_MT)
     ::InterlockedDecrement(&m_RefCount);
--- 3d/common/iStdLib/utility.h.orig	2019-11-27 01:05:20 UTC
+++ 3d/common/iStdLib/utility.h
@@ -431,7 +431,7 @@ __forceinline DWORD bsr64( const unsigned long long in
     _BitScanReverse64( &index, static_cast<_int64>( mask ) );
     return static_cast<DWORD>( index );
 
-#elif defined __linux__
+#elif defined __GNUC__
     return static_cast<unsigned int>( 63 - __builtin_clzll( mask ) );
 
 #else
@@ -464,7 +464,7 @@ __forceinline DWORD bsr( const DWORD mask )
     _BitScanReverse( &index, mask );
     return static_cast<DWORD>(index);
 
-#elif defined __linux__
+#elif defined __GNUC__
     return static_cast<unsigned int>( 31 - __builtin_clz( mask ) );
 
 #else
@@ -497,7 +497,7 @@ __forceinline DWORD bsf64( const unsigned long long in
     _BitScanForward64( &index, static_cast<_int64>( mask ) );
     return static_cast<DWORD>( index );
 
-#elif defined __linux__
+#elif defined __GNUC__
     return static_cast<unsigned int>( __builtin_ffsll( mask ) - 1 );
 
 #else
@@ -529,7 +529,7 @@ __forceinline DWORD bsf( const DWORD mask )
     _BitScanForward( &index, mask );
     return index;
 
-#elif defined __linux__
+#elif defined __GNUC__
     return static_cast<unsigned int>( __builtin_ffsl( mask ) - 1 );
 
 #else
--- IGC/AdaptorCommon/customApi.cpp.orig	2019-11-27 01:05:20 UTC
+++ IGC/AdaptorCommon/customApi.cpp
@@ -457,7 +457,7 @@ namespace IGC
                 return "";
             IGCBaseFolder = "/sdcard/intel/igc/";
 
-#elif defined __linux__
+#elif !defined __APPLE__
         if (!IGC_IS_FLAG_ENABLED(DumpToCustomDir))
         {
             IGCBaseFolder = "/tmp/IntelIGC/";
@@ -560,7 +560,7 @@ namespace IGC
 
                 g_shaderOutputFolder = "";
 
-#elif defined __linux__
+#elif !defined __APPLE__
             if (!IGC_IS_FLAG_ENABLED(DumpToCurrentDir) && g_shaderOutputFolder == "" && !IGC_IS_FLAG_ENABLED(DumpToCustomDir))
             {
                 bool needMkdir = false;
--- IGC/AdaptorOCL/CLElfLib/CLElfTypes.h.orig	2020-05-19 05:44:04 UTC
+++ IGC/AdaptorOCL/CLElfLib/CLElfTypes.h
@@ -30,7 +30,7 @@ Abstract:  Defines the types used for ELF headers/sect
 \******************************************************************************/
 #pragma once
 
-#if defined(__linux__) && defined(OGL)
+#if !defined(__APPLE__) && !defined(_WIN32) && defined(OGL)
     #include "os_inc.h"
 #endif
 
--- IGC/GenISAIntrinsics/GenIntrinsics.h.orig	2020-02-10 06:06:31 UTC
+++ IGC/GenISAIntrinsics/GenIntrinsics.h
@@ -67,7 +67,7 @@ namespace GenISAIntrinsic {
   /// Thus the type array should two elements:
   ///    Type Ts[2]{int2, int2}: to resolve to the first instance.
   ///    Type Ts[2]{int4, int4}: to resolve to the second.
-#if defined(ANDROID) || defined(__linux__)
+#if defined(__GNUC__)
   __attribute__ ((visibility ("default"))) Function *getDeclaration(Module *M, ID id, ArrayRef<Type*> OverloadedTys = None);
 #else
   Function *getDeclaration(Module *M, ID id, ArrayRef<Type*> OverloadedTys = None);
--- IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp.orig	2019-11-27 01:05:20 UTC
+++ IGC/OCLFE/igd_fcl_mcl/source/clang_tb.cpp
@@ -65,9 +65,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #if defined(_WIN32 )|| defined( _WIN64 )
 #include <direct.h>
 #include <process.h>
-#endif
-
-#if defined __linux__
+#elif !defined(__APPLE__)
 #include "iStdLib/File.h"
 #endif
 
@@ -311,7 +309,7 @@ namespace FCL
 
             IGCBaseFolder = pathBuf;
         }
-#elif defined __linux__
+#elif !defined(__APPLE__)
         if (!FCL_IGC_IS_FLAG_ENABLED(DumpToCustomDir))
         {
             IGCBaseFolder = "/tmp/IntelIGC/";
@@ -387,7 +385,7 @@ namespace FCL
             iSTD::CreateAppOutputDir(pathBuf, 256, GetBaseIGCOutputFolder(), false, true, !FCL_IGC_IS_FLAG_ENABLED(ShaderDumpPidDisable));
             g_shaderOutputFolder = pathBuf;
         }
-#elif defined __linux__
+#elif !defined(__APPLE__)
         if (!FCL_IGC_IS_FLAG_ENABLED(DumpToCurrentDir) && g_shaderOutputFolder == "" && !FCL_IGC_IS_FLAG_ENABLED(DumpToCustomDir))
         {
             bool needMkdir = true;
--- IGC/common/LLVMWarningsPop.hpp.orig	2021-05-12 10:04:39 UTC
+++ IGC/common/LLVMWarningsPop.hpp
@@ -41,6 +41,6 @@ SPDX-License-Identifier: MIT
 #   pragma  warning( pop )
 #endif
 
-#if defined(__linux__)
+#if defined(__GNUC__)
 #   pragma GCC diagnostic pop
 #endif
--- IGC/common/LLVMWarningsPush.hpp.orig	2020-09-16 10:27:28 UTC
+++ IGC/common/LLVMWarningsPush.hpp
@@ -55,7 +55,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #   pragma warning( push )
 #endif
 
-#if defined(__linux__)
+#if defined(__GNUC__)
 #   pragma GCC diagnostic push
 #   if __GNUC__ > 8
 #       pragma GCC diagnostic ignored "-Winit-list-lifetime"
--- IGC/common/Stats.cpp.orig	2021-03-22 09:55:24 UTC
+++ IGC/common/Stats.cpp
@@ -1061,7 +1061,7 @@ void TimeStats::printTimeCSV( std::string const& corpu
     else
         subFile += IGC::Debug::GetShaderCorpusName();
     const std::string outputFilePath = 
-#if defined(__linux__)
+#if !defined(_WIN32)
     subFile + ".csv";
 #else
     std::string("c:\\Intel\\") + subFile + ".csv";
--- IGC/common/igc_regkeys.hpp.orig	2021-07-18 10:00:28 UTC
+++ IGC/common/igc_regkeys.hpp
@@ -22,7 +22,7 @@ typedef char debugString[256];
 #define IGC_DEBUG_VARIABLES
 #endif
 
-#if defined(__linux__)
+#if !defined(__APPLE__) && !defined(_WIN32)
 #define IGC_DEBUG_VARIABLES
 #endif
 
@@ -52,7 +52,7 @@ struct SRegKeyVariableMetaData
     }
 };
 
-#if defined (__linux__) && !defined(_DEBUG) && !defined(_INTERNAL)
+#if !defined(_WIN32) && !defined(_DEBUG) && !defined(_INTERNAL)
 #define LINUX_RELEASE_MODE
 #endif
 
--- visa/BuildCISAIRImpl.cpp.orig	2021-10-29 09:43:43 UTC
+++ visa/BuildCISAIRImpl.cpp
@@ -925,7 +925,6 @@ static std::mutex mtx;
 int CISA_IR_Builder::ParseVISAText(const std::string& visaText, const std::string& visaTextFile)
 {
     const std::lock_guard<std::mutex> lock(mtx);
-#if defined(__linux__) || defined(_WIN64) || defined(_WIN32)
     // Direct output of parser to null
 #if defined(_WIN64) || defined(_WIN32)
     CISAout = fopen("nul", "w");
@@ -973,16 +972,11 @@ int CISA_IR_Builder::ParseVISAText(const std::string& 
     }
 
     return status;
-#else
-    assert(0 && "vISA asm parsing not supported on this platform");
-    return VISA_FAILURE;
-#endif
 }
 
 // Parses inline asm file from ShaderOverride
 int CISA_IR_Builder::ParseVISAText(const std::string& visaFile)
 {
-#if defined(__linux__) || defined(_WIN64) || defined(_WIN32)
     // Direct output of parser to null
 #if defined(_WIN64) || defined(_WIN32)
     CISAout = fopen("nul", "w");
@@ -1008,10 +1002,6 @@ int CISA_IR_Builder::ParseVISAText(const std::string& 
         fclose(CISAout);
     }
     return VISA_SUCCESS;
-#else
-    assert(0 && "Asm parsing not supported on this platform");
-    return VISA_FAILURE;
-#endif
 }
 
 // default size of the kernel mem manager in bytes