Goes atop !489. The last 8 commits belong to this MR. Many of these patches are small, but the series can be split further if necessary.
--
v2: vkd3d-shader/spirv: Handle ITOI and UTOU in spirv_compiler_map_alu_instruction().
vkd3d-shader/spirv: Support UINT64 source in spirv_compiler_emit_bool_cast().
vkd3d-shader/spirv: Support 64-bit sources in spirv_compiler_emit_int_div().
vkd3d-shader/spirv: Introduce a UINT64 component type.
vkd3d-shader/spirv: Introduce a data_type_is_64_bit() helper function.
vkd3d-shader/spirv: Use data_type_is_integer() in spirv_compiler_emit_neg().
vkd3d: Pass int64 capability info to vkd3d-shader.
vkd3d-shader/spirv: Introduce a compiler feature flag for int64 capability.
tests/shader-runner: Add 64-bit bitwise tests.
tests/shader-runner: Add 64-bit arithmetic tests.
tests/shader-runner: Introduce a 'shader int64' requirement directive.
vkd3d-shader/spirv: Emit an error if 64-bit integers are used.
vkd3d-shader/dxil: Introduce an instruction flag to suppress masking of bitwise shift counts.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/490
Fixes: 62a979347a4dc1bd68f79b86397de85c016ec588
There are some debug traces before init_environment, and calling init_options before main_argv is set will try to dereference a NULL pointer.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4603
This is ready for review, but may not go upstream until after the release.
--
v3: vkd3d-shader/spirv: Add a parameter name for int64 capability.
tests/shader-runner: Add 64-bit bitwise tests.
tests/shader-runner: Add 64-bit arithmetic tests.
tests/shader-runner: Introduce a 'shader int64' requirement directive.
vkd3d-shader/spirv: Emit an error if 64-bit integers are used.
vkd3d-shader/dxil: Introduce an instruction flag to suppress masking of bitwise shift counts.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/489
This series mainly:
- tests and implement fixes for GetStartupInfoW:
+ it should transform PEB's RTL_USER_PROCESS_PARAMETERS on the
fly (instead of caching the results as GetStartupInfoA)
+ it doesn't set all the fields of returned in STARTUPINFOW
(unlike GetStartupInfoA)
- no longer allow console and console handles for non CUI apps:
+ forbid inheritance of console handles for non CUI apps
+ don't create a unix console for initial (non CUI) app
--
v2: ntdll,start: Don't create Unix console for GUI apps.
ntdll: Don't inherit std console handles for non CUI child process.
kernelbase: GetStartupInfoW: set std handle only when USESTDHANDLES is set.
kernelbase: No longer cache GetStartupInfoW() results.
kernel32/tests: Add tests for GetStartupInfo(A|W).
kernel32/tests: Identify untouched fields returned from GetStartupInfo.
https://gitlab.winehq.org/wine/wine/-/merge_requests/4573