diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-09-27 09:05:25 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-09-27 09:05:25 +0200 |
commit | fbaab39c94a047f2a0b0bfbe6cf24a790cd7e8b5 (patch) | |
tree | 7b0e57d393cb08a895973cab2d2072cb2b93a77f /js/src/vm/Caches.h | |
parent | 580084e9e1d0355c96a54a9641df6c1fee894948 (diff) | |
parent | e3508f55bed8a463d298021633dbc7d079c9d764 (diff) | |
download | UXP-fbaab39c94a047f2a0b0bfbe6cf24a790cd7e8b5.tar UXP-fbaab39c94a047f2a0b0bfbe6cf24a790cd7e8b5.tar.gz UXP-fbaab39c94a047f2a0b0bfbe6cf24a790cd7e8b5.tar.lz UXP-fbaab39c94a047f2a0b0bfbe6cf24a790cd7e8b5.tar.xz UXP-fbaab39c94a047f2a0b0bfbe6cf24a790cd7e8b5.zip |
Merge branch 'master' into Basilisk-release
Diffstat (limited to 'js/src/vm/Caches.h')
-rw-r--r-- | js/src/vm/Caches.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/js/src/vm/Caches.h b/js/src/vm/Caches.h index 91a78bdc8..b11dd9dcb 100644 --- a/js/src/vm/Caches.h +++ b/js/src/vm/Caches.h @@ -7,6 +7,8 @@ #ifndef vm_Caches_h #define vm_Caches_h +#include <new> + #include "jsatom.h" #include "jsbytecode.h" #include "jsobj.h" @@ -191,14 +193,20 @@ class NewObjectCache char templateObject[MAX_OBJ_SIZE]; }; - Entry entries[41]; // TODO: reconsider size + using EntryArray = Entry[41]; // TODO: reconsider size; + EntryArray entries; public: - typedef int EntryIndex; + using EntryIndex = int; + + NewObjectCache() + : entries{} // zeroes out the array + {} - NewObjectCache() { mozilla::PodZero(this); } - void purge() { mozilla::PodZero(this); } + void purge() { + new (&entries) EntryArray{}; // zeroes out the array + } /* Remove any cached items keyed on moved objects. */ void clearNurseryObjects(JSRuntime* rt); |