chromium/third_party/spirv-tools/src/source/opt/eliminate_dead_members_pass.cpp

// Copyright (c) 2019 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#include "source/opt/eliminate_dead_members_pass.h"

#include "ir_builder.h"
#include "source/opt/ir_context.h"

namespace spvtools {
namespace opt {
namespace {
constexpr uint32_t kRemovedMember =;
constexpr uint32_t kSpecConstOpOpcodeIdx =;
constexpr uint32_t kArrayElementTypeIdx =;
}  // namespace

Pass::Status EliminateDeadMembersPass::Process() {}

void EliminateDeadMembersPass::FindLiveMembers() {}

void EliminateDeadMembersPass::FindLiveMembers(const Function& function) {}

void EliminateDeadMembersPass::FindLiveMembers(const Instruction* inst) {}

void EliminateDeadMembersPass::MarkMembersAsLiveForStore(
    const Instruction* inst) {}

void EliminateDeadMembersPass::MarkTypeAsFullyUsed(uint32_t type_id) {}

void EliminateDeadMembersPass::MarkPointeeTypeAsFullUsed(uint32_t ptr_type_id) {}

void EliminateDeadMembersPass::MarkMembersAsLiveForCopyMemory(
    const Instruction* inst) {}

void EliminateDeadMembersPass::MarkMembersAsLiveForExtract(
    const Instruction* inst) {}

void EliminateDeadMembersPass::MarkMembersAsLiveForAccessChain(
    const Instruction* inst) {}

void EliminateDeadMembersPass::MarkOperandTypeAsFullyUsed(
    const Instruction* inst, uint32_t in_idx) {}

void EliminateDeadMembersPass::MarkMembersAsLiveForArrayLength(
    const Instruction* inst) {}

bool EliminateDeadMembersPass::RemoveDeadMembers() {}

bool EliminateDeadMembersPass::UpdateOpTypeStruct(Instruction* inst) {}

bool EliminateDeadMembersPass::UpdateOpMemberNameOrDecorate(Instruction* inst) {}

bool EliminateDeadMembersPass::UpdateOpGroupMemberDecorate(Instruction* inst) {}

bool EliminateDeadMembersPass::UpdateConstantComposite(Instruction* inst) {}

bool EliminateDeadMembersPass::UpdateAccessChain(Instruction* inst) {}

uint32_t EliminateDeadMembersPass::GetNewMemberIndex(uint32_t type_id,
                                                     uint32_t member_idx) {}

bool EliminateDeadMembersPass::UpdateCompsiteExtract(Instruction* inst) {}

bool EliminateDeadMembersPass::UpdateCompositeInsert(Instruction* inst) {}

bool EliminateDeadMembersPass::UpdateOpArrayLength(Instruction* inst) {}

void EliminateDeadMembersPass::MarkStructOperandsAsFullyUsed(
    const Instruction* inst) {}
}  // namespace opt
}  // namespace spvtools