Commit e951d382 authored by ulan@chromium.org's avatar ulan@chromium.org

Set the code age field of SharedFunctionInfo correctly.

BUG=
TEST=

Review URL: http://codereview.chromium.org/8554009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 4cedd762
......@@ -1012,7 +1012,9 @@ class StaticMarkingVisitor : public StaticVisitorBase {
MarkBit code_mark =
Marking::MarkBitFrom(function->unchecked_code());
if (code_mark.Get()) {
shared_info->set_code_age(0);
if (!Marking::MarkBitFrom(shared_info).Get()) {
shared_info->set_code_age(0);
}
return false;
}
......@@ -1030,7 +1032,6 @@ class StaticMarkingVisitor : public StaticVisitorBase {
MarkBit code_mark =
Marking::MarkBitFrom(shared_info->unchecked_code());
if (code_mark.Get()) {
shared_info->set_code_age(0);
return false;
}
......
......@@ -3667,8 +3667,8 @@ int SharedFunctionInfo::code_age() {
void SharedFunctionInfo::set_code_age(int code_age) {
set_compiler_hints(compiler_hints() |
((code_age & kCodeAgeMask) << kCodeAgeShift));
int hints = compiler_hints() & ~(kCodeAgeMask << kCodeAgeShift);
set_compiler_hints(hints | ((code_age & kCodeAgeMask) << kCodeAgeShift));
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment