This makes some of the wine build tools handle LTO properly (when passed via CFLAGS/LDFLAGS in some way). Of course more work is needed for a successful build with LTO, but not that far fetched honestly (asm functions are the biggest issue, also because they can call "seemingly unused" C functions which have to be marked with the `used` attribute). But that's for other MRs not related to wine tools.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4908
Building for ARM with libunwind available has been broken
since 89f3c59739e6a879b6f362dfd29d41347590449d, due to
references to raise_func_trampoline that were left behind.
In Linux builds, libunwind isn't practically needed since
a27b202a4ddc314e3e856c10f2e5d010c4a88ee0 (which implemented an
internal EHABI unwinder). That unwinder currently only supports
Linux, due to relying on dl_iterate_phdr, but if necessary, we
could also try to detect support for dl_iterate_phdr in configure
for other OSes.
--
v2: ntdll: Remove libunwind support for ARM.
https://gitlab.winehq.org/wine/wine/-/merge_requests/4928
This is a preliminary pass for the control flow graph structurizer. The plan, at least for the first version of the structurizer, is to have this pass, then another pass that converts all SSA registers to TEMPs (and correspondingly PHI nodes to MOVs/MOVCs), then a simple structurizer based on the so-called Böhm–Jacopini theorem. Some changes to the SPIR-V backend will also be needed, for supporting BOOL TEMP registers and fixing some details of 64 bit types.
But this pass is already quite complicated, so large enough for its own MR.
--
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/598
The references to raise_func_trampoline were left behind in
89f3c59739e6a879b6f362dfd29d41347590449d.
In Linux builds, libunwind isn't practically needed since
a27b202a4ddc314e3e856c10f2e5d010c4a88ee0 (which implemented an
internal EHABI unwinder).
However if the internal EHABI support is skipped (as it would be
if building on an OS different than Linux), libunwind doesn't
seem to be able to unwind properly through all cases after the
changes in commits 5b068472141, 75d0d466ec9 and 89f3c59739e any
longer, in a non-PE build.
Signed-off-by: Martin Storsjö <martin(a)martin.st>
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4928
The rest is in MR !531.
--
v3: tests: Mark count buffers as buggy on MoltenVK.
tests: Mark a timestamp query test as buggy on MoltenVK.
tests: Mark clip distance as unsupported on MoltenVK.
tests: Mark cull distance as buggy on MoltenVK.
tests: Skip unbounded descriptor ranges tests when they're unsupported.
tests: Mark loading from stencil as buggy on MoltenVK.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/545
Once we've reached the condition for skipping a core, we will
skip all other cores in the same range as well - don't print
a fixme message for each of them.
Signed-off-by: Martin Storsjö <martin(a)martin.st>
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4929