GBE: disable mad for some cases.
authorZhigang Gong <zhigang.gong@intel.com>
Thu, 15 May 2014 05:35:00 +0000 (13:35 +0800)
committerZhigang Gong <zhigang.gong@intel.com>
Tue, 27 May 2014 01:49:03 +0000 (09:49 +0800)
commitd73170df3508d18e250d0af118e3b7955401194f
tree5fc1aeea8888452b762a7f61754d01a735774b9f
parent4d47970cd0c4ab24d98bdfbda57b2b0c80de51d4
GBE: disable mad for some cases.

One case is one operand is an imm value. Then it turns to
save one instruction but add an extra LOADI instruction.
We don't need to bother to use mad in this case.
And considering when we optimize the simd16 under simd8
mode, we

The other case is under simd16 mode. As mad is a 3-src instruction,
which only support simd8, it will convert one mad(16) instruction to
two mad(8) instructions. Then we don't need to use mad.

Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
Reviewed-by: "Yang, Rong R" <rong.r.yang@intel.com>
backend/src/backend/gen_insn_selection.cpp