LLVM 22.0.0git
|
#include "llvm/Transforms/Coroutines/MaterializationUtils.h"
#include "CoroInternal.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/ModuleSlotTracker.h"
#include "llvm/Transforms/Coroutines/SpillUtils.h"
#include <deque>
Go to the source code of this file.
Classes | |
struct | llvm::GraphTraits< RematGraph * > |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. |
Macros | |
#define | DEBUG_TYPE "coro-suspend-crossing" |
Functions | |
static void | rewriteMaterializableInstructions (const SmallMapVector< Instruction *, std::unique_ptr< RematGraph >, 8 > &AllRemats) |
static void | dumpRemats (StringRef Title, const SmallMapVector< Instruction *, std::unique_ptr< RematGraph >, 8 > &RM) |
#define DEBUG_TYPE "coro-suspend-crossing" |
Definition at line 28 of file MaterializationUtils.cpp.
|
static |
Definition at line 246 of file MaterializationUtils.cpp.
References llvm::dbgs(), and E().
Referenced by llvm::coro::doRematerializations().
|
static |
Definition at line 157 of file MaterializationUtils.cpp.
References assert(), llvm::ReversePostOrderTraversal< GraphT, GT >::begin(), D(), llvm::dyn_cast(), E(), llvm::ReversePostOrderTraversal< GraphT, GT >::end(), llvm::ilist_node_impl< OptionsT >::getIterator(), llvm::BasicBlock::getTerminator(), I, llvm::Instruction::insertBefore(), llvm::isa(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), and llvm::Value::setName().
Referenced by llvm::coro::doRematerializations().