LLVM 19.0.0git
Classes | Namespaces | Macros | Functions | Variables
AArch64A57FPLoadBalancing.cpp File Reference
#include "AArch64.h"
#include "AArch64InstrInfo.h"
#include "AArch64Subtarget.h"
#include "llvm/ADT/EquivalenceClasses.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/RegisterClassInfo.h"
#include "llvm/CodeGen/RegisterScavenging.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"

Go to the source code of this file.

Classes

class  false::Chain
 A Chain is a sequence of instructions that are linked together by an accumulation operand. More...
 

Namespaces

namespace  false
 

Macros

#define DEBUG_TYPE   "aarch64-a57-fp-load-balancing"
 

Functions

static bool isMul (MachineInstr *MI)
 
static bool isMla (MachineInstr *MI)
 
 INITIALIZE_PASS_BEGIN (AArch64A57FPLoadBalancing, DEBUG_TYPE, "AArch64 A57 FP Load-Balancing", false, false) INITIALIZE_PASS_END(AArch64A57FPLoadBalancing
 

Variables

static cl::opt< boolTransformAll ("aarch64-a57-fp-load-balancing-force-all", cl::desc("Always modify dest registers regardless of color"), cl::init(false), cl::Hidden)
 
static cl::opt< unsignedOverrideBalance ("aarch64-a57-fp-load-balancing-override", cl::desc("Ignore balance information, always return " "(1: Even, 2: Odd)."), cl::init(0), cl::Hidden)
 
 DEBUG_TYPE
 
AArch64 A57 FP Load Balancing
 
AArch64 A57 FP Load false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "aarch64-a57-fp-load-balancing"

Definition at line 46 of file AArch64A57FPLoadBalancing.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AArch64A57FPLoadBalancing  ,
DEBUG_TYPE  ,
"AArch64 A57 FP Load-Balancing"  ,
false  ,
false   
)

◆ isMla()

static bool isMla ( MachineInstr MI)
static

Definition at line 80 of file AArch64A57FPLoadBalancing.cpp.

References MI.

◆ isMul()

static bool isMul ( MachineInstr MI)
static

Definition at line 67 of file AArch64A57FPLoadBalancing.cpp.

References MI.

Variable Documentation

◆ Balancing

AArch64 A57 FP Load Balancing

Definition at line 156 of file AArch64A57FPLoadBalancing.cpp.

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 155 of file AArch64A57FPLoadBalancing.cpp.

◆ false

AArch64 A57 FP Load false

Definition at line 156 of file AArch64A57FPLoadBalancing.cpp.

◆ OverrideBalance

cl::opt< unsigned > OverrideBalance("aarch64-a57-fp-load-balancing-override", cl::desc("Ignore balance information, always return " "(1: Even, 2: Odd)."), cl::init(0), cl::Hidden) ( "aarch64-a57-fp-load-balancing-override"  ,
cl::desc("Ignore balance information, always return " "(1: Even, 2: Odd).")  ,
cl::init(0)  ,
cl::Hidden   
)
static

◆ TransformAll

cl::opt< bool > TransformAll("aarch64-a57-fp-load-balancing-force-all", cl::desc("Always modify dest registers regardless of color"), cl::init(false), cl::Hidden) ( "aarch64-a57-fp-load-balancing-force-all"  ,
cl::desc("Always modify dest registers regardless of color")  ,
cl::init(false)  ,
cl::Hidden   
)
static