5 #ifndef V8_COMPILER_OPERATION_TYPER_H_ 6 #define V8_COMPILER_OPERATION_TYPER_H_ 8 #include "src/base/flags.h" 9 #include "src/compiler/opcodes.h" 10 #include "src/compiler/types.h" 11 #include "src/objects.h" 41 Type WeakenRange(
Type current_range,
Type previous_range);
44 #define DECLARE_METHOD(Name) Type Name(Type type); 45 SIMPLIFIED_NUMBER_UNOP_LIST(DECLARE_METHOD)
46 SIMPLIFIED_SPECULATIVE_NUMBER_UNOP_LIST(DECLARE_METHOD)
47 DECLARE_METHOD(ConvertReceiver)
51 #define DECLARE_METHOD(Name) Type Name(Type lhs, Type rhs); 52 SIMPLIFIED_NUMBER_BINOP_LIST(DECLARE_METHOD)
53 SIMPLIFIED_SPECULATIVE_NUMBER_BINOP_LIST(DECLARE_METHOD)
68 enum ComparisonOutcomeFlags {
71 kComparisonUndefined = 4
74 Type singleton_false()
const {
return singleton_false_; }
75 Type singleton_true()
const {
return singleton_true_; }
76 Type singleton_the_hole()
const {
return singleton_the_hole_; }
86 Type AddRanger(
double lhs_min,
double lhs_max,
double rhs_min,
88 Type SubtractRanger(
double lhs_min,
double lhs_max,
double rhs_min,
90 Type MultiplyRanger(
double lhs_min,
double lhs_max,
double rhs_min,
93 Zone* zone()
const {
return zone_; }
100 Type singleton_NaN_string_;
101 Type singleton_zero_string_;
102 Type singleton_false_;
103 Type singleton_true_;
104 Type singleton_the_hole_;
107 Type singleton_empty_string_;
116 #endif // V8_COMPILER_OPERATION_TYPER_H_