diff options
author | Hal Finkel <hfinkel@anl.gov> | 2013-04-20 05:16:26 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2013-04-20 05:16:26 +0000 |
commit | 0f64e21bb92a586b16680a8749d3c2c5a2f1e09b (patch) | |
tree | 0c3ae9a6ce9589fe8ba043119db96006183501dd /llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp | |
parent | b8bd232a3da38b11bb0b848ad2bd18d57319b9dc (diff) | |
download | llvm-0f64e21bb92a586b16680a8749d3c2c5a2f1e09b.zip llvm-0f64e21bb92a586b16680a8749d3c2c5a2f1e09b.tar.gz llvm-0f64e21bb92a586b16680a8749d3c2c5a2f1e09b.tar.bz2 |
Move PPC getSwappedPredicate for reuse
The getSwappedPredicate function can be used in other places (such as in
improvements to the PPCCTRLoops pass). Instead of trapping it as a static
function in PPCInstrInfo, move it into PPCPredicates with other
predicate-related things.
No functionality change intended.
llvm-svn: 179926
Diffstat (limited to 'llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp index d84eb9c..853e505 100644 --- a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp +++ b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp @@ -29,3 +29,18 @@ PPC::Predicate PPC::InvertPredicate(PPC::Predicate Opcode) { } llvm_unreachable("Unknown PPC branch opcode!"); } + +PPC::Predicate PPC::getSwappedPredicate(PPC::Predicate Opcode) { + switch (Opcode) { + case PPC::PRED_EQ: return PPC::PRED_EQ; + case PPC::PRED_NE: return PPC::PRED_NE; + case PPC::PRED_LT: return PPC::PRED_GT; + case PPC::PRED_GE: return PPC::PRED_LE; + case PPC::PRED_GT: return PPC::PRED_LT; + case PPC::PRED_LE: return PPC::PRED_GE; + case PPC::PRED_NU: return PPC::PRED_NU; + case PPC::PRED_UN: return PPC::PRED_UN; + } + llvm_unreachable("Unknown PPC branch opcode!"); +} + |