commit 0774d2bf0950e741640fd5fdb504cc1f4d51d5ec
parent e2c0a7ace6f2f2229bc888646acc688e8f011761
Author: Tooru Fujisawa <arai_a@mac.com>
Date: Thu, 23 Oct 2025 04:16:57 +0000
Bug 1992646 - Use bit field for less-frequently-used bool/enum fields in ScriptLoadRequest. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D269525
Diffstat:
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/js/loader/ScriptLoadRequest.cpp b/js/loader/ScriptLoadRequest.cpp
@@ -93,6 +93,8 @@ ScriptLoadRequest::ScriptLoadRequest(ScriptKind aKind,
mState(State::CheckingCache),
mFetchSourceOnly(false),
mHasSourceMapURL_(false),
+ mDiskCachingPlan(CachingPlan::Uninitialized),
+ mMemoryCachingPlan(CachingPlan::Uninitialized),
mIntegrity(aIntegrity),
mReferrer(aReferrer),
mLoadContext(aContext),
diff --git a/js/loader/ScriptLoadRequest.h b/js/loader/ScriptLoadRequest.h
@@ -251,13 +251,13 @@ class ScriptLoadRequest : public nsISupports,
State mState;
// Request source, not cached bytecode.
- bool mFetchSourceOnly;
+ bool mFetchSourceOnly : 1;
// Becomes true if this has source map url.
//
// Do not access directly.
// Use HasSourceMapURL(), SetSourceMapURL(), and GetSourceMapURL().
- bool mHasSourceMapURL_;
+ bool mHasSourceMapURL_ : 1;
enum class CachingPlan : uint8_t {
// This is not yet considered for caching.
@@ -269,8 +269,8 @@ class ScriptLoadRequest : public nsISupports,
// This fits the condition for the caching (e.g. file size, fetch count).
PassedCondition,
};
- CachingPlan mDiskCachingPlan = CachingPlan::Uninitialized;
- CachingPlan mMemoryCachingPlan = CachingPlan::Uninitialized;
+ CachingPlan mDiskCachingPlan : 2;
+ CachingPlan mMemoryCachingPlan : 2;
CacheExpirationTime mExpirationTime = CacheExpirationTime::Never();