| Index: src/x64/lithium-codegen-x64.h
|
| diff --git a/src/x64/lithium-codegen-x64.h b/src/x64/lithium-codegen-x64.h
|
| index 5ad1c40a2b16abbd293cc1ee006e34eb04b516a5..071ba6683035462536f8304d0d5489653cce0cd6 100644
|
| --- a/src/x64/lithium-codegen-x64.h
|
| +++ b/src/x64/lithium-codegen-x64.h
|
| @@ -106,6 +106,7 @@ class LCodeGen BASE_EMBEDDED {
|
| int32_t ToInteger32(LConstantOperand* op) const;
|
| Smi* ToSmi(LConstantOperand* op) const;
|
| double ToDouble(LConstantOperand* op) const;
|
| + ExternalReference ToExternalReference(LConstantOperand* op) const;
|
| bool IsTaggedConstant(LConstantOperand* op) const;
|
| Handle<Object> ToHandle(LConstantOperand* op) const;
|
| Operand ToOperand(LOperand* op) const;
|
| @@ -178,7 +179,7 @@ class LCodeGen BASE_EMBEDDED {
|
|
|
| int GetStackSlotCount() const { return chunk()->spill_slot_count(); }
|
|
|
| - void Abort(const char* reason);
|
| + void Abort(BailoutReason reason);
|
| void FPRINTF_CHECKING Comment(const char* format, ...);
|
|
|
| void AddDeferredCode(LDeferredCode* code) { deferred_.Add(code, zone()); }
|
| @@ -267,6 +268,7 @@ class LCodeGen BASE_EMBEDDED {
|
| uint32_t additional_index = 0);
|
|
|
| void EmitIntegerMathAbs(LMathAbs* instr);
|
| + void EmitInteger64MathAbs(LMathAbs* instr);
|
|
|
| // Support for recording safepoint and position information.
|
| void RecordSafepoint(LPointerMap* pointers,
|
| @@ -344,6 +346,13 @@ class LCodeGen BASE_EMBEDDED {
|
| void DoStoreKeyedExternalArray(LStoreKeyed* instr);
|
| void DoStoreKeyedFixedDoubleArray(LStoreKeyed* instr);
|
| void DoStoreKeyedFixedArray(LStoreKeyed* instr);
|
| +#ifdef _MSC_VER
|
| + // On windows, you may not access the stack more than one page below
|
| + // the most recently mapped page. To make the allocated area randomly
|
| + // accessible, we write an arbitrary value to each page in range
|
| + // rsp + offset - page_size .. rsp in turn.
|
| + void MakeSureStackPagesMapped(int offset);
|
| +#endif
|
|
|
| Zone* zone_;
|
| LPlatformChunk* const chunk_;
|
|
|