ilo: add debug flags settable through ILO_DEBUG

This commit is contained in:
Chia-I Wu 2012-12-13 04:24:40 +08:00 committed by Chia-I Wu
parent 63b5720105
commit e74d67738d
2 changed files with 28 additions and 0 deletions

View file

@ -43,6 +43,19 @@
#define ILO_GEN(gen) ((int) (gen * 100))
#define ILO_GEN_GET_MAJOR(gen) (gen / 100)
enum ilo_debug {
ILO_DEBUG_3D = 1 << 0,
ILO_DEBUG_VS = 1 << 1,
ILO_DEBUG_GS = 1 << 2,
ILO_DEBUG_FS = 1 << 3,
ILO_DEBUG_CS = 1 << 4,
ILO_DEBUG_NOHW = 1 << 8,
ILO_DEBUG_NOCACHE = 1 << 9,
};
extern int ilo_debug;
/**
* Print a message, for dumping or debugging.
*/

View file

@ -35,6 +35,19 @@
#include "ilo_public.h"
#include "ilo_screen.h"
int ilo_debug;
static const struct debug_named_value ilo_debug_flags[] = {
{ "3d", ILO_DEBUG_3D, "Dump 3D commands and states" },
{ "vs", ILO_DEBUG_VS, "Dump vertex shaders" },
{ "gs", ILO_DEBUG_GS, "Dump geometry shaders" },
{ "fs", ILO_DEBUG_FS, "Dump fragment shaders" },
{ "cs", ILO_DEBUG_CS, "Dump compute shaders" },
{ "nohw", ILO_DEBUG_NOHW, "Do not send commands to HW" },
{ "nocache", ILO_DEBUG_NOCACHE, "Always invalidate HW caches" },
DEBUG_NAMED_VALUE_END
};
static void
ilo_screen_destroy(struct pipe_screen *screen)
{
@ -52,6 +65,8 @@ ilo_screen_create(struct intel_winsys *ws)
struct ilo_screen *is;
const struct intel_winsys_info *info;
ilo_debug = debug_get_flags_option("ILO_DEBUG", ilo_debug_flags, 0);
is = CALLOC_STRUCT(ilo_screen);
if (!is)
return NULL;