From 4080f8bf2b02441f637bc3f0c00c96060e2f02f0 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 17 Jul 2020 10:48:56 -0700 Subject: [PATCH] freedreno/a2xx: Fix compiler warning in disasm. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit warning: converting a packed ‘instr_cf_t’ {aka ‘union ’} pointer (alignment 1) to a ‘uint16_t’ {aka ‘short unsigned int’} pointer (alignment 2) may result in an unaligned pointer value [-Waddress-of-packed-member] We may know that we'll only ever have aligned instr_cf_ts, but gcc doesn't. Part-of: --- src/gallium/drivers/freedreno/a2xx/disasm-a2xx.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/freedreno/a2xx/disasm-a2xx.c b/src/gallium/drivers/freedreno/a2xx/disasm-a2xx.c index 6f5028c3fb6..b5647307038 100644 --- a/src/gallium/drivers/freedreno/a2xx/disasm-a2xx.c +++ b/src/gallium/drivers/freedreno/a2xx/disasm-a2xx.c @@ -576,7 +576,8 @@ static void print_cf(instr_cf_t *cf, int level) { printf("%s", levels[level]); if (debug & PRINT_RAW) { - uint16_t *words = (uint16_t *)cf; + uint16_t words[3]; + memcpy(&words, cf, sizeof(words)); printf(" %04x %04x %04x \t", words[0], words[1], words[2]); } -- 2.30.2