PPC: Teach FMA mutate to respect register classes.
authorKyle Butt <kyle+llvm@iteratee.net>
Thu, 10 Dec 2015 21:28:40 +0000 (21:28 +0000)
committerKyle Butt <kyle+llvm@iteratee.net>
Thu, 10 Dec 2015 21:28:40 +0000 (21:28 +0000)
commite7ad314f80edd67ebe5a36a91cfa345bfea0bc62
tree3994984bda7accec49792a18614fe168c85292a7
parentf6aeea168a04bf0dcc648c4f081af4d55e9ad419
PPC: Teach FMA mutate to respect register classes.

This was causing bad code gen and assembly that won't assemble, as
mixed altivec and vsx code would end up with a vsx high register
assigned to an altivec instruction, which won't work. Constraining the
classes allows the optimization to proceed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@255299 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCVSXFMAMutate.cpp
test/CodeGen/PowerPC/fma-mutate-register-constraint.ll [new file with mode: 0644]