diff options
author | Trevor Norris <trev.norris@gmail.com> | 2014-01-23 12:14:40 -0800 |
---|---|---|
committer | Trevor Norris <trev.norris@gmail.com> | 2014-01-23 12:26:51 -0800 |
commit | f78e5df85467343bf91b4811bc1cb6cd47cc7575 (patch) | |
tree | f86cdfa54be742059aa5da261e12128883527403 /deps/v8/src/objects.cc | |
parent | c79c304ead2e16082465a61156d9e29b01a7909e (diff) | |
download | node-new-f78e5df85467343bf91b4811bc1cb6cd47cc7575.tar.gz |
v8: upgrade to 3.22.24.17
Diffstat (limited to 'deps/v8/src/objects.cc')
-rw-r--r-- | deps/v8/src/objects.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/deps/v8/src/objects.cc b/deps/v8/src/objects.cc index 64fb17979d..cf51024c86 100644 --- a/deps/v8/src/objects.cc +++ b/deps/v8/src/objects.cc @@ -10332,6 +10332,18 @@ void Code::InvalidateRelocation() { } +void Code::InvalidateEmbeddedObjects() { + Object* undefined = GetHeap()->undefined_value(); + int mode_mask = RelocInfo::ModeMask(RelocInfo::EMBEDDED_OBJECT); + for (RelocIterator it(this, mode_mask); !it.done(); it.next()) { + RelocInfo::Mode mode = it.rinfo()->rmode(); + if (mode == RelocInfo::EMBEDDED_OBJECT) { + it.rinfo()->set_target_object(undefined, SKIP_WRITE_BARRIER); + } + } +} + + void Code::Relocate(intptr_t delta) { for (RelocIterator it(this, RelocInfo::kApplyMask); !it.done(); it.next()) { it.rinfo()->apply(delta); |