LLVM
8.0.1
|
This runs the hazard recognizer and emits noops when necessary. More...
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/ScheduleHazardRecognizer.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "post-RA-hazard-rec" |
Functions | |
STATISTIC (NumNoops, "Number of noops inserted") | |
INITIALIZE_PASS (PostRAHazardRecognizer, DEBUG_TYPE, "Post RA hazard recognizer", false, false) bool PostRAHazardRecognizer | |
This runs the hazard recognizer and emits noops when necessary.
This gives targets a way to run the hazard recognizer without running one of the schedulers. Example use cases for this pass would be:
This pass traverses all the instructions in a program in top-down order. In contrast to the instruction scheduling passes, this pass never resets the hazard recognizer to ensure it can correctly handles noop hazards at the beginning of blocks.
Definition in file PostRAHazardRecognizer.cpp.
#define DEBUG_TYPE "post-RA-hazard-rec" |
Definition at line 41 of file PostRAHazardRecognizer.cpp.
INITIALIZE_PASS | ( | PostRAHazardRecognizer | , |
DEBUG_TYPE | , | ||
"Post RA hazard recognizer" | , | ||
false | , | ||
false | |||
) |
Definition at line 66 of file PostRAHazardRecognizer.cpp.
References llvm::TargetInstrInfo::CreateTargetPostRAHazardRecognizer(), llvm::TargetInstrInfo::insertNoop(), MI, and TII.
STATISTIC | ( | NumNoops | , |
"Number of noops inserted" | |||
) |