Title: [277848] trunk/Source/ThirdParty/ANGLE
- Revision
- 277848
- Author
- [email protected]
- Date
- 2021-05-20 20:15:28 -0700 (Thu, 20 May 2021)
Log Message
[Metal ANGLE] Handle NAN constant folding correctly
https://bugs.webkit.org/show_bug.cgi?id=226052
NAN values (0.0f/0.0f) were being handled incorrectly. MSL was being emitted as lowercase 'nanf', instead of NAN
Check for an unlikely NAN case, and emit correct MSL
Reviewed by Dean Jackson.
* src/compiler/translator/TranslatorMetalDirect/EmitMetal.cpp:
(GenMetalTraverser::emitSingleConstant):
Modified Paths
Diff
Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (277847 => 277848)
--- trunk/Source/ThirdParty/ANGLE/ChangeLog 2021-05-21 02:43:18 UTC (rev 277847)
+++ trunk/Source/ThirdParty/ANGLE/ChangeLog 2021-05-21 03:15:28 UTC (rev 277848)
@@ -1,5 +1,18 @@
2021-05-20 Kyle Piddington <[email protected]>
+ [Metal ANGLE] Handle NAN constant folding correctly
+ https://bugs.webkit.org/show_bug.cgi?id=226052
+
+ NAN values (0.0f/0.0f) were being handled incorrectly. MSL was being emitted as lowercase 'nanf', instead of NAN
+ Check for an unlikely NAN case, and emit correct MSL
+
+ Reviewed by Dean Jackson.
+
+ * src/compiler/translator/TranslatorMetalDirect/EmitMetal.cpp:
+ (GenMetalTraverser::emitSingleConstant):
+
+2021-05-20 Kyle Piddington <[email protected]>
+
Red flashes zooming on Google Maps when using external monitor on multi-gpu systems
https://bugs.webkit.org/show_bug.cgi?id=225956
<rdar://77024179>
Modified: trunk/Source/ThirdParty/ANGLE/src/compiler/translator/TranslatorMetalDirect/EmitMetal.cpp (277847 => 277848)
--- trunk/Source/ThirdParty/ANGLE/src/compiler/translator/TranslatorMetalDirect/EmitMetal.cpp 2021-05-21 02:43:18 UTC (rev 277847)
+++ trunk/Source/ThirdParty/ANGLE/src/compiler/translator/TranslatorMetalDirect/EmitMetal.cpp 2021-05-21 03:15:28 UTC (rev 277848)
@@ -1491,7 +1491,14 @@
case TBasicType::EbtFloat:
{
- mOut << constUnion->getFConst() << "f";
+ if (ANGLE_UNLIKELY(isnan(constUnion->getFConst())))
+ {
+ mOut << "NAN";
+ }
+ else
+ {
+ mOut << constUnion->getFConst() << "f";
+ }
}
break;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes