LLVM: lib/BinaryFormat/DXContainer.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

17

18using namespace llvm;

20

22#define CONTAINER_PART(PartName) .Case(#PartName, PartType::PartName)

24#include "llvm/BinaryFormat/DXContainerConstants.def"

25 .Default(dxbc::PartType::Unknown);

26}

27

29 static uint8_t Zeros[16] = {0};

31}

32

33#define COMPONENT_PRECISION(Val, Enum) {#Enum, SigMinPrecision::Enum},

34

36#include "llvm/BinaryFormat/DXContainerConstants.def"

37};

38

41}

42

43#define D3D_SYSTEM_VALUE(Val, Enum) {#Enum, D3DSystemValue::Enum},

44

46#include "llvm/BinaryFormat/DXContainerConstants.def"

47};

48

51}

52

53#define COMPONENT_TYPE(Val, Enum) {#Enum, SigComponentType::Enum},

54

56#include "llvm/BinaryFormat/DXContainerConstants.def"

57};

58

61}

62

63#define SEMANTIC_KIND(Val, Enum) {#Enum, PSV::SemanticKind::Enum},

64

66#include "llvm/BinaryFormat/DXContainerConstants.def"

67};

68

71}

72

73#define COMPONENT_TYPE(Val, Enum) {#Enum, PSV::ComponentType::Enum},

74

76#include "llvm/BinaryFormat/DXContainerConstants.def"

77};

78

81}

82

83#define INTERPOLATION_MODE(Val, Enum) {#Enum, PSV::InterpolationMode::Enum},

84

86#include "llvm/BinaryFormat/DXContainerConstants.def"

87};

88

91}

92

93#define RESOURCE_TYPE(Val, Enum) {#Enum, PSV::ResourceType::Enum},

94

96#include "llvm/BinaryFormat/DXContainerConstants.def"

97};

98

101}

102

103#define RESOURCE_KIND(Val, Enum) {#Enum, PSV::ResourceKind::Enum},

104

106#include "llvm/BinaryFormat/DXContainerConstants.def"

107};

108

111}

static const EnumEntry< D3DSystemValue > D3DSystemValueNames[]

static const EnumEntry< PSV::InterpolationMode > InterpolationModeNames[]

static const EnumEntry< SigMinPrecision > SigMinPrecisionNames[]

static const EnumEntry< PSV::SemanticKind > SemanticKindNames[]

static const EnumEntry< PSV::ResourceType > ResourceTypeNames[]

static const EnumEntry< PSV::ResourceKind > ResourceKindNames[]

static const EnumEntry< SigComponentType > SigComponentTypes[]

static const EnumEntry< PSV::ComponentType > ComponentTypeNames[]

Merge contiguous icmps into a memcmp

This file implements the StringSwitch template, which mimics a switch() statement whose cases are str...

ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...

StringRef - Represent a constant reference to a string, i.e.

A switch()-like statement whose cases are string literals.

ArrayRef< EnumEntry< ResourceKind > > getResourceKinds()

ArrayRef< EnumEntry< ComponentType > > getComponentTypes()

ArrayRef< EnumEntry< ResourceType > > getResourceTypes()

ArrayRef< EnumEntry< SemanticKind > > getSemanticKinds()

ArrayRef< EnumEntry< InterpolationMode > > getInterpolationModes()

PartType parsePartType(StringRef S)

ArrayRef< EnumEntry< SigComponentType > > getSigComponentTypes()

ArrayRef< EnumEntry< SigMinPrecision > > getSigMinPrecisions()

ArrayRef< EnumEntry< D3DSystemValue > > getD3DSystemValues()

This is an optimization pass for GlobalISel generic memory operations.