Bug 1499010: Mark ecmaPow to allow calling from recovery code r=tcampbell
authorIain Ireland <iireland@mozilla.com>
Mon, 15 Oct 2018 13:31:34 +0000
changeset 499726 ad329ec90b6eedfdc428f8dcb08d85aed08af61d
parent 499725 942ccac42c5e7e0ef48f5ef3f1b3d18f1cf47750
child 499737 e362c18e1830925ac30a83c45eccd16257cb58b9
push id1864
push userffxbld-merge
push dateMon, 03 Dec 2018 15:51:40 +0000
treeherdermozilla-release@f040763d99ad [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstcampbell
bugs1499010
milestone64.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1499010: Mark ecmaPow to allow calling from recovery code r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D8714
js/src/jsmath.cpp
--- a/js/src/jsmath.cpp
+++ b/js/src/jsmath.cpp
@@ -567,17 +567,17 @@ js::powi(double x, int32_t y)
         }
         m *= m;
     }
 }
 
 double
 js::ecmaPow(double x, double y)
 {
-    AutoUnsafeCallWithABI unsafe;
+    AutoUnsafeCallWithABI unsafe(UnsafeABIStrictness::AllowPendingExceptions);
 
     /*
      * Use powi if the exponent is an integer-valued double. We don't have to
      * check for NaN since a comparison with NaN is always false.
      */
     int32_t yi;
     if (NumberEqualsInt32(y, &yi)) {
         return powi(x, yi);