| Index: src/compiler/instruction-scheduler.cc
|
| diff --git a/src/compiler/instruction-scheduler.cc b/src/compiler/instruction-scheduler.cc
|
| index 829e883f49a20f12d006df43d0678c1748a4030a..9f7f9cac88c29f45cc00c0a89bee657c4ad6a2e6 100644
|
| --- a/src/compiler/instruction-scheduler.cc
|
| +++ b/src/compiler/instruction-scheduler.cc
|
| @@ -172,13 +172,17 @@ void InstructionScheduler::ScheduleBlock() {
|
| int InstructionScheduler::GetInstructionFlags(const Instruction* instr) const {
|
| switch (instr->arch_opcode()) {
|
| case kArchNop:
|
| - case kArchStackPointer:
|
| case kArchFramePointer:
|
| case kArchParentFramePointer:
|
| case kArchTruncateDoubleToI:
|
| case kArchStackSlot:
|
| return kNoOpcodeFlags;
|
|
|
| + case kArchStackPointer:
|
| + // ArchStackPointer instruction loads the current stack pointer value and
|
| + // must not be reordered with instruction with side effects.
|
| + return kIsLoadOperation;
|
| +
|
| case kArchPrepareCallCFunction:
|
| case kArchPrepareTailCall:
|
| case kArchCallCFunction:
|
|
|