Merge remote-tracking branch 'origin/master' into claude/issue-47
# Conflicts: # project.cpp
This commit is contained in:
commit
c670bc70b7
3 changed files with 144 additions and 9 deletions
44
project.cpp
44
project.cpp
|
|
@ -422,10 +422,39 @@ extern "C" Configuration CrafterBuildProject(std::span<const std::string_view> a
|
|||
// slip through (the C++ static_assert only guards the C++ side). No GPU
|
||||
// device at runtime, but glslang + spirv-val are required tools.
|
||||
Test fusedTest;
|
||||
Configuration& fc = fusedTest.config;
|
||||
Configuration& ftc = fusedTest.config;
|
||||
ftc.path = cfg.path;
|
||||
ftc.name = "UIFusedShader";
|
||||
ftc.outputName = "UIFusedShader";
|
||||
ftc.type = ConfigurationType::Executable;
|
||||
ftc.target = cfg.target;
|
||||
ftc.march = cfg.march;
|
||||
ftc.mtune = cfg.mtune;
|
||||
ftc.debug = cfg.debug;
|
||||
ftc.sysroot = cfg.sysroot;
|
||||
ftc.dependencies = cfg.dependencies;
|
||||
ftc.externalDependencies = cfg.externalDependencies;
|
||||
ftc.compileFlags = cfg.compileFlags;
|
||||
ftc.linkFlags = cfg.linkFlags;
|
||||
ftc.defines = cfg.defines;
|
||||
ftc.cFiles = cfg.cFiles;
|
||||
std::vector<fs::path> fusedImpls(impls.begin(), impls.end());
|
||||
fusedImpls.emplace_back("tests/UIFusedShader/main");
|
||||
ftc.GetInterfacesAndImplementations(ifaces, fusedImpls);
|
||||
fusedTest.requires_ = { "tool:glslang", "tool:spirv-val" };
|
||||
cfg.tests.push_back(std::move(fusedTest));
|
||||
|
||||
// Issue #60: VulkanBuffer::FlushDevice / FlushHost now record the chosen
|
||||
// memory type's propertyFlags at Create time and skip the
|
||||
// flush/invalidate when the memory is HOST_COHERENT. The gate is pure
|
||||
// logic over the recorded flags, so this test stamps them directly and
|
||||
// verifies the coherent path issues no Vulkan call — no GPU device
|
||||
// needed at runtime.
|
||||
Test flushTest;
|
||||
Configuration& fc = flushTest.config;
|
||||
fc.path = cfg.path;
|
||||
fc.name = "UIFusedShader";
|
||||
fc.outputName = "UIFusedShader";
|
||||
fc.name = "VulkanBufferFlushGate";
|
||||
fc.outputName = "VulkanBufferFlushGate";
|
||||
fc.type = ConfigurationType::Executable;
|
||||
fc.target = cfg.target;
|
||||
fc.march = cfg.march;
|
||||
|
|
@ -438,11 +467,10 @@ extern "C" Configuration CrafterBuildProject(std::span<const std::string_view> a
|
|||
fc.linkFlags = cfg.linkFlags;
|
||||
fc.defines = cfg.defines;
|
||||
fc.cFiles = cfg.cFiles;
|
||||
std::vector<fs::path> fusedImpls(impls.begin(), impls.end());
|
||||
fusedImpls.emplace_back("tests/UIFusedShader/main");
|
||||
fc.GetInterfacesAndImplementations(ifaces, fusedImpls);
|
||||
fusedTest.requires_ = { "tool:glslang", "tool:spirv-val" };
|
||||
cfg.tests.push_back(std::move(fusedTest));
|
||||
std::vector<fs::path> flushImpls(impls.begin(), impls.end());
|
||||
flushImpls.emplace_back("tests/VulkanBufferFlushGate/main");
|
||||
fc.GetInterfacesAndImplementations(ifaces, flushImpls);
|
||||
cfg.tests.push_back(std::move(flushTest));
|
||||
|
||||
// Issue #57: Font::GetLineWidth memoises per-codepoint advances in
|
||||
// font units (Font::AdvanceUnits) and rescales per call, instead of
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue