Hash :
2f737c25
Author :
Date :
2021-02-25T16:55:14
Translator: Rename GLSL to SPIR-V in Vulkan and Metal output Preparation for actual SPIR-V output instead of GLSL. Bug: angleproject:4889 Change-Id: Ic279b23d3a817bd5dca66a844905378207afdbac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2721194 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
//
// Copyright 2019 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.
//
// TOutputVulkanGLSLForMetal:
// This is a special version Vulkan GLSL output that will make some special
// considerations for Metal backend limitations.
//
#ifndef COMPILER_TRANSLATOR_OUTPUTVULKANGLSLFORMETAL_H_
#define COMPILER_TRANSLATOR_OUTPUTVULKANGLSLFORMETAL_H_
#include "compiler/translator/OutputVulkanGLSL.h"
namespace sh
{
class TOutputVulkanGLSLForMetal : public TOutputVulkanGLSL
{
public:
TOutputVulkanGLSLForMetal(TInfoSinkBase &objSink,
ShArrayIndexClampingStrategy clampingStrategy,
ShHashFunction64 hashFunction,
NameMap &nameMap,
TSymbolTable *symbolTable,
sh::GLenum shaderType,
int shaderVersion,
ShShaderOutput output,
ShCompileOptions compileOptions);
static void RemoveInvariantForTest(bool remove);
protected:
bool visitGlobalQualifierDeclaration(Visit visit,
TIntermGlobalQualifierDeclaration *node) override;
void writeVariableType(const TType &type,
const TSymbol *symbol,
bool isFunctionArgument) override;
};
} // namespace sh
#endif // COMPILER_TRANSLATOR_OUTPUTVULKANGLSLFORMETAL_H_