aboutsummaryrefslogtreecommitdiff
path: root/depends/patches/qt/fast_fixed_dtoa_no_optimize.patch
blob: d4d6539f56dc4e983529be658fe7dfa1dbaadb96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Modify the optimisation flags for FastFixedDtoa.
This fixes a non-determinism issue in the asm produced for
this function when cross-compiling on x86_64 and aarch64 for
the arm-linux-gnueabihf HOST.

--- a/qtbase/src/3rdparty/double-conversion/fixed-dtoa.h
+++ b/qtbase/src/3rdparty/double-conversion/fixed-dtoa.h
@@ -48,9 +48,12 @@ namespace double_conversion {
 //
 // This method only works for some parameters. If it can't handle the input it
 // returns false. The output is null-terminated when the function succeeds.
+#pragma GCC push_options
+#pragma GCC optimize ("-O1")
 bool FastFixedDtoa(double v, int fractional_count,
                    Vector<char> buffer, int* length, int* decimal_point);
 
+#pragma GCC pop_options
 }  // namespace double_conversion
 
 #endif  // DOUBLE_CONVERSION_FIXED_DTOA_H_