Disable FP contraction.
This commit is contained in:
parent
4e5ed0bbfb
commit
52a2836861
|
@ -190,6 +190,8 @@ def configure(env: "SConsEnvironment"):
|
||||||
env.Append(CCFLAGS=["-mfix-cortex-a53-835769"])
|
env.Append(CCFLAGS=["-mfix-cortex-a53-835769"])
|
||||||
env.Append(CPPDEFINES=["__ARM_ARCH_8A__"])
|
env.Append(CPPDEFINES=["__ARM_ARCH_8A__"])
|
||||||
|
|
||||||
|
env.Append(CCFLAGS=["-ffp-contract=off"])
|
||||||
|
|
||||||
# Link flags
|
# Link flags
|
||||||
|
|
||||||
env.Append(LINKFLAGS="-Wl,--gc-sections -Wl,--no-undefined -Wl,-z,now".split())
|
env.Append(LINKFLAGS="-Wl,--gc-sections -Wl,--no-undefined -Wl,-z,now".split())
|
||||||
|
|
|
@ -179,6 +179,8 @@ def configure(env: "SConsEnvironment"):
|
||||||
env.Append(CCFLAGS=["-fsanitize-recover=memory"])
|
env.Append(CCFLAGS=["-fsanitize-recover=memory"])
|
||||||
env.Append(LINKFLAGS=["-fsanitize=memory"])
|
env.Append(LINKFLAGS=["-fsanitize=memory"])
|
||||||
|
|
||||||
|
env.Append(CCFLAGS=["-ffp-contract=off"])
|
||||||
|
|
||||||
# LTO
|
# LTO
|
||||||
|
|
||||||
if env["lto"] == "auto": # Full LTO for production.
|
if env["lto"] == "auto": # Full LTO for production.
|
||||||
|
|
|
@ -96,6 +96,8 @@ def configure(env: "SConsEnvironment"):
|
||||||
env.Append(CCFLAGS=["-arch", "x86_64", "-mmacosx-version-min=10.13"])
|
env.Append(CCFLAGS=["-arch", "x86_64", "-mmacosx-version-min=10.13"])
|
||||||
env.Append(LINKFLAGS=["-arch", "x86_64", "-mmacosx-version-min=10.13"])
|
env.Append(LINKFLAGS=["-arch", "x86_64", "-mmacosx-version-min=10.13"])
|
||||||
|
|
||||||
|
env.Append(CCFLAGS=["-ffp-contract=off"])
|
||||||
|
|
||||||
cc_version = get_compiler_version(env)
|
cc_version = get_compiler_version(env)
|
||||||
cc_version_major = cc_version["apple_major"]
|
cc_version_major = cc_version["apple_major"]
|
||||||
cc_version_minor = cc_version["apple_minor"]
|
cc_version_minor = cc_version["apple_minor"]
|
||||||
|
|
|
@ -467,6 +467,8 @@ def configure_msvc(env: "SConsEnvironment", vcvars_msvc_config):
|
||||||
if env["arch"] == "x86_32":
|
if env["arch"] == "x86_32":
|
||||||
env["x86_libtheora_opt_vc"] = True
|
env["x86_libtheora_opt_vc"] = True
|
||||||
|
|
||||||
|
env.Append(CCFLAGS=["/fp:strict"])
|
||||||
|
|
||||||
env.AppendUnique(CCFLAGS=["/Gd", "/GR", "/nologo"])
|
env.AppendUnique(CCFLAGS=["/Gd", "/GR", "/nologo"])
|
||||||
env.AppendUnique(CCFLAGS=["/utf-8"]) # Force to use Unicode encoding.
|
env.AppendUnique(CCFLAGS=["/utf-8"]) # Force to use Unicode encoding.
|
||||||
env.AppendUnique(CXXFLAGS=["/TP"]) # assume all sources are C++
|
env.AppendUnique(CXXFLAGS=["/TP"]) # assume all sources are C++
|
||||||
|
@ -675,6 +677,8 @@ def configure_mingw(env: "SConsEnvironment"):
|
||||||
if env["arch"] in ["x86_32", "x86_64"]:
|
if env["arch"] in ["x86_32", "x86_64"]:
|
||||||
env["x86_libtheora_opt_gcc"] = True
|
env["x86_libtheora_opt_gcc"] = True
|
||||||
|
|
||||||
|
env.Append(CCFLAGS=["-ffp-contract=off"])
|
||||||
|
|
||||||
mingw_bin_prefix = get_mingw_bin_prefix(env["mingw_prefix"], env["arch"])
|
mingw_bin_prefix = get_mingw_bin_prefix(env["mingw_prefix"], env["arch"])
|
||||||
|
|
||||||
if env["use_llvm"]:
|
if env["use_llvm"]:
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
diff --git a/thirdparty/libwebp/sharpyuv/sharpyuv_gamma.c b/thirdparty/libwebp/sharpyuv/sharpyuv_gamma.c
|
||||||
|
index 09028428ac..3184e2b80f 100644
|
||||||
|
--- a/thirdparty/libwebp/sharpyuv/sharpyuv_gamma.c
|
||||||
|
+++ b/thirdparty/libwebp/sharpyuv/sharpyuv_gamma.c
|
||||||
|
@@ -26,7 +26,13 @@ static uint32_t kGammaToLinearTabS[GAMMA_TO_LINEAR_TAB_SIZE + 2];
|
||||||
|
#define LINEAR_TO_GAMMA_TAB_SIZE (1 << LINEAR_TO_GAMMA_TAB_BITS)
|
||||||
|
static uint32_t kLinearToGammaTabS[LINEAR_TO_GAMMA_TAB_SIZE + 2];
|
||||||
|
|
||||||
|
+// -- GODOT start --
|
||||||
|
+#if defined(_MSC_VER)
|
||||||
|
+static const double kGammaF = 2.222222222222222;
|
||||||
|
+#else
|
||||||
|
static const double kGammaF = 1. / 0.45;
|
||||||
|
+#endif
|
||||||
|
+// -- GODOT end --
|
||||||
|
#define GAMMA_TO_LINEAR_BITS 16
|
||||||
|
|
||||||
|
static volatile int kGammaTablesSOk = 0;
|
|
@ -26,7 +26,13 @@ static uint32_t kGammaToLinearTabS[GAMMA_TO_LINEAR_TAB_SIZE + 2];
|
||||||
#define LINEAR_TO_GAMMA_TAB_SIZE (1 << LINEAR_TO_GAMMA_TAB_BITS)
|
#define LINEAR_TO_GAMMA_TAB_SIZE (1 << LINEAR_TO_GAMMA_TAB_BITS)
|
||||||
static uint32_t kLinearToGammaTabS[LINEAR_TO_GAMMA_TAB_SIZE + 2];
|
static uint32_t kLinearToGammaTabS[LINEAR_TO_GAMMA_TAB_SIZE + 2];
|
||||||
|
|
||||||
|
// -- GODOT start --
|
||||||
|
#if defined(_MSC_VER)
|
||||||
|
static const double kGammaF = 2.222222222222222;
|
||||||
|
#else
|
||||||
static const double kGammaF = 1. / 0.45;
|
static const double kGammaF = 1. / 0.45;
|
||||||
|
#endif
|
||||||
|
// -- GODOT end --
|
||||||
#define GAMMA_TO_LINEAR_BITS 16
|
#define GAMMA_TO_LINEAR_BITS 16
|
||||||
|
|
||||||
static volatile int kGammaTablesSOk = 0;
|
static volatile int kGammaTablesSOk = 0;
|
||||||
|
|
Loading…
Reference in New Issue