Index: src/objects-inl.h |
diff --git a/src/objects-inl.h b/src/objects-inl.h |
index 51247a92e312edc231f3ec97cd67e2ffb6eca369..aae3b9af6a0dda2ba37481088292a3b8d828834e 100644 |
--- a/src/objects-inl.h |
+++ b/src/objects-inl.h |
@@ -6244,6 +6244,10 @@ Code* SharedFunctionInfo::code() const { |
void SharedFunctionInfo::set_code(Code* value, WriteBarrierMode mode) { |
DCHECK(value->kind() != Code::OPTIMIZED_FUNCTION); |
+ // If the SharedFunctionInfo has bytecode we should never mark it for lazy |
+ // compile, since the bytecode is never flushed. |
+ DCHECK(value != GetIsolate()->builtins()->builtin(Builtins::kCompileLazy) || |
+ !HasBytecodeArray()); |
WRITE_FIELD(this, kCodeOffset, value); |
CONDITIONAL_WRITE_BARRIER(value->GetHeap(), this, kCodeOffset, value, mode); |
} |