次の方法で共有


D3DDisassembleRegion 関数 (d3dcompiler.h)

コンパイルされた Microsoft High Level Shader Language (HLSL) コードの特定の領域を逆アセンブルします。

構文

HRESULT D3DDisassembleRegion(
  [in]            LPCVOID  pSrcData,
  [in]            SIZE_T   SrcDataSize,
  [in]            UINT     Flags,
  [in, optional]  LPCSTR   szComments,
  [in]            SIZE_T   StartByteOffset,
  [in]            SIZE_T   NumInsts,
  [out, optional] SIZE_T   *pFinishByteOffset,
  [out]           ID3DBlob **ppDisassembly
);

パラメーター

[in] pSrcData

コンパイルされたシェーダー データへのポインター。

[in] SrcDataSize

pSrcData が指すメモリ ブロックのサイズ (バイト単位)。

[in] Flags

ビットごとの OR 演算を使用して結合される、次のフラグの 0 個以上の組み合わせ。 結果の値は、 D3DDisassembleRegion がコンパイルされたシェーダー データを分解する方法を指定します。

フラグ 説明
D3D_DISASM_ENABLE_COLOR_CODE (0x01) カラー コードの出力を有効にします。
D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS (0x02) 既定値の出力を有効にします。
D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING (0x04) 命令の番号付けを有効にします。
D3D_DISASM_ENABLE_INSTRUCTION_CYCLE (0x08) 影響しません。
D3D_DISASM_DISABLE_DEBUG_INFO (0x10) デバッグ情報の出力を無効にします。
D3D_DISASM_ENABLE_INSTRUCTION_OFFSET (0x20) 命令オフセットの出力を有効にします。
D3D_DISASM_INSTRUCTION_ONLY (0x40) このフラグは D3DDisassembleRegion には影響しません。 サイクル情報はトレースから取得されます。したがって、サイクル情報は D3DDisassemble11Trace のトレース逆アセンブリでのみ使用できます。

[in, optional] szComments

シェーダーの定数と変数を識別する、シェーダーの上部にある定数 null で終わる文字列へのポインター。

[in] StartByteOffset

D3DDisassembleRegion が逆アセンブリを開始するコンパイル済みシェーダー データへのオフセットバイト数。

[in] NumInsts

分解する命令の数。

[out, optional] pFinishByteOffset

D3DDisassembleRegion が逆アセンブリを終了するコンパイル済みシェーダー データへのバイト オフセット数を受け取る変数へのポインター。

[out] ppDisassembly

逆アセンブルされた HLSL コードにアクセスする ID3DBlob インターフェイスを受け取るバッファーへのポインター。

戻り値

Direct3D 11 のリターン コードのいずれかを返します

注釈

メモ D3dcompiler_44.dll 以降のバージョンのファイルには、 D3DDisassembleRegion コンパイラ関数が含まれています。
 

要件

要件
対象プラットフォーム Windows
ヘッダー d3dcompiler.h
Library D3DCompiler.lib
[DLL] D3DCompiler_47.dll

関連項目

関数