aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2013-12-27 20:20:28 +0000
committerAndrea Di Biagio <Andrea_DiBiagio@sn.scee.net>2013-12-27 20:20:28 +0000
commit46dcddb350606ffb44eb2affd9c7c80f253044aa (patch)
treeaabc8fbea7f1fccc24c3ae1862414e26d2a2118f /clang/lib/Frontend/CompilerInvocation.cpp
parentba2f146c87414a3acd10767f43f7e150fab37c10 (diff)
downloadllvm-46dcddb350606ffb44eb2affd9c7c80f253044aa.zip
llvm-46dcddb350606ffb44eb2affd9c7c80f253044aa.tar.gz
llvm-46dcddb350606ffb44eb2affd9c7c80f253044aa.tar.bz2
Teach DAGCombiner how to fold a SIGN_EXTEND_INREG of a BUILD_VECTOR of
ConstantSDNodes (or UNDEFs) into a simple BUILD_VECTOR. For example, given the following sequence of dag nodes: i32 C = Constant<1> v4i32 V = BUILD_VECTOR C, C, C, C v4i32 Result = SIGN_EXTEND_INREG V, ValueType:v4i1 The SIGN_EXTEND_INREG node can be folded into a build_vector since the vector in input is a BUILD_VECTOR of constants. The optimized sequence is: i32 C = Constant<-1> v4i32 Result = BUILD_VECTOR C, C, C, C llvm-svn: 198084
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions