llvm/llvm/lib/Target/WebAssembly/WebAssemblyRefTypeMem2Local.cpp

//=== WebAssemblyRefTypeMem2Local.cpp - WebAssembly RefType Mem2Local -----===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
///
/// \file
/// Assign reference type allocas to local addrspace (addrspace(1)) so that
/// their loads and stores can be lowered to local.gets/local.sets.
///
//===----------------------------------------------------------------------===//

#include "Utils/WasmAddressSpaces.h"
#include "Utils/WebAssemblyTypeUtilities.h"
#include "WebAssembly.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstVisitor.h"
#include "llvm/IR/ValueHandle.h"
#include "llvm/Pass.h"
usingnamespacellvm;

#define DEBUG_TYPE

namespace {
class WebAssemblyRefTypeMem2Local final
    : public FunctionPass,
      public InstVisitor<WebAssemblyRefTypeMem2Local> {};
} // End anonymous namespace

char WebAssemblyRefTypeMem2Local::ID =;
INITIALIZE_PASS()

FunctionPass *llvm::createWebAssemblyRefTypeMem2Local() {}

void WebAssemblyRefTypeMem2Local::visitAllocaInst(AllocaInst &AI) {}

bool WebAssemblyRefTypeMem2Local::runOnFunction(Function &F) {}