summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/angle/src/compiler/translator/Operator.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/angle/src/compiler/translator/Operator.h')
-rw-r--r--src/3rdparty/angle/src/compiler/translator/Operator.h255
1 files changed, 0 insertions, 255 deletions
diff --git a/src/3rdparty/angle/src/compiler/translator/Operator.h b/src/3rdparty/angle/src/compiler/translator/Operator.h
deleted file mode 100644
index 72f3dbf3f6..0000000000
--- a/src/3rdparty/angle/src/compiler/translator/Operator.h
+++ /dev/null
@@ -1,255 +0,0 @@
-//
-// Copyright (c) 2002-2015 The ANGLE Project Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-
-#ifndef COMPILER_TRANSLATOR_OPERATOR_H_
-#define COMPILER_TRANSLATOR_OPERATOR_H_
-
-//
-// Operators used by the high-level (parse tree) representation.
-//
-enum TOperator
-{
- EOpNull, // if in a node, should only mean a node is still being built
-
- // Call a function defined in the AST. This might be a user-defined function or a function
- // inserted by an AST transformation.
- EOpCallFunctionInAST,
-
- // Call an internal helper function with a raw implementation - the implementation can't be
- // subject to AST transformations. Raw functions have a few constraints to keep them compatible
- // with AST traversers:
- // * They should not return arrays.
- // * They should not have out parameters.
- EOpCallInternalRawFunction,
-
- // Call a built-in function like a texture or image function.
- EOpCallBuiltInFunction,
-
- //
- // Unary operators
- //
-
- EOpNegative,
- EOpPositive,
- EOpLogicalNot,
- EOpBitwiseNot,
-
- EOpPostIncrement,
- EOpPostDecrement,
- EOpPreIncrement,
- EOpPreDecrement,
-
- EOpArrayLength,
-
- //
- // binary operations (ones with special GLSL syntax are used in TIntermBinary nodes, others in
- // TIntermAggregate nodes)
- //
-
- EOpAdd,
- EOpSub,
- EOpMul,
- EOpDiv,
- EOpIMod,
-
- EOpEqual,
- EOpNotEqual,
- EOpLessThan,
- EOpGreaterThan,
- EOpLessThanEqual,
- EOpGreaterThanEqual,
-
- EOpEqualComponentWise,
- EOpNotEqualComponentWise,
- EOpLessThanComponentWise,
- EOpLessThanEqualComponentWise,
- EOpGreaterThanComponentWise,
- EOpGreaterThanEqualComponentWise,
-
- EOpComma,
-
- EOpVectorTimesScalar,
- EOpVectorTimesMatrix,
- EOpMatrixTimesVector,
- EOpMatrixTimesScalar,
- EOpMatrixTimesMatrix,
-
- EOpLogicalOr,
- EOpLogicalXor,
- EOpLogicalAnd,
-
- EOpBitShiftLeft,
- EOpBitShiftRight,
-
- EOpBitwiseAnd,
- EOpBitwiseXor,
- EOpBitwiseOr,
-
- EOpIndexDirect,
- EOpIndexIndirect,
- EOpIndexDirectStruct,
- EOpIndexDirectInterfaceBlock,
-
- //
- // Built-in functions mapped to operators (either unary or with multiple parameters)
- //
-
- EOpRadians,
- EOpDegrees,
- EOpSin,
- EOpCos,
- EOpTan,
- EOpAsin,
- EOpAcos,
- EOpAtan,
-
- EOpSinh,
- EOpCosh,
- EOpTanh,
- EOpAsinh,
- EOpAcosh,
- EOpAtanh,
-
- EOpPow,
- EOpExp,
- EOpLog,
- EOpExp2,
- EOpLog2,
- EOpSqrt,
- EOpInverseSqrt,
-
- EOpAbs,
- EOpSign,
- EOpFloor,
- EOpTrunc,
- EOpRound,
- EOpRoundEven,
- EOpCeil,
- EOpFract,
- EOpMod,
- EOpModf,
- EOpMin,
- EOpMax,
- EOpClamp,
- EOpMix,
- EOpStep,
- EOpSmoothStep,
- EOpIsNan,
- EOpIsInf,
-
- EOpFloatBitsToInt,
- EOpFloatBitsToUint,
- EOpIntBitsToFloat,
- EOpUintBitsToFloat,
-
- EOpFrexp,
- EOpLdexp,
-
- EOpPackSnorm2x16,
- EOpPackUnorm2x16,
- EOpPackHalf2x16,
- EOpUnpackSnorm2x16,
- EOpUnpackUnorm2x16,
- EOpUnpackHalf2x16,
-
- EOpPackUnorm4x8,
- EOpPackSnorm4x8,
- EOpUnpackUnorm4x8,
- EOpUnpackSnorm4x8,
-
- EOpLength,
- EOpDistance,
- EOpDot,
- EOpCross,
- EOpNormalize,
- EOpFaceforward,
- EOpReflect,
- EOpRefract,
-
- EOpDFdx, // Fragment only, OES_standard_derivatives extension
- EOpDFdy, // Fragment only, OES_standard_derivatives extension
- EOpFwidth, // Fragment only, OES_standard_derivatives extension
-
- EOpMulMatrixComponentWise,
- EOpOuterProduct,
- EOpTranspose,
- EOpDeterminant,
- EOpInverse,
-
- EOpAny,
- EOpAll,
- EOpLogicalNotComponentWise,
-
- EOpBitfieldExtract,
- EOpBitfieldInsert,
- EOpBitfieldReverse,
- EOpBitCount,
- EOpFindLSB,
- EOpFindMSB,
- EOpUaddCarry,
- EOpUsubBorrow,
- EOpUmulExtended,
- EOpImulExtended,
-
- //
- // Branch
- //
-
- EOpKill, // Fragment only
- EOpReturn,
- EOpBreak,
- EOpContinue,
-
- //
- // Constructor
- //
-
- EOpConstruct,
-
- //
- // moves
- //
-
- EOpAssign,
- EOpInitialize,
- EOpAddAssign,
- EOpSubAssign,
-
- EOpMulAssign,
- EOpVectorTimesMatrixAssign,
- EOpVectorTimesScalarAssign,
- EOpMatrixTimesScalarAssign,
- EOpMatrixTimesMatrixAssign,
-
- EOpDivAssign,
- EOpIModAssign,
- EOpBitShiftLeftAssign,
- EOpBitShiftRightAssign,
- EOpBitwiseAndAssign,
- EOpBitwiseXorAssign,
- EOpBitwiseOrAssign,
-
- // barriers
- EOpBarrier,
- EOpMemoryBarrier,
- EOpMemoryBarrierAtomicCounter,
- EOpMemoryBarrierBuffer,
- EOpMemoryBarrierImage,
- EOpMemoryBarrierShared,
- EOpGroupMemoryBarrier,
-
- // Geometry only
- EOpEmitVertex,
- EOpEndPrimitive
-};
-
-// Returns the string corresponding to the operator in GLSL
-const char *GetOperatorString(TOperator op);
-
-// Say whether or not a binary or unary operation changes the value of a variable.
-bool IsAssignment(TOperator op);
-
-#endif // COMPILER_TRANSLATOR_OPERATOR_H_