[Mesa-dev] [PATCH 00/53] Gallium Nine fixes

Ilia Mirkin imirkin at alum.mit.edu
Thu Jan 8 09:44:56 PST 2015


All patches that I didn't respond to, except patches 27 and 53, which
were too long/involved for me, are Reviewed-by: Ilia Mirkin
<imirkin at alum.mit.edu>

I think you provided sufficient clarification on a few that I *did*
respond to as well, but I'll send separate R-b's for those.

On Wed, Jan 7, 2015 at 11:36 AM, Axel Davy <axel.davy at ens.fr> wrote:
> Most of the patches of this serie are fixes,
> that's why most of them are CC 10.4
>
> The patches can be retrived here:
> https://github.com/iXit/Mesa-3D/tree/submit_mesa
>
> Some of them may not appear directly as fixes, so little
> explanation is required:
>
> "st/nine: Add ATI1 and ATI2 support"
>
> These two compression formats are supported by all three
> vendors since very long ago. Some apps like Mass Effect 2
> just use them without checking their support, and crash.
> This patch adds support for these format, and then fixes
> these games. It makes however a little difference for Unigine
> Heaven which was checking properly the support of the format and
> that uses it after the patch.
>
> "st/nine: Fix POW implementation" and other similar short patches to nine_shader
>
> On some games, a little difference on the behaviour of corner cases of the
> instructions will make some textures black, some shadows red, etc.
> Several games are fixed by these patches (Though we still have some games with
> black textures or red shadows :-) )
>
> "st/nine: implement TEXM3x2DEPTH" and similar
>
> These are ps 1.X instructions. Few games (mostly old ones) use these
> instructions. All graphic cards are supposed to support them, and
> any game trying to use them before these patches will result in a crash.
> So implementing these missing instructions is a fix.
>
>
> The patches of this series have been tested by several testers the last
> few months. We do not expect any regression. That doesn't mean there is
> no mistake in these patches, so please review :-)
>
> Axel Davy (48):
>   st/nine: Fix clip state logic
>   st/nine: Add new texture format strings
>   st/nine: Correctly advertise D3DPMISCCAPS_CLIPTLVERTS
>   st/nine: NineBaseTexture9: fix setting of last_layer
>   st/nine: CubeTexture: fix GetLevelDesc
>   st/nine: Fix crash when deleting non-implicit swapchain
>   st/nine: Return D3DERR_INVALIDCALL when trying to create a texture of
>     bad format
>   st/nine: NineBaseTexture9: update sampler view creation
>   st/nine: Check if srgb format is supported before trying to use it.
>   st/nine: Add ATI1 and ATI2 support
>   st/nine: Rework of boolean constants
>   st/nine: Convert integer constants to floats before storing them when
>     cards don't support integers
>   st/nine: Remove some shader unused code
>   st/nine: Clamp color inputs for ps <= 2.0 at ps level instead of vs
>   st/nine: Saturate oFog and oPts vs outputs
>   st/nine: Correctly declare NineTranslateInstruction_Mkxn inputs
>   st/nine: Fix typo for M4x4
>   st/nine: Fix POW implementation
>   st/nine: Handle RSQ special cases
>   st/nine: Handle NRM with input of null norm
>   st/nine: Correct LOG on negative values
>   st/nine: Rewrite LOOP implementation, and a0 aL handling
>   st/nine: Match REP implementation to LOOP
>   st/nine: Fix CND implementation
>   st/nine: Remove duplicated code for ps texcoord input declaration
>   st/nine: Clamp ps 1.X constants
>   st/nine: Fix some fixed function pipeline operation
>   st/nine: Fix CALLNZ implementation
>   st/nine: Implement TEXCOORD special behaviours
>   st/nine: Fill missing dst and src number for some instructions.
>   st/nine: Fix TEXM3x3 and implement TEXM3x3VSPEC
>   st/nine: implement TEXM3x2DEPTH
>   st/nine: Implement TEXM3x2TEX
>   st/nine: Implement TEXM3x3SPEC
>   st/nine: Implement TEXDEPTH
>   st/nine: Implement TEXDP3
>   st/nine: Implement TEXDP3TEX
>   st/nine: Implement TEXREG2AR, TEXREG2GB and TEXREG2RGB
>   st/nine: Implement ps3 advanced input definition feature
>   st/nine: Correct rules for relative adressing and constants.
>   st/nine: Remove unused code for ps
>   st/nine: Fix sm3 relative addressing for non-debug build
>   st/nine: Add variables containing the size of the constant buffers
>   st/nine: Allocate the correct size for the user constant buffer
>   st/nine: Allocate vs constbuf buffer for indirect addressing once.
>   st/nine: Explicit nine requirements
>   st/nine: Change comment relating to vertex shader inputs not matching
>     declaration
>   st/nine: Correctly handle when ff vs should have no texture coord
>     input/output
>
> David Heidelberg (1):
>   st/nine: query: remove unused variable (trivial)
>
> Stanislaw Halik (1):
>   st/nine: Hack to generate resource if it doesn't exist when getting
>     view
>
> xavier (3):
>   st/nine: Additional defines to d3dtypes.h
>   st/nine: Add missing c++ declaration for IDirect3DVolumeTexture9
>   st/nine: Fix D3DRS_POINTSPRITE support
>
>  include/D3D9/d3d9.h                              |  10 +
>  include/D3D9/d3d9types.h                         |  13 +
>  src/gallium/state_trackers/nine/adapter9.c       | 113 ++--
>  src/gallium/state_trackers/nine/basetexture9.c   |  60 +-
>  src/gallium/state_trackers/nine/cubetexture9.c   |  14 +-
>  src/gallium/state_trackers/nine/device9.c        | 130 +++--
>  src/gallium/state_trackers/nine/device9.h        |   8 +-
>  src/gallium/state_trackers/nine/nine_ff.c        |  37 +-
>  src/gallium/state_trackers/nine/nine_pipe.h      |   5 +
>  src/gallium/state_trackers/nine/nine_shader.c    | 699 ++++++++++++++++-------
>  src/gallium/state_trackers/nine/nine_state.c     |  87 +--
>  src/gallium/state_trackers/nine/nine_state.h     |   3 +-
>  src/gallium/state_trackers/nine/pixelshader9.c   |  10 +-
>  src/gallium/state_trackers/nine/pixelshader9.h   |   2 -
>  src/gallium/state_trackers/nine/query9.c         |   1 -
>  src/gallium/state_trackers/nine/stateblock9.c    |   4 +-
>  src/gallium/state_trackers/nine/surface9.c       |  29 +-
>  src/gallium/state_trackers/nine/swapchain9.c     |   2 +-
>  src/gallium/state_trackers/nine/texture9.c       |   9 +-
>  src/gallium/state_trackers/nine/volumetexture9.c |  14 +-
>  20 files changed, 842 insertions(+), 408 deletions(-)
>
> --
> 2.1.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list