mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-18 12:29:21 +00:00
Revise per review comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41409 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
87503a63d5
commit
e6c1742914
@ -1154,7 +1154,7 @@ protected:
|
||||
getSDVTList(VT)),
|
||||
Value(VT==MVT::f64 ? APFloat(val) : APFloat((float)val)) {
|
||||
}
|
||||
ConstantFPSDNode(bool isTarget, APFloat val, MVT::ValueType VT)
|
||||
ConstantFPSDNode(bool isTarget, const APFloat& val, MVT::ValueType VT)
|
||||
: SDNode(isTarget ? ISD::TargetConstantFP : ISD::ConstantFP,
|
||||
getSDVTList(VT)), Value(val) {
|
||||
}
|
||||
@ -1168,7 +1168,7 @@ public:
|
||||
else
|
||||
return Value.convertToFloat();
|
||||
}
|
||||
APFloat getValueAPF() const { return Value; }
|
||||
const APFloat& getValueAPF() const { return Value; }
|
||||
|
||||
/// isExactlyValue - We don't rely on operator== working on double values, as
|
||||
/// it returns true for things that are clearly not equal, like -0.0 and 0.0.
|
||||
@ -1180,7 +1180,7 @@ public:
|
||||
else
|
||||
return isExactlyValue(APFloat((float)V));
|
||||
}
|
||||
bool isExactlyValue(APFloat V) const;
|
||||
bool isExactlyValue(const APFloat& V) const;
|
||||
|
||||
static bool classof(const ConstantFPSDNode *) { return true; }
|
||||
static bool classof(const SDNode *N) {
|
||||
|
@ -3195,7 +3195,7 @@ SDOperand DAGCombiner::visitFCOPYSIGN(SDNode *N) {
|
||||
return DAG.getNode(ISD::FCOPYSIGN, VT, N0, N1);
|
||||
|
||||
if (N1CFP) {
|
||||
APFloat V = N1CFP->getValueAPF();
|
||||
const APFloat& V = N1CFP->getValueAPF();
|
||||
// copysign(x, c1) -> fabs(x) iff ispos(c1)
|
||||
// copysign(x, c1) -> fneg(fabs(x)) iff isneg(c1)
|
||||
if (!V.isNegative())
|
||||
|
@ -48,7 +48,7 @@ static SDVTList makeVTList(const MVT::ValueType *VTs, unsigned NumVTs) {
|
||||
/// it returns true for things that are clearly not equal, like -0.0 and 0.0.
|
||||
/// As such, this method can be used to do an exact bit-for-bit comparison of
|
||||
/// two floating point values.
|
||||
bool ConstantFPSDNode::isExactlyValue(APFloat V) const {
|
||||
bool ConstantFPSDNode::isExactlyValue(const APFloat& V) const {
|
||||
return Value.bitwiseIsEqual(V);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user