intel/compiler: Split 64-bit MOV-indirects if needed
authorMatt Turner <mattst88@gmail.com>
Tue, 27 Nov 2018 19:20:20 +0000 (11:20 -0800)
committerMatt Turner <mattst88@gmail.com>
Thu, 10 Jan 2019 00:42:40 +0000 (16:42 -0800)
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/intel/compiler/brw_fs_generator.cpp

index 9088c97d92b2abafca5a0c8f0cd1414fa80f2b28..130c475fada78662ffb388e10a2d0868bab57044 100644 (file)
@@ -440,7 +440,8 @@ fs_generator::generate_mov_indirect(fs_inst *inst,
 
       if (type_sz(reg.type) > 4 &&
           ((devinfo->gen == 7 && !devinfo->is_haswell) ||
-           devinfo->is_cherryview || gen_device_info_is_9lp(devinfo))) {
+           devinfo->is_cherryview || gen_device_info_is_9lp(devinfo) ||
+           !devinfo->has_64bit_types)) {
          /* IVB has an issue (which we found empirically) where it reads two
           * address register components per channel for indirectly addressed
           * 64-bit sources.