debugger: remove unnecessary struct per_thread_data

This removes unnecessary 'struct per_thread_data' and avoids the
compilation error 'variable length array in structure extension
will never be supported' by clang. The bug entry is
https://code.google.com/p/chromium/issues/detail?id=476001

Cc: Benjamin Widawsky <benjamin.widawsky@intel.com>
Cc: Thomas Wood <thomas.wood@intel.com>
Signed-off-by: Yunlian Jiang <yunlian@google.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
This commit is contained in:
Yunlian Jiang 2015-05-26 10:22:31 -07:00 committed by Thomas Wood
parent 88c9a82318
commit 95019c2a3c

View File

@ -207,15 +207,11 @@ wait_for_attn(int timeout, int *out_bits) {
#define eu_tid(bit) eu_info->debuggees[bit].tid #define eu_tid(bit) eu_info->debuggees[bit].tid
static struct eu_state * static struct eu_state *
find_eu_shmem(int bit, volatile uint8_t *buf) { find_eu_shmem(int bit, volatile uint8_t *buf) {
struct per_thread_data {
uint8_t ____[dh.per_thread_scratch];
}__attribute__((packed)) *data;
struct eu_state *eu; struct eu_state *eu;
int mem_tid, mem_euid, i; int mem_tid, mem_euid, i;
data = (struct per_thread_data *)buf;
for(i = 0; i < eu_info->num_threads; i++) { for(i = 0; i < eu_info->num_threads; i++) {
eu = (struct eu_state *)&data[i]; eu = (struct eu_state *)(buf + i * dh.per_thread_scratch);
mem_tid = eu->sr0 & 0x7; mem_tid = eu->sr0 & 0x7;
mem_euid = (eu->sr0 >> 8) & 0xf; mem_euid = (eu->sr0 >> 8) & 0xf;
if (mem_tid == eu_tid(bit) && mem_euid == eu_id(bit)) if (mem_tid == eu_tid(bit) && mem_euid == eu_id(bit))