diff options
author | Dario <dariosamo@gmail.com> | 2024-03-15 14:13:31 -0300 |
---|---|---|
committer | Dario <dariosamo@gmail.com> | 2024-10-02 15:11:58 -0300 |
commit | e2c6daf7eff6e0b7e2e8d967e95a9ad56e948231 (patch) | |
tree | d37262a01ec645c1e150f6f4612226303b0a9705 /platform | |
parent | 1917bc3454e58fc56750b00e04aa25cb94d8d266 (diff) | |
download | redot-engine-e2c6daf7eff6e0b7e2e8d967e95a9ad56e948231.tar.gz |
Implement asynchronous transfer queues, thread guards on RenderingDevice. Add ubershaders and rework pipeline caches for Forward+ and Mobile.
- Implements asynchronous transfer queues from PR #87590.
- Adds ubershaders that can run with specialization constants specified as push constants.
- Pipelines with specialization constants can compile in the background.
- Added monitoring for pipeline compilations.
- Materials and shaders can now be created asynchronously on background threads.
- Meshes that are loaded on background threads can also compile pipelines as part of the loading process.
Diffstat (limited to 'platform')
-rw-r--r-- | platform/macos/detect.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/platform/macos/detect.py b/platform/macos/detect.py index e35423d41f..595a83ead3 100644 --- a/platform/macos/detect.py +++ b/platform/macos/detect.py @@ -8,6 +8,10 @@ from platform_methods import detect_arch, detect_mvk if TYPE_CHECKING: from SCons.Script.SConscript import SConsEnvironment +# To match other platforms +STACK_SIZE = 8388608 +STACK_SIZE_SANITIZERS = 30 * 1024 * 1024 + def get_name(): return "macOS" @@ -183,6 +187,10 @@ def configure(env: "SConsEnvironment"): env.Append(CCFLAGS=["-fsanitize=thread"]) env.Append(LINKFLAGS=["-fsanitize=thread"]) + env.Append(LINKFLAGS=["-Wl,-stack_size," + hex(STACK_SIZE_SANITIZERS)]) + else: + env.Append(LINKFLAGS=["-Wl,-stack_size," + hex(STACK_SIZE)]) + if env["use_coverage"]: env.Append(CCFLAGS=["-ftest-coverage", "-fprofile-arcs"]) env.Append(LINKFLAGS=["-ftest-coverage", "-fprofile-arcs"]) |