Index: src/objects-inl.h |
diff --git a/src/objects-inl.h b/src/objects-inl.h |
index 6b1cfb3c330f1d22c31793d0b4b807d2f0b537e4..95c64fcf6ffaafa6e56e60b813066cf231e93797 100644 |
--- a/src/objects-inl.h |
+++ b/src/objects-inl.h |
@@ -4602,14 +4602,16 @@ void Code::set_allow_osr_at_loop_nesting_level(int level) { |
int Code::profiler_ticks() { |
DCHECK_EQ(FUNCTION, kind()); |
- return READ_BYTE_FIELD(this, kProfilerTicksOffset); |
+ return ProfilerTicksField::decode( |
+ READ_UINT32_FIELD(this, kKindSpecificFlags1Offset)); |
} |
void Code::set_profiler_ticks(int ticks) { |
- DCHECK(ticks < 256); |
if (kind() == FUNCTION) { |
- WRITE_BYTE_FIELD(this, kProfilerTicksOffset, ticks); |
+ unsigned previous = READ_UINT32_FIELD(this, kKindSpecificFlags1Offset); |
+ unsigned updated = ProfilerTicksField::update(previous, ticks); |
+ WRITE_UINT32_FIELD(this, kKindSpecificFlags1Offset, updated); |
} |
} |