diff options
author | Hal Finkel <hfinkel@anl.gov> | 2013-08-19 05:01:02 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2013-08-19 05:01:02 +0000 |
commit | dbc78e1f736c92102aa66c28286c176d00e4f60c (patch) | |
tree | 4ad090e4ba46d2b394a21bb2319c80848eb8f0be /llvm/lib/Target/PowerPC/PPCSubtarget.h | |
parent | 964157146d53e8221e139ef8134cd6c019a587e1 (diff) | |
download | bcm5719-llvm-dbc78e1f736c92102aa66c28286c176d00e4f60c.tar.gz bcm5719-llvm-dbc78e1f736c92102aa66c28286c176d00e4f60c.zip |
Add the PPC fcpsgn instruction
Modern PPC cores support a floating-point copysign instruction, and we can use
this to lower the FCOPYSIGN node (which is created from calls to the libm
copysign function). A couple of extra patterns are necessary because the
operand types of FCOPYSIGN need not agree.
llvm-svn: 188653
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCSubtarget.h')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCSubtarget.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCSubtarget.h b/llvm/lib/Target/PowerPC/PPCSubtarget.h index 3f3fc0e9cda..a933bf69bbe 100644 --- a/llvm/lib/Target/PowerPC/PPCSubtarget.h +++ b/llvm/lib/Target/PowerPC/PPCSubtarget.h @@ -76,6 +76,7 @@ protected: bool IsPPC64; bool HasAltivec; bool HasQPX; + bool HasFCPSGN; bool HasFSQRT; bool HasFRE, HasFRES, HasFRSQRTE, HasFRSQRTES; bool HasRecipPrec; @@ -171,6 +172,7 @@ public: bool isLittleEndian() const { return IsLittleEndian; } // Specific obvious features. + bool hasFCPSGN() const { return HasFCPSGN; } bool hasFSQRT() const { return HasFSQRT; } bool hasFRE() const { return HasFRE; } bool hasFRES() const { return HasFRES; } |