diff options
author | Greg Daniel <egdaniel@google.com> | 2016-12-12 17:20:42 +0000 |
---|---|---|
committer | Greg Daniel <egdaniel@google.com> | 2016-12-12 17:22:28 +0000 |
commit | e8e4a3e6782586680086a0279eafb89969c29f3d (patch) | |
tree | 93e27a37cd75c69fe85fab990f6daf17c80ed794 /src/sksl/SkSLSPIRVCodeGenerator.h | |
parent | d737bee1470bbba8af5c9d74cbec2d731da33804 (diff) |
Revert "added sk_FragCoord support to skslc"
This reverts commit ce33f10677630e34187b661a02161378d8304d68.
Reason for revert: Breaking many gpu bots
Change-Id: I94c813ed6a9311458c872f74bb1b0792f46ff414
Reviewed-on: https://skia-review.googlesource.com/5737
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Diffstat (limited to 'src/sksl/SkSLSPIRVCodeGenerator.h')
-rw-r--r-- | src/sksl/SkSLSPIRVCodeGenerator.h | 28 |
1 files changed, 10 insertions, 18 deletions
diff --git a/src/sksl/SkSLSPIRVCodeGenerator.h b/src/sksl/SkSLSPIRVCodeGenerator.h index 96ff187983..5567ec5404 100644 --- a/src/sksl/SkSLSPIRVCodeGenerator.h +++ b/src/sksl/SkSLSPIRVCodeGenerator.h @@ -62,21 +62,18 @@ public: virtual void store(SpvId value, SkWStream& out) = 0; }; - SPIRVCodeGenerator(const Context* context, const Program* program, ErrorReporter* errors, - SkWStream* out) - : INHERITED(program, errors, out) - , fContext(*context) + SPIRVCodeGenerator(const Context* context) + : fContext(*context) , fDefaultLayout(MemoryLayout::k140_Standard) , fCapabilities(1 << SpvCapabilityShader) , fIdCount(1) , fBoolTrue(0) , fBoolFalse(0) - , fSetupFragPosition(false) , fCurrentBlock(0) { this->setupIntrinsics(); } - bool generateCode() override; + void generateCode(const Program& program, ErrorReporter& errors, SkWStream& out) override; private: enum IntrinsicKind { @@ -103,7 +100,7 @@ private: SpvId getPointerType(const Type& type, SpvStorageClass_ storageClass); - SpvId getPointerType(const Type& type, const MemoryLayout& layout, + SpvId getPointerType(const Type& type, const MemoryLayout& layout, SpvStorageClass_ storageClass); std::vector<SpvId> getAccessChain(const Expression& expr, SkWStream& out); @@ -156,11 +153,11 @@ private: SpvId writeSwizzle(const Swizzle& swizzle, SkWStream& out); - SpvId writeBinaryOperation(const Type& resultType, const Type& operandType, SpvId lhs, - SpvId rhs, SpvOp_ ifFloat, SpvOp_ ifInt, SpvOp_ ifUInt, + SpvId writeBinaryOperation(const Type& resultType, const Type& operandType, SpvId lhs, + SpvId rhs, SpvOp_ ifFloat, SpvOp_ ifInt, SpvOp_ ifUInt, SpvOp_ ifBool, SkWStream& out); - SpvId writeBinaryOperation(const BinaryExpression& expr, SpvOp_ ifFloat, SpvOp_ ifInt, + SpvId writeBinaryOperation(const BinaryExpression& expr, SpvOp_ ifFloat, SpvOp_ ifInt, SpvOp_ ifUInt, SkWStream& out); SpvId writeBinaryExpression(const BinaryExpression& b, SkWStream& out); @@ -218,7 +215,7 @@ private: void writeInstruction(SpvOp_ opCode, int32_t word1, int32_t word2, SkWStream& out); - void writeInstruction(SpvOp_ opCode, int32_t word1, int32_t word2, int32_t word3, + void writeInstruction(SpvOp_ opCode, int32_t word1, int32_t word2, int32_t word3, SkWStream& out); void writeInstruction(SpvOp_ opCode, int32_t word1, int32_t word2, int32_t word3, int32_t word4, @@ -234,11 +231,12 @@ private: int32_t word5, int32_t word6, int32_t word7, SkWStream& out); void writeInstruction(SpvOp_ opCode, int32_t word1, int32_t word2, int32_t word3, int32_t word4, - int32_t word5, int32_t word6, int32_t word7, int32_t word8, + int32_t word5, int32_t word6, int32_t word7, int32_t word8, SkWStream& out); const Context& fContext; const MemoryLayout fDefaultLayout; + ErrorReporter* fErrors; uint64_t fCapabilities; SpvId fIdCount; @@ -252,7 +250,6 @@ private: SkDynamicMemoryWStream fCapabilitiesBuffer; SkDynamicMemoryWStream fGlobalInitializersBuffer; SkDynamicMemoryWStream fConstantBuffer; - SkDynamicMemoryWStream fExtraGlobalsBuffer; SkDynamicMemoryWStream fExternalFunctionsBuffer; SkDynamicMemoryWStream fVariableBuffer; SkDynamicMemoryWStream fNameBuffer; @@ -264,18 +261,13 @@ private: std::unordered_map<uint64_t, SpvId> fUIntConstants; std::unordered_map<float, SpvId> fFloatConstants; std::unordered_map<double, SpvId> fDoubleConstants; - bool fSetupFragPosition; // label of the current block, or 0 if we are not in a block SpvId fCurrentBlock; std::stack<SpvId> fBreakTarget; std::stack<SpvId> fContinueTarget; - SpvId fRTHeightStructId = (SpvId) -1; - SpvId fRTHeightFieldIndex = (SpvId) -1; friend class PointerLValue; friend class SwizzleLValue; - - typedef CodeGenerator INHERITED; }; } |