Title: [261754] trunk/Source/_javascript_Core
- Revision
- 261754
- Author
- commit-qu...@webkit.org
- Date
- 2020-05-15 12:24:59 -0700 (Fri, 15 May 2020)
Log Message
-Wtype-limits warning spam from CCallHelpers.h
https://bugs.webkit.org/show_bug.cgi?id=211701
Patch by Michael Catanzaro <mcatanz...@gnome.org> on 2020-05-15
Reviewed by Darin Adler.
Skip the problematic loops when TargetSize or NumberOfRegisters is 0 using constexpr if.
Solution suggested by Mark Lam.
* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupStubArgs):
(JSC::CCallHelpers::clampArrayToSize):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (261753 => 261754)
--- trunk/Source/_javascript_Core/ChangeLog 2020-05-15 19:02:03 UTC (rev 261753)
+++ trunk/Source/_javascript_Core/ChangeLog 2020-05-15 19:24:59 UTC (rev 261754)
@@ -1,3 +1,17 @@
+2020-05-15 Michael Catanzaro <mcatanz...@gnome.org>
+
+ -Wtype-limits warning spam from CCallHelpers.h
+ https://bugs.webkit.org/show_bug.cgi?id=211701
+
+ Reviewed by Darin Adler.
+
+ Skip the problematic loops when TargetSize or NumberOfRegisters is 0 using constexpr if.
+ Solution suggested by Mark Lam.
+
+ * jit/CCallHelpers.h:
+ (JSC::CCallHelpers::setupStubArgs):
+ (JSC::CCallHelpers::clampArrayToSize):
+
2020-05-15 Mark Lam <mark....@apple.com>
Remove debugging dataLogs in LinkBuffer::copyCompactAndLinkCode() for release builds.
Modified: trunk/Source/_javascript_Core/jit/CCallHelpers.h (261753 => 261754)
--- trunk/Source/_javascript_Core/jit/CCallHelpers.h 2020-05-15 19:02:03 UTC (rev 261753)
+++ trunk/Source/_javascript_Core/jit/CCallHelpers.h 2020-05-15 19:24:59 UTC (rev 261754)
@@ -99,9 +99,12 @@
typedef std::pair<RegType, RegType> RegPair;
Vector<RegPair, NumberOfRegisters> pairs;
- for (unsigned i = 0; i < NumberOfRegisters; ++i) {
- if (sources[i] != destinations[i])
- pairs.append(std::make_pair(sources[i], destinations[i]));
+ // if constexpr avoids warnings when NumberOfRegisters is 0.
+ if constexpr (NumberOfRegisters > 0) {
+ for (unsigned i = 0; i < NumberOfRegisters; ++i) {
+ if (sources[i] != destinations[i])
+ pairs.append(std::make_pair(sources[i], destinations[i]));
+ }
}
#if ASSERT_ENABLED
@@ -313,9 +316,12 @@
std::array<RegType, TargetSize> result { };
- for (unsigned i = 0; i < TargetSize; i++) {
- ASSERT(sourceArray[i] != static_cast<int32_t>(InfoTypeForReg<RegType>::InvalidIndex));
- result[i] = sourceArray[i];
+ // if constexpr avoids warnings when TargetSize is 0.
+ if constexpr (TargetSize > 0) {
+ for (unsigned i = 0; i < TargetSize; i++) {
+ ASSERT(sourceArray[i] != static_cast<int32_t>(InfoTypeForReg<RegType>::InvalidIndex));
+ result[i] = sourceArray[i];
+ }
}
return result;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes