GBE: Disable SPF and use JMPI + IF/ENDIF to handle each blocks.
authorZhigang Gong <zhigang.gong@intel.com>
Tue, 18 Mar 2014 07:28:44 +0000 (15:28 +0800)
committerZhigang Gong <zhigang.gong@intel.com>
Tue, 8 Apr 2014 08:21:32 +0000 (16:21 +0800)
commit4850c558cbec9234250a6e81601dd70259e10f74
treee1d05536487d25ed0d5841a53e61a6602e49ca81
parentc56848409caf951e35ac7462294c278d31a813ab
GBE: Disable SPF and use JMPI + IF/ENDIF to handle each blocks.

When enable SPF (single program flow), we always need to use f0
as the predication of almost each instruction. This bring some
trouble when we want to get tow levels mask mechanism, for an
example the SEL instruction, and some BOOL operations. We
have to use more than one instructions to do that and simply
introduce 100% of overhead of those instructions.

v2:
fix the wrong assertion.

Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
Reviewed-by: "Yang, Rong R" <rong.r.yang@intel.com>
Reviewed-by: "Song, Ruiling" <ruiling.song@intel.com>
backend/src/backend/gen/gen_mesa_disasm.c
backend/src/backend/gen_context.cpp
backend/src/backend/gen_defs.hpp
backend/src/backend/gen_encoder.cpp
backend/src/backend/gen_insn_selection.cpp
backend/src/backend/gen_insn_selection.hpp
backend/src/backend/gen_insn_selection.hxx
backend/src/backend/gen_register.hpp
src/intel/intel_driver.c
src/intel/intel_gpgpu.c