Add SROA and GVN pass to default optLevel.
authorYang Rong <rong.r.yang@intel.com>
Tue, 11 Mar 2014 06:43:51 +0000 (14:43 +0800)
committerZhigang Gong <zhigang.gong@intel.com>
Thu, 13 Mar 2014 01:28:29 +0000 (09:28 +0800)
commitc8830424f2ae811a1fbc490c4752e156928b02c5
tree5ec3f0360c85820a9701d4e49bb1edb7d66a116a
parent908e4a2f31f5590ce1a084be11ec2061287afee8
Add SROA and GVN pass to default optLevel.

SROA and GVN may introduce some integer type not support by backend.
Remove this type assert in GenWrite, and found these types, set the unit to
invalid. If unit is invalid, use optLevel 0, which not include SROA and GVN, and
try again.

Signed-off-by: Yang Rong <rong.r.yang@intel.com>
Reviewed-by: Zhigang Gong <zhigang.gong@linux.intel.com>
backend/src/backend/program.cpp
backend/src/ir/context.cpp
backend/src/ir/unit.cpp
backend/src/ir/unit.hpp
backend/src/llvm/llvm_gen_backend.cpp
backend/src/llvm/llvm_to_gen.cpp