diff options
author | Hal Finkel <hfinkel@anl.gov> | 2013-04-06 19:30:30 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2013-04-06 19:30:30 +0000 |
commit | d61d4f80e6db0dd3f94bb041c5107c5a91ae093d (patch) | |
tree | a8e013fb99b73c42cc4ba744f71bd5d0c8896d3a /llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp | |
parent | 8fc33e5d9559fef34a1dd6c1a3febe38df0b4279 (diff) | |
download | bcm5719-llvm-d61d4f80e6db0dd3f94bb041c5107c5a91ae093d.tar.gz bcm5719-llvm-d61d4f80e6db0dd3f94bb041c5107c5a91ae093d.zip |
Implement PPCInstrInfo::FoldImmediate
There are certain PPC instructions into which we can fold a zero immediate
operand. We can detect such cases by looking at the register class required
by the using operand (so long as it is not otherwise constrained).
llvm-svn: 178961
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp index 1d61a3a8eac..3f5f6c26ffa 100644 --- a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp +++ b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp @@ -76,6 +76,8 @@ PPCRegisterInfo::PPCRegisterInfo(const PPCSubtarget &ST, const TargetRegisterClass * PPCRegisterInfo::getPointerRegClass(const MachineFunction &MF, unsigned Kind) const { + // Note that PPCInstrInfo::FoldImmediate also directly uses this Kind value + // when it checks for ZERO folding. if (Kind == 1) { if (Subtarget.isPPC64()) return &PPC::G8RC_NOX0RegClass; |