summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/Public/ShaderLangExt.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/shader/slang/Public/ShaderLangExt.h')
-rwxr-xr-xsrc/mesa/shader/slang/Public/ShaderLangExt.h132
1 files changed, 0 insertions, 132 deletions
diff --git a/src/mesa/shader/slang/Public/ShaderLangExt.h b/src/mesa/shader/slang/Public/ShaderLangExt.h
index bb669f327e..e44b5f99af 100755
--- a/src/mesa/shader/slang/Public/ShaderLangExt.h
+++ b/src/mesa/shader/slang/Public/ShaderLangExt.h
@@ -45,143 +45,11 @@
extern "C" {
#endif
-typedef enum {
- EReserved = 0,
- EFixed,
- ERecommended,
- EFloating
-} ShPriority;
-
-typedef enum {
- ESymbol = 0,
- EFloatConst,
- EFloatConstPtr,
- EIntConst,
- EIntConstPtr,
- EBoolConst,
- EBoolConstPtr
-} ShDataType;
-
-// this definition will eventually go once we move to the new linker interface in the driver
-typedef enum {
- EVirtualBinding,
- EPhysicalBinding
-} ShVirtualPhysicalBinding;
-
-typedef struct {
- int size; // out - total physical size for the binding in floats - P10
- int location; // in-out - virtualLocation for all cases
- int functionPriority; // out - used for giving priorities to function bindings
- int proEpilogue; // out - essentially a bool defining whether its a prologue/epilogue or not, 1 means it is
- int builtInName; // out - basically a bool value, 0 means not a builtInName, 1 means its a builtInName
- int arraySize; // out - size of the array in units of its type - if the binding is for an array
- ShPriority bindingPriority; // in-out - EFixed, ERecommended, EFloating
- ShDataType bindingDataType; // in-out - whether its a symbol name or a constant value
- ShBasicType hardwareDataType; // out - bool are loaded as floats on the hardware
- ShBasicType userDataType; // out - mat3 -> mat3, ivec2 -> ivec2, vec2 -> vec2
- ShBasicType basicUserType; // out - mat3 -> float, ivec2 ->int, vec2 -> float
- int sizeOfType; // out - for vec3 -> 3, for float -> 1, for mat3 -> 3, mat3[10] -> 3
- int matrix; // out - essentially a boolean, 0 means vector, 1 means matrix
- union { // in-out
- char* name;
- float floatVal;
- float* floatValPtr;
- int intVal;
- int* intValPtr;
- };
- // A pointer to ShP10PhysicalBinding or ShP20PhysicalBinding
- void* targetDependentData; // in-out
-} ShBindingExt;
-
-//
-// to specify the type of binding
-//
-typedef enum {
- EAttribute,
- EUniform,
- EVarying,
- EFunction,
- EConstant,
- EFunctionRelocation,
- EArbVertexLocal,
- EArbVertexEnv,
- EArbFragmentLocal,
- EArbFragmentEnv,
- EState,
- ENoBindingType } ShBindingType;
-
-typedef struct {
- // a pointer to ShBindingExt
- ShBindingExt* pBinding;
- int numOfBindings;
- ShBindingType type;
-} ShBindingTableExt;
-
-typedef struct {
- ShBindingTableExt *bindingTable;
- int numOfBindingTables;
-} ShBindingList;
-
-SH_IMPORT_EXPORT ShHandle ShConstructBindings();
-SH_IMPORT_EXPORT ShHandle ShConstructLibrary();
-
-SH_IMPORT_EXPORT ShHandle ShAddBinding(ShHandle bindingHandle,
- ShBindingExt* binding,
- ShBindingType type);
-SH_IMPORT_EXPORT ShHandle ShAddBindingTable(ShHandle bindingHandle,
- ShBindingTableExt *bindingTable,
- ShBindingType type);
-
SH_IMPORT_EXPORT int ShLinkExt(
const ShHandle, // linker object
const ShHandle h[], // compiler objects to link together
const int numHandles);
-SH_IMPORT_EXPORT ShBindingList* ShGetBindingList(const ShHandle linkerHandle);
-SH_IMPORT_EXPORT ShBindingTableExt* ShGetBindingTable(const ShHandle linkerHandle, ShBindingType type);
-SH_IMPORT_EXPORT int ShGetUniformLocationExt(const ShHandle linkerHandle, const char* name);
-SH_IMPORT_EXPORT int ShSetFixedAttributeBindingsExt(const ShHandle, const ShBindingTableExt*);
-SH_IMPORT_EXPORT int ShGetUniformLocationExt2(const ShHandle handle, const char* name, int* location, int* offset);
-SH_IMPORT_EXPORT int ShSetVirtualLocation(const ShHandle handle, ShBindingType type, int bindingIndex, int virtualLocation);
-SH_IMPORT_EXPORT int ShGetVirtualLocation(const ShHandle handle, ShBindingType type, int bindingIndex, int *virtualLocation);
-//
-// To get the bindings object from the linker object (after the link is done so that
-// bindings can be added to the list)
-//
-SH_IMPORT_EXPORT ShHandle ShGetBindings(const ShHandle linkerHandle);
-SH_IMPORT_EXPORT int ShAddLibraryCode(ShHandle library, const char* name, const ShHandle objectCodes[], const int numHandles);
-
-/*****************************************************************************
- This code is used by the new shared linker
- *****************************************************************************/
-//
-// Each programmable unit has a UnitExecutable. Targets may subclass
-// and append to this as desired.
-//
-typedef struct {
- int name; // name of unit to which executable is targeted
- int entry; // a target specific entry point
- int count; // size of executable
- const void* code; // read-only code
-} ShUnitExecutable;
-
-//
-// The "void*" returned from ShGetExecutable() will be an ShExecutable
-//
-typedef struct {
- int count; // count of unit executables
- ShUnitExecutable* executables;
-} ShExecutable;
-
-SH_IMPORT_EXPORT ShExecutable* ShGetExecutableExt(const ShHandle linkerHandle);
-
-typedef struct {
- int numThread;
- int stackSpacePerThread;
- int visBufferValidity; // essenatially a boolean
- int shaderFragTerminationStatus; // essentially a boolean
-} ShDeviceInfo;
-
#ifdef __cplusplus
}
#endif