Various compile-time boolean flags could/should be marked constexpr
authorrmorisset@apple.com <rmorisset@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 22 May 2020 02:17:54 +0000 (02:17 +0000)
committerrmorisset@apple.com <rmorisset@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 22 May 2020 02:17:54 +0000 (02:17 +0000)
https://bugs.webkit.org/show_bug.cgi?id=212244

Reviewed by Mark Lam.

Source/JavaScriptCore:

This trivial patch saves roughly 16kB from the JavaScriptCore binary in release mode.

* b3/B3OptimizeAssociativeExpressionTrees.cpp:
* b3/air/AirAllocateRegistersByGraphColoring.cpp:
* b3/air/AirSimplifyCFG.cpp:
(JSC::B3::Air::simplifyCFG):
* b3/air/AirTmpWidth.cpp:
(JSC::B3::Air::TmpWidth::recompute):
* dfg/DFGPredictionPropagationPhase.cpp:
* heap/GCIncomingRefCountedInlines.h:
(JSC::GCIncomingRefCounted<T>::filterIncomingReferences):
* heap/Heap.cpp:
(JSC::Heap::updateAllocationLimits):
* wasm/WasmEntryPlan.cpp:

Source/WTF:

* wtf/ParkingLot.cpp:

Tools:

* TestWebKitAPI/Tests/WTF/Condition.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@262040 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/b3/B3OptimizeAssociativeExpressionTrees.cpp
Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp
Source/JavaScriptCore/b3/air/AirSimplifyCFG.cpp
Source/JavaScriptCore/b3/air/AirTmpWidth.cpp
Source/JavaScriptCore/dfg/DFGPredictionPropagationPhase.cpp
Source/JavaScriptCore/heap/GCIncomingRefCountedInlines.h
Source/JavaScriptCore/heap/Heap.cpp
Source/JavaScriptCore/wasm/WasmEntryPlan.cpp
Source/WTF/ChangeLog
Source/WTF/wtf/ParkingLot.cpp
Tools/ChangeLog
Tools/TestWebKitAPI/Tests/WTF/Condition.cpp

index 09f7cd2..cc9251b 100644 (file)
@@ -1,5 +1,27 @@
 2020-05-21  Robin Morisset  <rmorisset@apple.com>
 
+        Various compile-time boolean flags could/should be marked constexpr
+        https://bugs.webkit.org/show_bug.cgi?id=212244
+
+        Reviewed by Mark Lam.
+
+        This trivial patch saves roughly 16kB from the JavaScriptCore binary in release mode.
+
+        * b3/B3OptimizeAssociativeExpressionTrees.cpp:
+        * b3/air/AirAllocateRegistersByGraphColoring.cpp:
+        * b3/air/AirSimplifyCFG.cpp:
+        (JSC::B3::Air::simplifyCFG):
+        * b3/air/AirTmpWidth.cpp:
+        (JSC::B3::Air::TmpWidth::recompute):
+        * dfg/DFGPredictionPropagationPhase.cpp:
+        * heap/GCIncomingRefCountedInlines.h:
+        (JSC::GCIncomingRefCounted<T>::filterIncomingReferences):
+        * heap/Heap.cpp:
+        (JSC::Heap::updateAllocationLimits):
+        * wasm/WasmEntryPlan.cpp:
+
+2020-05-21  Robin Morisset  <rmorisset@apple.com>
+
         Remove AssemblerBufferWithConstantPool.h (as it has been dead for years)
         https://bugs.webkit.org/show_bug.cgi?id=212241
 
index 7fd09a8..9875c6e 100644 (file)
@@ -57,7 +57,7 @@ private:
     bool optimizeRootedTree(Value* root, InsertionSet&, size_t indexInBlock, const Vector<unsigned>& useCounts);
 
     Procedure& m_proc;
-    bool verbose { false };
+    static constexpr bool verbose { false };
 };
 
 int64_t OptimizeAssociativeExpressionTrees::neutralElement(Opcode op)
index a1c843d..9c1b114 100644 (file)
@@ -43,9 +43,9 @@ namespace JSC { namespace B3 { namespace Air {
 
 namespace {
 
-bool debug = false;
-bool traceDebug = false;
-bool reportStats = false;
+static constexpr bool debug = false;
+static constexpr bool traceDebug = false;
+static constexpr bool reportStats = false;
 
 // The AbstractColoringAllocator defines all the code that is independant
 // from the bank or register and can be shared when allocating registers.
index 816d4c9..1788869 100644 (file)
@@ -35,7 +35,7 @@ namespace JSC { namespace B3 { namespace Air {
 
 bool simplifyCFG(Code& code)
 {
-    const bool verbose = false;
+    constexpr bool verbose = false;
     
     PhaseScope phaseScope(code, "simplifyCFG");
     
index 7ae7e2f..b7b3bbb 100644 (file)
@@ -52,7 +52,7 @@ void TmpWidth::recompute(Code& code)
     // Set this to true to cause this analysis to always return pessimistic results.
     const bool beCareful = false;
 
-    const bool verbose = false;
+    constexpr bool verbose = false;
 
     if (verbose) {
         dataLog("Code before TmpWidth:\n");
index 9baa28c..bf871bd 100644 (file)
@@ -36,7 +36,7 @@ namespace JSC { namespace DFG {
 
 namespace {
 
-bool verboseFixPointLoops = false;
+static constexpr bool verboseFixPointLoops = false;
 
 class PredictionPropagationPhase : public Phase {
 public:
index 35d4199..1b3a998 100644 (file)
@@ -59,7 +59,7 @@ template<typename T>
 template<typename FilterFunctionType>
 bool GCIncomingRefCounted<T>::filterIncomingReferences(FilterFunctionType&& filterFunction)
 {
-    const bool verbose = false;
+    constexpr bool verbose = false;
     
     if (verbose)
         dataLog("Filtering incoming references.\n");
index 4022674..3d75fcf 100644 (file)
@@ -97,7 +97,7 @@ namespace JSC {
 
 namespace {
 
-bool verboseStop = false;
+static constexpr bool verboseStop = false;
 
 double maxPauseMS(double thisPauseMS)
 {
@@ -2244,7 +2244,7 @@ void Heap::notifyIncrementalSweeper()
 
 void Heap::updateAllocationLimits()
 {
-    static constexpr bool verbose = false;
+    constexpr bool verbose = false;
     
     if (verbose) {
         dataLog("\n");
index e7cf14d..0a9cf05 100644 (file)
@@ -38,7 +38,7 @@
 namespace JSC { namespace Wasm {
 
 namespace WasmEntryPlanInternal {
-static const bool verbose = false;
+static constexpr bool verbose = false;
 }
 
 EntryPlan::EntryPlan(Context* context, Ref<ModuleInformation> info, AsyncWork work, CompletionTask&& task)
index f347002..f83d72e 100644 (file)
@@ -1,3 +1,12 @@
+2020-05-21  Robin Morisset  <rmorisset@apple.com>
+
+        Various compile-time boolean flags could/should be marked constexpr
+        https://bugs.webkit.org/show_bug.cgi?id=212244
+
+        Reviewed by Mark Lam.
+
+        * wtf/ParkingLot.cpp:
+
 2020-05-20  Mark Lam  <mark.lam@apple.com>
 
         Add more Bitmap methods.
index 37ba3c6..c22d43a 100644 (file)
@@ -40,7 +40,7 @@ namespace WTF {
 
 namespace {
 
-const bool verbose = false;
+static constexpr bool verbose = false;
 
 struct ThreadData : public ThreadSafeRefCounted<ThreadData> {
     WTF_MAKE_FAST_ALLOCATED;
index 585931d..90d08be 100644 (file)
@@ -1,3 +1,12 @@
+2020-05-21  Robin Morisset  <rmorisset@apple.com>
+
+        Various compile-time boolean flags could/should be marked constexpr
+        https://bugs.webkit.org/show_bug.cgi?id=212244
+
+        Reviewed by Mark Lam.
+
+        * TestWebKitAPI/Tests/WTF/Condition.cpp:
+
 2020-05-21  Mark Lam  <mark.lam@apple.com>
 
         Rename some variables in Bitmap API test for consistency and better readability.
index 0ec105d..5e409c5 100644 (file)
@@ -38,7 +38,7 @@ namespace TestWebKitAPI {
 
 namespace {
 
-const bool verbose = false;
+static constexpr bool verbose = false;
 
 enum NotifyStyle {
     AlwaysNotifyOne,