Tizen 2.0 Release
[profile/ivi/osmesa.git] / src / gallium / drivers / i965 / brw_winsys_debug.c
1 #include "brw_winsys.h"
2 #include "brw_disasm.h"
3 #include "brw_structs_dump.h"
4 #include "brw_structs.h"
5 #include "intel_decode.h"
6
7
8 void brw_dump_data( unsigned pci_id,
9                     enum brw_buffer_data_type data_type,
10                     unsigned offset,
11                     const void *data,
12                     size_t size, int gen )
13 {
14    if (BRW_DUMP & DUMP_ASM) {
15       switch (data_type) {
16       case BRW_DATA_GS_WM_PROG:
17       case BRW_DATA_GS_SF_PROG:
18       case BRW_DATA_GS_VS_PROG:
19       case BRW_DATA_GS_GS_PROG:
20       case BRW_DATA_GS_CLIP_PROG:
21          brw_disasm( stderr, (struct brw_instruction *)data, size / sizeof(struct brw_instruction), gen );
22          break;
23       default:
24          break;
25       }
26    }
27
28    if (BRW_DUMP & DUMP_STATE) {
29       switch (data_type) {
30       case BRW_DATA_GS_CC_VP:
31          brw_dump_cc_viewport( data );
32          break;
33       case BRW_DATA_GS_CC_UNIT:
34          brw_dump_cc_unit_state( data );
35          break;
36       case BRW_DATA_GS_SAMPLER_DEFAULT_COLOR:
37          brw_dump_sampler_default_color( data );
38          break;
39       case BRW_DATA_GS_SAMPLER:
40          brw_dump_sampler_state( data );
41          break;
42       case BRW_DATA_GS_WM_UNIT:
43          brw_dump_wm_unit_state( data );
44          break;
45       case BRW_DATA_GS_SF_VP:
46          brw_dump_sf_viewport( data );
47          break;
48       case BRW_DATA_GS_SF_UNIT:
49          brw_dump_sf_unit_state( data );
50          break;
51       case BRW_DATA_GS_VS_UNIT:
52          brw_dump_vs_unit_state( data );
53          break;
54       case BRW_DATA_GS_GS_UNIT:
55          brw_dump_gs_unit_state( data );
56          break;
57       case BRW_DATA_GS_CLIP_VP:
58          brw_dump_clipper_viewport( data );
59          break;
60       case BRW_DATA_GS_CLIP_UNIT:
61          brw_dump_clip_unit_state( data );
62          break;
63       case BRW_DATA_SS_SURFACE:
64          brw_dump_surface_state( data );
65          break;
66       case BRW_DATA_SS_SURF_BIND:
67          break;
68       case BRW_DATA_OTHER:
69          break;
70       case BRW_DATA_CONSTANT_BUFFER:
71          break;
72       default:
73          break;
74       }
75    }
76
77    if (BRW_DUMP & DUMP_BATCH) {
78       switch (data_type) {
79       case BRW_DATA_BATCH_BUFFER:
80          intel_decode(data, size / 4, offset, pci_id, 0);
81          break;
82       default:
83          break;
84       }
85    }
86 }
87