| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
A few changes to support musl libc as well.
In particular fpu_control.h is glibc specific.
fenv.h doesn't enable to do exactly what we want either,
so instead use assembly directly.
Signed-off-by: Wang He <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Nine already supports the feature.
There are no failing WINE tests for per stage constants.
Enabling D3DPMISCCAPS_PERSTAGECONSTANT as it fixes
https://github.com/iXit/Mesa-3D/issues/205
Signed-off-by: Patrick Rudolph <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
| |
The last remaining issues with thread_submit have been resolved,
thus turn it when on a different device (the case where is is
beneficial).
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
pipe_rasterizer multisample bit should be enabled only when really
wanting to do multisampling, thus we should disable when not having
msaa render target.
This fixes some depth calculation precision issues on radeon.
Also disable it when depth and stencil tests are disabled, since in that
case multisampling is same as not multisampled.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
ATOC extension does something only when alpha test is enabled.
Use a second bit to encode the difference with ATIATOC.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
| |
We were missing a debug string for this format.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Nine doesn't support vs output/ps input packing.
We haven't found any application requiring that,
and implementing it properly is complex.
Add asserts for now.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
When taking screenshots we do a copy from the frontbuffer
to an allocated buffer (which we then copy to a ram buffer).
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
| |
We were getting it wrong for negative values.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Our behaviour was not entirely similar to what
the docs and our tests describe.
Drop d3dlock_buffer_to_pipe_transfer_usage.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
Add missing DBG calls in dtors.
Signed-off-by: Patrick Rudolph <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Use present interface 1.2 function ID3DPresent_CreateThread
to create the thread for threadpool.
Creating the thread with WINE prevents some rarely occuring crashes.
Signed-off-by: Patrick Rudolph <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem is that if one d3d present call fails,
because of our occlusion check in present method,
the next presentation call will send the same pixmap to the Xserver again,
without waiting it is released, which is wrong.
Move the present call after occlusion check to return and prevent
Xpixmaps errors.
Signed-off-by: Patrick Rudolph <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Any third party app might change the current screen resolution.
Poll for resolution mismatch to force a device reset.
Required for non ex devices only.
Signed-off-by: Patrick Rudolph <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement presentation interface version 1.2:
* ID3DPresent_ResolutionMismatch
Poll for resolution mismatch.
A third party app might have changed resolution,
which requires a device reset.
* ID3DPresent_CreateThread
Create a thread in WINE to allow nine to use Windows API
functions. Required for multi-threaded presentation.
In single-threaded presentation mode the calling thread is
already known to WINE.
* ID3DPresent_WaitForThread
Wait for a wine thread to terminate.
Signed-off-by: Patrick Rudolph <[email protected]>
Reviewed-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
We were doing the conversion for surfaces, but not yet
volumes. Now that volumes can do conversion, use it.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
X8L8V8U8 support should be common. Some more recent cards
do support this format, but not L6V5U5.
Add fallback for this format to have it alwaus supported.
L6V5U5 conversion rule apparently differs a bit from the normal
spec, and thus the gallium equivalent format leads to slightly
wrong colors. Since some recent cards do not support it, do not
support it either.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
| |
This is the equivalent of util_format_translate, but for volumes.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
There is a mistake in the online documentation,
the function only has 2 arguments.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
Version 0.1 allows to assume that the second
element of the IDirect3D* structures will
be a pointer to the internal nine vtable.
This is useful if the gallium nine user wants
to wrap some interfaces.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
Previously ctor failures would not unreference
the device.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
ColorFill should contain alignment checks
for compressed textures.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
According to wine tests, they are forbidden as PS input,
which makes sense.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
| |
Some failures during shader translation would not
raise errors before this patch.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
| |
POSITION0 input is forbidden for PS3.0 apparently.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
Our code did match the user documentation of the function
quite well (except for format check).
However the DDI documentation and wine tests show that
documentation was not correct. Thus adapt our code to
fit the best possible to the -real- spec.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
| |
bufs doesn't contain depthstencil if
there is z buffer mismatch. This is the behaviour
we want.
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
| |
Add support for ddebug, rbug and trace
Signed-off-by: Axel Davy <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
This sets the AA location to the d3d11
spec.
EG/NI 8X MSAA is left as is. Not sure
why it was set different to Cayman, so
lets it as is.
Signed-off-by: Axel Davy <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Besides depth/stencil, the hardware doesn't support
mixed formats.
The GL state tracker doesn't make use of them.
Signed-off-by: Axel Davy <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
|
|
|
|
|
|
|
|
|
| |
d3d 9 needs COLOR0 to be 1.0 on all channels when
undefined. 0.0 for the others is fine.
GL behaviour is undefined.
Signed-off-by: Axel Davy <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
|
|
|
|
|
|
|
|
|
| |
d3d 9 needs COLOR0 to be 1.0 on all channels when
undefined. 0.0 for the others is fine.
GL behaviour is undefined.
Signed-off-by: Axel Davy <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
|
|
|
|
|
|
|
|
|
| |
d3d 9 needs COLOR0 to be 1.0 on all channels when
undefined. 0.0 for the others is fine.
GL behaviour is undefined.
Signed-off-by: Axel Davy <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As Emil pointed out, only gcc, clang and MSVC compatibility is required.
Hence the check for GNUC can be skipped, as __i386__ and __x86_64__ are
only defined for gcc/clang, not for MSVC.
Remove the #undef which has been there for historic reasons, when wine
dlls for nine have been built inside mesa. Instead use #ifndef in order
to avoid redefining WINAPI from MSVC's headers.
Reviewed-by: Emil Velikov <[email protected]>
Acked-by: Axel Davy <[email protected]>
|
|
|
|
| |
Signed-off-by: Brian Paul <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
Mark it as unreachable. Silences a compiler warning:
spirv/spirv_to_nir.c:1397:4: warning: enumeration value
'nir_texop_txf_ms_mcs' not handled in switch [-Wswitch]
switch (instr->op) {
^
Reviewed-by: Jason Ekstrand <[email protected]>
|
|
|
|
| |
This reverts commit 2a8aa1e3deb99a1ae16d942318da648c1327ece5.
|
|
|
|
|
|
|
| |
Fixes regression introduced by af5ca43f2676bff7499f93277f908b681cb821d0
Reviewed-by: Matt Turner <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95419
|
|
|
|
|
| |
Pretty useless, as it's in debugging code. Found by Coverity (CID
1257016).
|
| |
|
|
|
|
|
|
|
| |
layout should only be null for structs, but it's checked everywhere else
and confuses Coverity (CID 1358495).
Reviewed-by: Timothy Arceri <[email protected]>
|