LLVM 20.0.0git
|
#include "SystemZ.h"
#include "SystemZInstrInfo.h"
#include "SystemZTargetMachine.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/LiveRegUnits.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/MC/MCInstrDesc.h"
#include <cassert>
#include <cstdint>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "systemz-elim-compare" |
Functions | |
STATISTIC (BranchOnCounts, "Number of branch-on-count instructions") | |
STATISTIC (LoadAndTraps, "Number of load-and-trap instructions") | |
STATISTIC (EliminatedComparisons, "Number of eliminated comparisons") | |
STATISTIC (FusedComparisons, "Number of fused compare-and-branch instructions") | |
INITIALIZE_PASS (SystemZElimCompare, DEBUG_TYPE, "SystemZ Comparison Elimination", false, false) static bool preservesValueOf(MachineInstr &MI | |
static bool | resultTests (MachineInstr &MI, unsigned Reg) |
static bool | isLoadAndTestAsCmp (MachineInstr &MI) |
static unsigned | getCompareSourceReg (MachineInstr &Compare) |
static bool | isAddWithImmediate (unsigned Opcode) |
static bool | isCompareZero (MachineInstr &Compare) |
Variables | |
unsigned | Reg |
#define DEBUG_TYPE "systemz-elim-compare" |
Definition at line 36 of file SystemZElimCompare.cpp.
|
static |
Definition at line 169 of file SystemZElimCompare.cpp.
References assert(), and isLoadAndTestAsCmp().
INITIALIZE_PASS | ( | SystemZElimCompare | , |
DEBUG_TYPE | , | ||
"SystemZ Comparison Elimination" | , | ||
false | , | ||
false | |||
) | & |
Definition at line 331 of file SystemZElimCompare.cpp.
|
static |
Definition at line 492 of file SystemZElimCompare.cpp.
References isLoadAndTestAsCmp().
|
static |
Definition at line 158 of file SystemZElimCompare.cpp.
References MI.
Referenced by getCompareSourceReg(), and isCompareZero().
|
static |
Definition at line 127 of file SystemZElimCompare.cpp.
STATISTIC | ( | BranchOnCounts | , |
"Number of branch-on-count instructions" | |||
) |
STATISTIC | ( | EliminatedComparisons | , |
"Number of eliminated comparisons" | |||
) |
STATISTIC | ( | FusedComparisons | , |
"Number of fused compare-and-branch instructions" | |||
) |
STATISTIC | ( | LoadAndTraps | , |
"Number of load-and-trap instructions" | |||
) |
unsigned Reg |
Definition at line 110 of file SystemZElimCompare.cpp.
Referenced by resultTests().