| //===-- DXILABI.cpp - ABI Sensitive Values for DXIL -----------------------===// |
| // |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| // See https://llvm.org/LICENSE.txt for license information. |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // This file contains definitions of various constants and enums that are |
| // required to remain stable as per the DXIL format's requirements. |
| // |
| // Documentation for DXIL can be found in |
| // https://github.com/Microsoft/DirectXShaderCompiler/blob/main/docs/DXIL.rst. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #include "llvm/Support/DXILABI.h" |
| #include "llvm/Support/ErrorHandling.h" |
| using namespace llvm; |
| |
| StringRef dxil::getResourceClassName(dxil::ResourceClass RC) { |
| switch (RC) { |
| case dxil::ResourceClass::SRV: |
| return "SRV"; |
| case dxil::ResourceClass::UAV: |
| return "UAV"; |
| case dxil::ResourceClass::CBuffer: |
| return "CBV"; |
| case dxil::ResourceClass::Sampler: |
| return "Sampler"; |
| } |
| llvm_unreachable("Invalid ResourceClass enum value"); |
| } |