| Index: runtime/vm/instructions_ia32.h
|
| diff --git a/runtime/vm/instructions_ia32.h b/runtime/vm/instructions_ia32.h
|
| index 7f9f1885b8c4f5825a091c5996aa93c4c28ef03d..c536124872e8dab059cb9bda74ba8913775ba9c4 100644
|
| --- a/runtime/vm/instructions_ia32.h
|
| +++ b/runtime/vm/instructions_ia32.h
|
| @@ -106,6 +106,33 @@ class ReturnPattern : public InstructionPattern {
|
| static const int kLengthInBytes = 1;
|
| };
|
|
|
| +
|
| +// push ebp
|
| +// mov ebp, esp
|
| +class ProloguePattern : public InstructionPattern {
|
| + public:
|
| + explicit ProloguePattern(uword pc) : InstructionPattern(pc) {}
|
| +
|
| + virtual const int* pattern() const;
|
| + virtual int pattern_length_in_bytes() const { return kLengthInBytes; }
|
| +
|
| + private:
|
| + static const int kLengthInBytes = 3;
|
| +};
|
| +
|
| +
|
| +// mov ebp, esp
|
| +class SetFramePointerPattern : public InstructionPattern {
|
| + public:
|
| + explicit SetFramePointerPattern(uword pc) : InstructionPattern(pc) {}
|
| +
|
| + virtual const int* pattern() const;
|
| + virtual int pattern_length_in_bytes() const { return kLengthInBytes; }
|
| +
|
| + private:
|
| + static const int kLengthInBytes = 2;
|
| +};
|
| +
|
| } // namespace dart
|
|
|
| #endif // VM_INSTRUCTIONS_IA32_H_
|
|
|