다음을 통해 공유


D3DDisassembleRegion 함수(d3dcompiler.h)

컴파일된 Microsoft HLSL(High Level Shader Language) 코드의 특정 지역을 디스어셈블합니다.

구문

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
라이브러리 D3DCompiler.lib
DLL D3DCompiler_47.dll

참조

함수