135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca/************************************************************************** 235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * 335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. 435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * All Rights Reserved. 535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * 635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * Permission is hereby granted, free of charge, to any person obtaining a 735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * copy of this software and associated documentation files (the 835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * "Software"), to deal in the Software without restriction, including 935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * without limitation the rights to use, copy, modify, merge, publish, 1035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * distribute, sub license, and/or sell copies of the Software, and to 1135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * permit persons to whom the Software is furnished to do so, subject to 1235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * the following conditions: 1335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * 1435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * The above copyright notice and this permission notice (including the 1535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * next paragraph) shall be included in all copies or substantial portions 1635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * of the Software. 1735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * 1835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 1935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 2035355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 2135355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR 2235355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 2335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 2435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 2535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca * 2635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca **************************************************************************/ 2735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 2835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 2935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#include "pipe/p_compiler.h" 304f25420bdd834e81a3e22733304efc5261c2998aBrian Paul#include "util/u_memory.h" 316f5e0539dc681b800bd08d14221751d0f3484280José Fonseca#include "util/u_format.h" 32696067e781977ad54bb31b3843355701124f1b22José Fonseca#include "tgsi/tgsi_dump.h" 3335355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 3435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca#include "tr_dump.h" 35c30f66118974f41f57e86d49f372b7c78f891223Jakob Bornecrantz#include "tr_dump_state.h" 3635355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 3735355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 38196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_format(enum pipe_format format) 399dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 40210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 41210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 42210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 436f5e0539dc681b800bd08d14221751d0f3484280José Fonseca trace_dump_enum(util_format_name(format) ); 449dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 459dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 469dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 47b77583203e44a8937577bf3b813dc66cea1a2005José Fonsecavoid trace_dump_resource_template(const struct pipe_resource *templat) 4835355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca{ 49210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 50210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 51210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 529dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!templat) { 53196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 549dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 559dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 569dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 57287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_struct_begin("pipe_resource"); 58422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 59196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(int, templat, target); 60196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(format, templat, format); 61422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 62196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("width"); 63683e35f726a182ed9fc6b6d5cb07146eebe14deaKeith Whitwell trace_dump_uint(templat->width0); 64196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 6535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 66196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("height"); 67683e35f726a182ed9fc6b6d5cb07146eebe14deaKeith Whitwell trace_dump_uint(templat->height0); 68196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 6935355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 70196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("depth"); 71683e35f726a182ed9fc6b6d5cb07146eebe14deaKeith Whitwell trace_dump_uint(templat->depth0); 72196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 7391f6032919f8e5718004bb7ac0ee2b015fb403d7José Fonseca 744c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member_begin("array_size"); 754c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_uint(templat->array_size); 764c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member_end(); 774c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger 78196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, templat, last_level); 79a2a01853f3f40b4ef8b3f01503391877960bdaeeBrian Paul trace_dump_member(uint, templat, usage); 80287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_member(uint, templat, bind); 81287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_member(uint, templat, flags); 82422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 83196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 8435355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca} 8535355f7610b69dcd2fdba451db4554478fe0acaaJosé Fonseca 869dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 87b77583203e44a8937577bf3b813dc66cea1a2005José Fonsecavoid trace_dump_box(const struct pipe_box *box) 88b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca{ 89b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca if (!trace_dumping_enabled_locked()) 90b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca return; 91b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 92b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca if(!box) { 93b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_null(); 94b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca return; 95b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca } 96b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 97b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_struct_begin("pipe_box"); 98b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 99b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, box, x); 100b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, box, y); 101b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, box, z); 102b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, box, width); 103b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, box, height); 104b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, box, depth); 105b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 106b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_struct_end(); 107b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca} 108b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 109b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 110196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_rasterizer_state(const struct pipe_rasterizer_state *state) 1119dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 112210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 113210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 114210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 1159dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 116196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 1179dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 1189dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 1199dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 120196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_rasterizer_state"); 121196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 122196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, flatshade); 123196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, light_twoside); 124dc4c821f0817a3db716f965692fb701079f66340Marek Olšák trace_dump_member(bool, state, clamp_vertex_color); 125dc4c821f0817a3db716f965692fb701079f66340Marek Olšák trace_dump_member(bool, state, clamp_fragment_color); 1260bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(uint, state, front_ccw); 1270bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(uint, state, cull_face); 1280bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(uint, state, fill_front); 1290bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(uint, state, fill_back); 1300bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(bool, state, offset_point); 1310bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(bool, state, offset_line); 1320bd1cbcd0d28dbadfb0c3e1f8b048a18b56bc72cKeith Whitwell trace_dump_member(bool, state, offset_tri); 133196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, scissor); 134196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, poly_smooth); 135196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, poly_stipple_enable); 136196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, point_smooth); 1374a4daa75a85db22cd37ebd533ebbccb427e07077Roland Scheidegger trace_dump_member(uint, state, sprite_coord_enable); 1384a4daa75a85db22cd37ebd533ebbccb427e07077Roland Scheidegger trace_dump_member(bool, state, sprite_coord_mode); 13968f93ea3eb83cfad014b8ec93cec3564c1aa9833Roland Scheidegger trace_dump_member(bool, state, point_quad_rasterization); 140196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, point_size_per_vertex); 141196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, multisample); 142196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, line_smooth); 143196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, line_stipple_enable); 144196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, line_stipple_factor); 145196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, line_stipple_pattern); 146196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, line_last_pixel); 147196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, flatshade_first); 148196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, gl_rasterization_rules); 149dc4c821f0817a3db716f965692fb701079f66340Marek Olšák trace_dump_member(bool, state, rasterizer_discard); 150dc4c821f0817a3db716f965692fb701079f66340Marek Olšák trace_dump_member(bool, state, depth_clip); 151dc4c821f0817a3db716f965692fb701079f66340Marek Olšák trace_dump_member(uint, state, clip_plane_enable); 152196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 153196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, line_width); 154196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, point_size); 155196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, offset_units); 156196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, offset_scale); 15716f8308c3df020a786908be065d3dcb90c8ca2a5Christoph Bumiller trace_dump_member(float, state, offset_clamp); 158422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 159196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 1609dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 1619dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 1629dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 163196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_poly_stipple(const struct pipe_poly_stipple *state) 1649dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 165210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 166210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 167210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 1689dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 169196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 1709dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 1719dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 1729dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 173196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_poly_stipple"); 1749dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 175196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("stipple"); 176196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_array(uint, 177422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz state->stipple, 178e54fa77d130582ee48b699917324040ef254ed74José Fonseca Elements(state->stipple)); 179196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 180422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 181196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 1829dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 1839dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 1849dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 185196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_viewport_state(const struct pipe_viewport_state *state) 1869dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 187210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 188210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 189210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 1909dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 191196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 1929dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 1939dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 1949dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 195196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_viewport_state"); 1969dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 197196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_array(float, state, scale); 198196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_array(float, state, translate); 199422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 200196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 2019dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 2029dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 2039dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 204196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_scissor_state(const struct pipe_scissor_state *state) 2059dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 206210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 207210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 208210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 2099dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 210196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 2119dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 2129dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 2139dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 214196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_scissor_state"); 2159dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 216196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, minx); 217196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, miny); 218196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, maxx); 219196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, maxy); 2209dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 221196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 2229dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 2239dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 2249dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 225196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_clip_state(const struct pipe_clip_state *state) 2269dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 2279dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca unsigned i; 228422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 229210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 230210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 231210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 2329dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 233196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 2349dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 2359dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 2369dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 237d27ffb8c6d4551371995608a6d752dfeb26c2351José Fonseca trace_dump_struct_begin("pipe_clip_state"); 2389dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 239196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("ucp"); 240196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_array_begin(); 241d27ffb8c6d4551371995608a6d752dfeb26c2351José Fonseca for(i = 0; i < PIPE_MAX_CLIP_PLANES; ++i) { 242d27ffb8c6d4551371995608a6d752dfeb26c2351José Fonseca trace_dump_elem_begin(); 243196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_array(float, state->ucp[i], 4); 244d27ffb8c6d4551371995608a6d752dfeb26c2351José Fonseca trace_dump_elem_end(); 245d27ffb8c6d4551371995608a6d752dfeb26c2351José Fonseca } 246196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_array_end(); 247196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 2489dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 249196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 2509dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 2519dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 2529dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 253196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_shader_state(const struct pipe_shader_state *state) 2549dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 255696067e781977ad54bb31b3843355701124f1b22José Fonseca static char str[8192]; 256861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák unsigned i; 257d27ffb8c6d4551371995608a6d752dfeb26c2351José Fonseca 258210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 259210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 260210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 2619dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 262196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 2639dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 2649dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 2659dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 266696067e781977ad54bb31b3843355701124f1b22José Fonseca tgsi_dump_str(state->tokens, 0, str, sizeof(str)); 267422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 268196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_shader_state"); 2699dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 270196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("tokens"); 271196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_string(str); 272196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 2739dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 274861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_member_begin("stream_output"); 275861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_struct_begin("pipe_stream_output_info"); 276861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_member(uint, &state->stream_output, num_outputs); 277b275bed549570462b423026820677a443d386ffeJosé Fonseca trace_dump_member_array(uint, &state->stream_output, stride); 278b275bed549570462b423026820677a443d386ffeJosé Fonseca trace_dump_member_begin("output"); 279861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_array_begin(); 280861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák for(i = 0; i < state->stream_output.num_outputs; ++i) { 281861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_elem_begin(); 282861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_struct_begin(""); /* anonymous */ 283861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_member(uint, &state->stream_output.output[i], register_index); 2842449695e822421fdcaf1c66dffc12d7d705ea69dMarek Olšák trace_dump_member(uint, &state->stream_output.output[i], start_component); 2852449695e822421fdcaf1c66dffc12d7d705ea69dMarek Olšák trace_dump_member(uint, &state->stream_output.output[i], num_components); 286861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_member(uint, &state->stream_output.output[i], output_buffer); 2872449695e822421fdcaf1c66dffc12d7d705ea69dMarek Olšák trace_dump_member(uint, &state->stream_output.output[i], dst_offset); 288861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_struct_end(); 289861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_elem_end(); 290861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák } 291861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_array_end(); 292b275bed549570462b423026820677a443d386ffeJosé Fonseca trace_dump_member_end(); // output 293861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_struct_end(); 294b275bed549570462b423026820677a443d386ffeJosé Fonseca trace_dump_member_end(); // stream_output 295861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák 296196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 2979dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 2989dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 2999dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 300196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_depth_stencil_alpha_state(const struct pipe_depth_stencil_alpha_state *state) 3019dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 3029dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca unsigned i; 303422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 304210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 305210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 306210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 3079dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 308196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 3099dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 3109dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 3119dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 312196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_depth_stencil_alpha_state"); 3139dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 314196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("depth"); 315196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_depth_state"); 316196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, &state->depth, enabled); 317196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, &state->depth, writemask); 318196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, &state->depth, func); 319196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 320196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 321422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 322196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("stencil"); 323196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_array_begin(); 3249dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca for(i = 0; i < Elements(state->stencil); ++i) { 325196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_elem_begin(); 326196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_stencil_state"); 327196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, &state->stencil[i], enabled); 328196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, &state->stencil[i], func); 329196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, &state->stencil[i], fail_op); 330196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, &state->stencil[i], zpass_op); 331196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, &state->stencil[i], zfail_op); 332a7e72231e3c76a9410d192441da309002ea6422dZack Rusin trace_dump_member(uint, &state->stencil[i], valuemask); 333a7e72231e3c76a9410d192441da309002ea6422dZack Rusin trace_dump_member(uint, &state->stencil[i], writemask); 334196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 335196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_elem_end(); 3369dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 337196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_array_end(); 338196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 339196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 340196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_begin("alpha"); 341196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_alpha_state"); 342196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, &state->alpha, enabled); 343196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, &state->alpha, func); 344d6888e811d24eaa7e8d9093be606394f00435c05Zack Rusin trace_dump_member(float, &state->alpha, ref_value); 345196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 346196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_end(); 347196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 348196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 3499dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 3509dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 351391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonsecastatic void trace_dump_rt_blend_state(const struct pipe_rt_blend_state *state) 352391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca{ 353391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_struct_begin("pipe_rt_blend_state"); 354391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 355391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, blend_enable); 356391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 357391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, rgb_func); 358391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, rgb_src_factor); 359391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, rgb_dst_factor); 360391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 361391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, alpha_func); 362391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, alpha_src_factor); 363391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, alpha_dst_factor); 364391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 365391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, colormask); 366391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 367391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_struct_end(); 368391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca} 369391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 370196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_blend_state(const struct pipe_blend_state *state) 3719dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 372391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca unsigned valid_entries = 1; 373391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 374210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 375210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 376210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 3779dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 378196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 3799dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 3809dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 3819dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 382391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_struct_begin("pipe_blend_state"); 383391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 384391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(bool, state, dither); 385391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 386391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(bool, state, logicop_enable); 387391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(uint, state, logicop_func); 388391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 389391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member(bool, state, independent_blend_enable); 390391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 391391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member_begin("rt"); 392391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca if (state->independent_blend_enable) 393391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca valid_entries = PIPE_MAX_COLOR_BUFS; 394391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_struct_array(rt_blend_state, state->rt, valid_entries); 395391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_member_end(); 396391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca 397391f7147e73b752c6e088c4ae8fe11ddfd5fb537José Fonseca trace_dump_struct_end(); 3989dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 3999dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 4009dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 401196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_blend_color(const struct pipe_blend_color *state) 4029dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 403210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 404210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 405210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 4069dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 407196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 4089dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 4099dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 4109dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 411196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_blend_color"); 4129dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 413196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_array(float, state, color); 4149dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 415196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 4169dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 4179dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 4180786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheideggervoid trace_dump_stencil_ref(const struct pipe_stencil_ref *state) 4190786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger{ 4200786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger if (!trace_dumping_enabled_locked()) 4210786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger return; 4220786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger 4230786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger if(!state) { 4240786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger trace_dump_null(); 4250786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger return; 4260786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger } 4270786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger 4280786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger trace_dump_struct_begin("pipe_stencil_ref"); 4290786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger 4300786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger trace_dump_member_array(uint, state, ref_value); 4310786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger 4320786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger trace_dump_struct_end(); 4330786f38b46c1dd33a0a0032c238b92742b5d71e2Roland Scheidegger} 4349dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 435196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_framebuffer_state(const struct pipe_framebuffer_state *state) 4369dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 437210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 438210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 439210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 440196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_framebuffer_state"); 4419dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 442196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, width); 443196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, height); 4442299f21f8da816fc4588492965e7dac422da1a96Zack Rusin trace_dump_member(uint, state, nr_cbufs); 445196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member_array(ptr, state, cbufs); 446196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(ptr, state, zsbuf); 4479dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 448196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 4499dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 4509dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 4519dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 452196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_sampler_state(const struct pipe_sampler_state *state) 4539dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 454210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 455210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 456210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 4579dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 458196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 4599dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 4609dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 4619dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 462196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_sampler_state"); 463196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 464196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, wrap_s); 465196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, wrap_t); 466196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, wrap_r); 467196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, min_img_filter); 468196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, min_mip_filter); 469196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, mag_img_filter); 4704e014c0a148ba3ac015d0e83dcf975ca6e814e1fMichal Krol trace_dump_member(uint, state, compare_mode); 471196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, compare_func); 472196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(bool, state, normalized_coords); 473ebe12d50064370e4ddec21a1e087b24295940319Roland Scheidegger trace_dump_member(uint, state, max_anisotropy); 474196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, lod_bias); 475196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, min_lod); 476196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(float, state, max_lod); 4779f61e43b4903c6cf0ac03a479ec9ed7b15fd6ccfDave Airlie trace_dump_member_array(float, state, border_color.f); 478196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 479196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 4809dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 4819dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 4829dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 483c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonsecavoid trace_dump_sampler_view_template(const struct pipe_sampler_view *state, 484c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca enum pipe_texture_target target) 485b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca{ 486b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca if (!trace_dumping_enabled_locked()) 487b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca return; 488b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 489b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca if(!state) { 490b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_null(); 491b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca return; 492b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca } 493b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 494b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_struct_begin("pipe_sampler_view"); 495b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 496b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(format, state, format); 497c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca 498c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_begin("u"); 499c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_begin(""); /* anonymous */ 500c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca if (target == PIPE_BUFFER) { 501c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_begin("buf"); 502c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_begin(""); /* anonymous */ 503c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.buf, first_element); 504c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.buf, last_element); 505c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_end(); /* anonymous */ 506c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_end(); /* buf */ 507c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca } else { 508c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_begin("tex"); 509c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_begin(""); /* anonymous */ 510c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, first_layer); 511c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, last_layer); 512c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, first_level); 513c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, last_level); 514c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_end(); /* anonymous */ 515c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_end(); /* tex */ 516c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca } 517c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_end(); /* anonymous */ 518c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_end(); /* u */ 519c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca 520b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, state, swizzle_r); 521b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, state, swizzle_g); 522b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, state, swizzle_b); 523b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_member(uint, state, swizzle_a); 524b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 525b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca trace_dump_struct_end(); 526b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca} 527b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 528b77583203e44a8937577bf3b813dc66cea1a2005José Fonseca 529c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonsecavoid trace_dump_surface_template(const struct pipe_surface *state, 530c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca enum pipe_texture_target target) 5319dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 532210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 533210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 534210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 5359dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 536196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 5379dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 5389dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 5399dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 540196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_surface"); 5419dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 542196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(format, state, format); 543196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, width); 544196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, height); 5459dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 546c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer trace_dump_member(uint, state, usage); 547c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 548c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_begin("u"); 549c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_begin(""); /* anonymous */ 550c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca if (target == PIPE_BUFFER) { 551c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_begin("buf"); 552c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_begin(""); /* anonymous */ 553c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.buf, first_element); 554c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.buf, last_element); 555c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_end(); /* anonymous */ 556c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_end(); /* buf */ 557c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca } else { 558c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_begin("tex"); 559c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_begin(""); /* anonymous */ 560c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, level); 561c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, first_layer); 562c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member(uint, &state->u.tex, last_layer); 563c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_end(); /* anonymous */ 564c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_end(); /* tex */ 565c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca } 566c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_struct_end(); /* anonymous */ 567c0f6bfd489091da20ad9580d8ac6aeb187ededfdJosé Fonseca trace_dump_member_end(); /* u */ 568c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 569c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer trace_dump_struct_end(); 570c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer} 571c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 572c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 573c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzervoid trace_dump_transfer(const struct pipe_transfer *state) 574c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer{ 575210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 576210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 577210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 578c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer if(!state) { 579c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer trace_dump_null(); 580c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer return; 581c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer } 582c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 583c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer trace_dump_struct_begin("pipe_transfer"); 584c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 5854c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member(uint, state, box.x); 5864c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member(uint, state, box.y); 5874c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member(uint, state, box.z); 588287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_member(uint, state, box.width); 589287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_member(uint, state, box.height); 5904c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member(uint, state, box.depth); 591c738edcc68905fb251cf9edc0529e2e1c778fdeeMichel Dänzer 592196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, stride); 5934c7001462607e6e99e474d6271dd481d3f8f201cRoland Scheidegger trace_dump_member(uint, state, layer_stride); 594196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, usage); 595196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 596287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_member(ptr, state, resource); 597196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca 598196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 5999dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 6009dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 6019dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 602196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_vertex_buffer(const struct pipe_vertex_buffer *state) 6039dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 604210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 605210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 606210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 6079dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 608196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 6099dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 6109dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 6119dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 612196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_vertex_buffer"); 6139dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 614872b515e8f0bb1be5bad85fd9d01529c71f07ba2Zack Rusin trace_dump_member(uint, state, stride); 615196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, buffer_offset); 616287c94ea4987033f9c99a2f91c5750c9083504caKeith Whitwell trace_dump_member(resource_ptr, state, buffer); 6179dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 618196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 6199dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 6209dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 6219dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 6226d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wuvoid trace_dump_index_buffer(const struct pipe_index_buffer *state) 6236d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu{ 6246d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu if (!trace_dumping_enabled_locked()) 6256d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu return; 6266d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu 6276d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu if(!state) { 6286d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu trace_dump_null(); 6296d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu return; 6306d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu } 6316d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu 6326d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu trace_dump_struct_begin("pipe_index_buffer"); 6336d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu 6346d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu trace_dump_member(uint, state, index_size); 6356d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu trace_dump_member(uint, state, offset); 6366d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu trace_dump_member(resource_ptr, state, buffer); 6376d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu 6386d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu trace_dump_struct_end(); 6396d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu} 6406d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu 6416d28bf917fb1d741d90fd3f05c22769376021fcaChia-I Wu 642196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonsecavoid trace_dump_vertex_element(const struct pipe_vertex_element *state) 6439dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca{ 644210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz if (!trace_dumping_enabled_locked()) 645210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz return; 646210ad58ee3c136fd302edac6888e96f34c491387Jakob Bornecrantz 6479dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca if(!state) { 648196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_null(); 6499dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca return; 6509dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca } 6519dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 652196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_begin("pipe_vertex_element"); 6539dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 654196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, src_offset); 6559dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 656196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(uint, state, vertex_buffer_index); 657422512050312a880439ed4e8eb99b8e362d5071fJakob Bornecrantz 658196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_member(format, state, src_format); 6599dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca 660196167e9d5c84f9f6dfe6f15b3e2f2c3ec6825dcJosé Fonseca trace_dump_struct_end(); 6619dee60969df7ff263e05430e69ef26982fe2bd94José Fonseca} 662c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 663c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 664c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonsecavoid trace_dump_draw_info(const struct pipe_draw_info *state) 665c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca{ 666c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca if (!trace_dumping_enabled_locked()) 667c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca return; 668c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 669c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca if(!state) { 670c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_null(); 671c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca return; 672c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca } 673c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 674c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_struct_begin("pipe_draw_info"); 675c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 676c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(bool, state, indexed); 677c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 678c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, mode); 679c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, start); 680c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, count); 681c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 682c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, start_instance); 683c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, instance_count); 684c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 685c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(int, state, index_bias); 686c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, min_index); 687c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_member(uint, state, max_index); 688c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca 689345b1a31c9f1fdd513d6f394c772830bb811fc94Marek Olšák trace_dump_member(bool, state, primitive_restart); 690345b1a31c9f1fdd513d6f394c772830bb811fc94Marek Olšák trace_dump_member(uint, state, restart_index); 691345b1a31c9f1fdd513d6f394c772830bb811fc94Marek Olšák 692861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák trace_dump_member(ptr, state, count_from_stream_output); 693861a029ddb31e91bb4d8e18ab708d0d172f63aadMarek Olšák 694c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca trace_dump_struct_end(); 695c7f33624f93fb08264e762e1a6a82b1c99afa58eJosé Fonseca} 696