summaryrefslogtreecommitdiff
path: root/lang/intel-compute-runtime/files/patch-i386
blob: c82d7a079b91df05e9d31a9468d9ee4fae43c4a2 (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
Revert BufferObject's size to size_t like before 45a0ceecfbe4

shared/source/os_interface/linux/drm_memory_manager.cpp:61:54: error: non-const
      lvalue reference to type 'size_t' (aka 'unsigned int') cannot bind to a value of unrelated type 'uint64_t'
      (aka 'unsigned long long')
                    bo->gpuAddress = acquireGpuRange(bo->size, false, rootDeviceIndex, false);
                                                     ^~~~~~~~
shared/source/os_interface/linux/drm_memory_manager.h:66:38: note: passing argument
      to parameter 'size' here
    uint64_t acquireGpuRange(size_t &size, bool requireSpecificBitness, uint32_t rootDeviceIndex, bool requi...
                                     ^

SSE2 is not enabled by default on BSDs

core/utilities/clflush.cpp:16:5: error: '_mm_clflush' needs target feature sse2
    _mm_clflush(ptr);
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:785:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:787:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:789:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:798:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:800:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:803:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:805:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:816:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:818:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:820:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^
shared/source/os_interface/windows/wddm_memory_manager.cpp:822:5: error: '_mm_lfence' needs target feature sse2
    _mm_lfence();
    ^

--- shared/source/os_interface/linux/drm_buffer_object.h.orig	2020-05-21 10:39:12 UTC
+++ shared/source/os_interface/linux/drm_buffer_object.h
@@ -55,7 +55,7 @@ class BufferObject {
     std::atomic<uint32_t> refCount;
 
     int handle; // i915 gem object handle
-    uint64_t size;
+    size_t size;
     bool isReused;
 
     //Tiling
--- shared/source/os_interface/windows/wddm_memory_manager.cpp.orig	2021-07-22 17:35:36 UTC
+++ shared/source/os_interface/windows/wddm_memory_manager.cpp
@@ -31,7 +31,11 @@
 #include "shared/source/os_interface/windows/wddm_residency_controller.h"
 
 #include <algorithm>
+#ifdef __SSE2__
 #include <emmintrin.h>
+#else
+#define _mm_lfence()
+#endif
 
 namespace NEO {
 
--- shared/source/utilities/cpuintrinsics.cpp.orig	2020-02-28 16:16:42 UTC
+++ shared/source/utilities/cpuintrinsics.cpp
@@ -12,6 +12,9 @@
 namespace NEO {
 namespace CpuIntrinsics {
 
+#ifdef __GNUC__
+__attribute__((target("sse2")))
+#endif
 void clFlush(void const *ptr) {
     _mm_clflush(ptr);
 }