On 01/10/2014 06:23 PM, Ian Romanick wrote:
> On 01/10/2014 05:59 PM, Kenneth Graunke wrote:
>> On 01/10/2014 05:40 PM, Ian Romanick wrote:
>>> From: Courtney Goeltzenleuchter <court...@lunarg.com>
>>>
>>> Include DepthRange as well since it's state is lumped together with
>>> viewport state.  Updates all the drivers that reference Viewport state
>>> in gl_context.
>>>
>>> v2 (idr): Rebase fixes.  Also, don't have meta call _mesa_Viewport.  We
>>> don't want the extra validation overhead, and meta will only ever need
>>> to change viewport 0 (while _mesa_Viewport updates all of them).
>>>
>>> v3 (idr): Remove spurious casts to float in _mesa_DepthRange.
>>> gl_viewport_attrib::Near and gl_viewport_attrib::Far are double now,
>>> just like nearval and farval.  As result, the casts aren't just
>>> unnecessary, they're wrong.
>>>
>>> Signed-off-by: Ian Romanick <ian.d.roman...@intel.com>
>> [snip]
>>> diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
>>> index da65d15..305b752 100644
>>> --- a/src/mesa/main/mtypes.h
>>> +++ b/src/mesa/main/mtypes.h
>>> @@ -1429,9 +1429,9 @@ struct gl_transform_attrib
>>>   */
>>>  struct gl_viewport_attrib
>>>  {
>>> -   GLint X, Y;                     /**< position */
>>> -   GLsizei Width, Height;  /**< size */
>>> -   GLfloat Near, Far;              /**< Depth buffer range */
>>> +   GLfloat X, Y;                /**< position */
>>> +   GLfloat Width, Height;  /**< size */
>>> +   GLdouble Near, Far;             /**< Depth buffer range */
>>>     GLmatrix _WindowMap;            /**< Mapping transformation as a 
>>> matrix. */
>>>  };
>>>  
>>> @@ -3884,7 +3884,7 @@ struct gl_context
>>>     struct gl_stencil_attrib        Stencil;        /**< Stencil buffer 
>>> attributes */
>>>     struct gl_texture_attrib        Texture;        /**< Texture attributes 
>>> */
>>>     struct gl_transform_attrib      Transform;      /**< Transformation 
>>> attributes */
>>> -   struct gl_viewport_attrib       Viewport;       /**< Viewport 
>>> attributes */
>>> +   struct gl_viewport_attrib       ViewportArray[MAX_VIEWPORTS];   /**< 
>>> Viewport attributes */
>>>     /*@}*/
>>>  
>>>     /** \name Client attribute stack */
>>
>> This patch does four separate things:
>>
>> 1. Converts X/Y from GLint to GLfloat.
>> 2. Converts Width/Height from GLsizei to GLfloat.
>> 3. Converts Near/Far from GLfloat to GLdouble.
>> 4. Converts Viewport to ViewportArray[]
>>
>> Each of those really ought to be a separate patch...
> 
> That's fair.  I think I'd like to keep the first three together because
> the all get passed together to _math_matrix_viewport.  Changing them
> piecemeal seems ugly.

Yeah, that's probably fine.

> How would you feel about squashing the next patch in with the patch that
> changes the types?

Strongly in favor.  The patch to change the variable types in mtypes.h
should also take care of adding/removing appropriate casts for all
users, IMO.

--Ken
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to