GBE: refine the "scalar" register handling.
authorZhigang Gong <zhigang.gong@intel.com>
Wed, 12 Mar 2014 06:43:08 +0000 (14:43 +0800)
committerZhigang Gong <zhigang.gong@intel.com>
Tue, 8 Apr 2014 08:21:32 +0000 (16:21 +0800)
commit00029d4b0e34d79747f8a0753a74b3a60858fbbe
treecd367dbef036e3d2615e798b47cd31a2cd734976
parent66e761064fcfd00f9f403f9f9aa6c9fc0a916117
GBE: refine the "scalar" register handling.

The scalar register's actual meaning should be uniform register.
A non-uniform register is a varying register. For further
uniform analysis and bool data optimization, this patch
make the uniform as a new register data attribute. We
can set each new created register as an uniform or varying
register.

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>
13 files changed:
backend/src/backend/context.cpp
backend/src/backend/context.hpp
backend/src/backend/gen_context.cpp
backend/src/backend/gen_insn_selection.cpp
backend/src/backend/gen_insn_selection.hpp
backend/src/backend/gen_reg_allocation.cpp
backend/src/ir/context.cpp
backend/src/ir/context.hpp
backend/src/ir/function.hpp
backend/src/ir/lowering.cpp
backend/src/ir/profile.cpp
backend/src/ir/register.hpp
backend/src/llvm/llvm_gen_backend.cpp