R600/SI: Match addc to S_ADD_U32.

The carry always goes to SCC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195037 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Matt Arsenault 2013-11-18 20:09:37 +00:00
parent 62f35fb926
commit b2254e603d

View File

@ -2054,6 +2054,13 @@ def : Pat <
(EXTRACT_SUBREG $a, sub0)
>;
// V_ADD_I32_e32/S_ADD_I32 produces carry in VCC/SCC. For the vector
// case, the sgpr-copies pass will fix this to use the vector version.
def : Pat <
(i32 (addc i32:$src0, i32:$src1)),
(S_ADD_I32 $src0, $src1)
>;
def : Pat <
(or i64:$a, i64:$b),
(INSERT_SUBREG