intel/eu: Use a struct copy instead of a memcpy
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 5 Jun 2018 21:33:12 +0000 (14:33 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Tue, 5 Jun 2018 22:51:01 +0000 (15:51 -0700)
The memcpy had the wrong size and this was causing crashes on 32-bit
builds of the driver.

Fixes: 6a9525bf6729a8 "intel/eu: Switch to a logical state stack"
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106830
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/intel/compiler/brw_eu.c

index d0e4ea2070426e66f8e63b34fd41374cb4471d1a..6ef0a6a577ca738a578b0e3daffc0565e8b01496 100644 (file)
@@ -289,7 +289,7 @@ void brw_set_default_acc_write_control(struct brw_codegen *p, unsigned value)
 void brw_push_insn_state( struct brw_codegen *p )
 {
    assert(p->current != &p->stack[BRW_EU_MAX_INSN_STACK-1]);
-   memcpy(p->current + 1, p->current, sizeof(brw_inst));
+   *(p->current + 1) = *p->current;
    p->current++;
 }