Path: blob/21.2-virgl/src/gallium/frontends/d3d10umd/ShaderDump.cpp
4565 views
/**************************************************************************1*2* Copyright 2012-2021 VMware, Inc.3* All Rights Reserved.4*5* Permission is hereby granted, free of charge, to any person obtaining a6* copy of this software and associated documentation files (the7* "Software"), to deal in the Software without restriction, including8* without limitation the rights to use, copy, modify, merge, publish,9* distribute, sub license, and/or sell copies of the Software, and to10* permit persons to whom the Software is furnished to do so, subject to11* the following conditions:12*13* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR14* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,15* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL16* THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM,17* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR18* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE19* USE OR OTHER DEALINGS IN THE SOFTWARE.20*21* The above copyright notice and this permission notice (including the22* next paragraph) shall be included in all copies or substantial portions23* of the Software.24*25**************************************************************************/2627/*28* ShaderDump.c --29* Functions for printing out shaders.30*/3132#include "DriverIncludes.h"3334#include "ShaderDump.h"35#include "util/u_debug.h"363738static void39dump_uints(const unsigned *data,40unsigned count)41{42unsigned i;4344for (i = 0; i < count; i++) {45if (i % 8 == 7) {46debug_printf("0x%08x,\n", data[i]);47} else {48debug_printf("0x%08x, ", data[i]);49}50}51if (i % 8) {52debug_printf("\n");53}54}5556void57dx10_shader_dump_binary(const unsigned *code)58{59dump_uints(code, code[1]);60}616263void64dx10_shader_dump_tokens(const unsigned *code)65{66/*67* TODO: Dump SM4/5 disassembly via D3DDisassemble. However this requires68* rebuilding DXBC container.69*/70dx10_shader_dump_binary(code);71}727374