Home | History | Annotate | Download | only in compiler

Lines Matching refs:Truncation

67 //    about what part of the input is used (we call this truncation) and what
76 UseInfo(MachineRepresentation preferred, Truncation truncation)
77 : preferred_(preferred), truncation_(truncation) {}
79 return UseInfo(MachineRepresentation::kWord32, Truncation::Word32());
82 return UseInfo(MachineRepresentation::kWord64, Truncation::Word64());
85 return UseInfo(MachineRepresentation::kBit, Truncation::Bool());
88 return UseInfo(MachineRepresentation::kFloat32, Truncation::Float32());
91 return UseInfo(MachineRepresentation::kFloat64, Truncation::Float64());
97 return UseInfo(MachineRepresentation::kTagged, Truncation::Any());
102 return UseInfo(MachineRepresentation::kNone, Truncation::Any());
105 return UseInfo(MachineRepresentation::kNone, Truncation::None());
108 // Truncation to a representation that is smaller than the preferred
111 return UseInfo(MachineRepresentation::kFloat64, Truncation::Word32());
114 return UseInfo(MachineRepresentation::kWord64, Truncation::Word32());
117 return UseInfo(MachineRepresentation::kNone, Truncation::Bool());
121 Truncation truncation() const { return truncation_; }
125 Truncation truncation_;
229 use1.truncation().IsLessGeneralThan(use2.truncation());
311 Truncation old_truncation = truncation_;
312 truncation_ = Truncation::Generalize(truncation_, info.truncation());
320 Truncation truncation() const { return truncation_; }
332 Truncation truncation_ = Truncation::None(); // Information about uses.
365 VisitNode(node, info->truncation(), nullptr);
382 VisitNode(node, info->truncation(), lowering);
428 PrintTruncation(info->truncation());
432 PrintTruncation(info->truncation());
442 PrintTruncation(info->truncation());
556 use.preferred(), use.truncation());
666 NodeOutputInfo GetOutputInfoForPhi(Node* node, Truncation use) {
708 void VisitSelect(Node* node, Truncation truncation,
712 NodeOutputInfo output = GetOutputInfoForPhi(node, truncation);
724 // truncation truncation along.
725 UseInfo input_use(output.representation(), truncation);
731 void VisitPhi(Node* node, Truncation truncation,
733 NodeOutputInfo output = GetOutputInfoForPhi(node, truncation);
746 // truncation truncation along.
747 UseInfo input_use(output.representation(), truncation);
830 void VisitNode(Node* node, Truncation truncation,
870 return VisitSelect(node, truncation, lowering);
872 return VisitPhi(node, truncation, lowering);
958 truncation.TruncatesToWord32()) {
979 if (truncation.TruncatesToWord32() &&
1002 if (truncation.TruncatesToWord32()) {
1009 if (BothInputsAreUnsigned32(node) && truncation.TruncatesToWord32()) {
1028 if (truncation.TruncatesToWord32()) {
1035 if (BothInputsAreUnsigned32(node) && truncation.TruncatesToWord32()) {
1176 if (truncation.TruncatesUndefinedToZeroOrNaN()) {
1177 if (truncation.TruncatesNaNToZero()) {
1454 void PrintTruncation(Truncation truncation) {
1457 os << truncation.description();
1464 os << info.preferred() << ":" << info.truncation().description();
1539 output_rep, Truncation::None());