1 |
vapier 15/05/28 22:52:28 |
2 |
|
3 |
Added: intel-gpu-tools-1.10-clang.patch |
4 |
Log: |
5 |
Add fix from upstream for building w/clang. |
6 |
|
7 |
(Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key D2E96200) |
8 |
|
9 |
Revision Changes Path |
10 |
1.1 x11-apps/intel-gpu-tools/files/intel-gpu-tools-1.10-clang.patch |
11 |
|
12 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-apps/intel-gpu-tools/files/intel-gpu-tools-1.10-clang.patch?rev=1.1&view=markup |
13 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-apps/intel-gpu-tools/files/intel-gpu-tools-1.10-clang.patch?rev=1.1&content-type=text/plain |
14 |
|
15 |
Index: intel-gpu-tools-1.10-clang.patch |
16 |
=================================================================== |
17 |
fix from upstream for building w/clang |
18 |
|
19 |
From 95019c2a3c4ed5943ad16e17c8dcf36fd6492adc Mon Sep 17 00:00:00 2001 |
20 |
From: Yunlian Jiang <yunlian@××××××.com> |
21 |
Date: Tue, 26 May 2015 10:22:31 -0700 |
22 |
Subject: [PATCH] debugger: remove unnecessary struct per_thread_data |
23 |
|
24 |
This removes unnecessary 'struct per_thread_data' and avoids the |
25 |
compilation error 'variable length array in structure extension |
26 |
will never be supported' by clang. The bug entry is |
27 |
https://code.google.com/p/chromium/issues/detail?id=476001 |
28 |
|
29 |
Cc: Benjamin Widawsky <benjamin.widawsky@×××××.com> |
30 |
Cc: Thomas Wood <thomas.wood@×××××.com> |
31 |
Signed-off-by: Yunlian Jiang <yunlian@××××××.com> |
32 |
Signed-off-by: Thomas Wood <thomas.wood@×××××.com> |
33 |
--- |
34 |
debugger/eudb.c | 6 +----- |
35 |
1 file changed, 1 insertion(+), 5 deletions(-) |
36 |
|
37 |
diff --git a/debugger/eudb.c b/debugger/eudb.c |
38 |
index 0e810db..39c5cca 100644 |
39 |
--- a/debugger/eudb.c |
40 |
+++ b/debugger/eudb.c |
41 |
@@ -207,15 +207,11 @@ wait_for_attn(int timeout, int *out_bits) { |
42 |
#define eu_tid(bit) eu_info->debuggees[bit].tid |
43 |
static struct eu_state * |
44 |
find_eu_shmem(int bit, volatile uint8_t *buf) { |
45 |
- struct per_thread_data { |
46 |
- uint8_t ____[dh.per_thread_scratch]; |
47 |
- }__attribute__((packed)) *data; |
48 |
struct eu_state *eu; |
49 |
int mem_tid, mem_euid, i; |
50 |
|
51 |
- data = (struct per_thread_data *)buf; |
52 |
for(i = 0; i < eu_info->num_threads; i++) { |
53 |
- eu = (struct eu_state *)&data[i]; |
54 |
+ eu = (struct eu_state *)(buf + i * dh.per_thread_scratch); |
55 |
mem_tid = eu->sr0 & 0x7; |
56 |
mem_euid = (eu->sr0 >> 8) & 0xf; |
57 |
if (mem_tid == eu_tid(bit) && mem_euid == eu_id(bit)) |
58 |
-- |
59 |
2.4.1 |