Lines Matching refs:Truncation
15 class Truncation final {
18 static Truncation None() { return Truncation(TruncationKind::kNone); }
19 static Truncation Bool() { return Truncation(TruncationKind::kBool); }
20 static Truncation Word32() { return Truncation(TruncationKind::kWord32); }
21 static Truncation Word64() { return Truncation(TruncationKind::kWord64); }
22 static Truncation Float32() { return Truncation(TruncationKind::kFloat32); }
23 static Truncation Float64() { return Truncation(TruncationKind::kFloat64); }
24 static Truncation Any() { return Truncation(TruncationKind::kAny); }
26 static Truncation Generalize(Truncation t1, Truncation t2) {
27 return Truncation(Generalize(t1.kind(), t2.kind()));
44 bool operator==(Truncation other) const { return kind() == other.kind(); }
45 bool operator!=(Truncation other) const { return !(*this == other); }
49 bool IsLessGeneralThan(Truncation other) {
64 explicit Truncation(TruncationKind kind) : kind_(kind) {}
85 // Changes representation from {output_type} to {use_rep}. The {truncation}
91 Truncation truncation = Truncation::None());
119 Type* output_type, Truncation truncation);
122 Type* output_type, Truncation truncation);