| Index: runtime/vm/intermediate_language.h
|
| diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h
|
| index 5d1786e483b653519f463b3cd8e604ddd0412465..e8a8e32398c9906e657998093c0c0a7cda7eb771 100644
|
| --- a/runtime/vm/intermediate_language.h
|
| +++ b/runtime/vm/intermediate_language.h
|
| @@ -70,6 +70,7 @@ class LocationSummary;
|
| M(UnarySmiOp, UnarySmiOpComp) \
|
| M(NumberNegate, NumberNegateComp) \
|
| M(CheckStackOverflow, CheckStackOverflowComp) \
|
| + M(ToDouble, ToDoubleComp) \
|
|
|
|
|
| #define FORWARD_DECLARATION(ShortName, ClassName) class ClassName;
|
| @@ -1532,6 +1533,33 @@ class CheckStackOverflowComp : public TemplateComputation<0> {
|
| };
|
|
|
|
|
| +class ToDoubleComp : public TemplateComputation<1> {
|
| + public:
|
| + ToDoubleComp(Value* value,
|
| + ObjectKind from,
|
| + InstanceCallComp* instance_call)
|
| + : from_(from), instance_call_(instance_call) {
|
| + ASSERT(value != NULL);
|
| + inputs_[0] = value;
|
| + }
|
| +
|
| + Value* value() const { return inputs_[0]; }
|
| + ObjectKind from() const { return from_; }
|
| +
|
| + InstanceCallComp* instance_call() const { return instance_call_; }
|
| +
|
| + virtual void PrintOperandsTo(BufferFormatter* f) const;
|
| +
|
| + DECLARE_COMPUTATION(ToDouble)
|
| +
|
| + private:
|
| + const ObjectKind from_;
|
| + InstanceCallComp* instance_call_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(ToDoubleComp);
|
| +};
|
| +
|
| +
|
| #undef DECLARE_COMPUTATION
|
|
|
|
|
|
|