| Index: src/crankshaft/ia32/lithium-ia32.h
|
| diff --git a/src/crankshaft/ia32/lithium-ia32.h b/src/crankshaft/ia32/lithium-ia32.h
|
| index 7e2e56e01e6fea0fff7bb23fe7fbe212294d8bad..6f029d51ebb64764cee4e28aa5aeadc86ba30cce 100644
|
| --- a/src/crankshaft/ia32/lithium-ia32.h
|
| +++ b/src/crankshaft/ia32/lithium-ia32.h
|
| @@ -225,6 +225,13 @@ class LInstruction : public ZoneObject {
|
| void MarkAsCall() { bit_field_ = IsCallBits::update(bit_field_, true); }
|
| bool IsCall() const { return IsCallBits::decode(bit_field_); }
|
|
|
| + void MarkAsSyntacticTailCall() {
|
| + bit_field_ = IsSyntacticTailCallBits::update(bit_field_, true);
|
| + }
|
| + bool IsSyntacticTailCall() const {
|
| + return IsSyntacticTailCallBits::decode(bit_field_);
|
| + }
|
| +
|
| // Interface to the register allocator and iterators.
|
| bool ClobbersTemps() const { return IsCall(); }
|
| bool ClobbersRegisters() const { return IsCall(); }
|
| @@ -259,6 +266,8 @@ class LInstruction : public ZoneObject {
|
| virtual LOperand* TempAt(int i) = 0;
|
|
|
| class IsCallBits: public BitField<bool, 0, 1> {};
|
| + class IsSyntacticTailCallBits : public BitField<bool, IsCallBits::kNext, 1> {
|
| + };
|
|
|
| LEnvironment* environment_;
|
| SetOncePointer<LPointerMap> pointer_map_;
|
|
|