LLVM 19.0.0git
Macros | Enumerations | Variables
ARMSubtarget.cpp File Reference
#include "ARM.h"
#include "ARMCallLowering.h"
#include "ARMFrameLowering.h"
#include "ARMInstrInfo.h"
#include "ARMLegalizerInfo.h"
#include "ARMRegisterBankInfo.h"
#include "ARMSubtarget.h"
#include "ARMTargetMachine.h"
#include "MCTargetDesc/ARMMCTargetDesc.h"
#include "Thumb1FrameLowering.h"
#include "Thumb1InstrInfo.h"
#include "Thumb2InstrInfo.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"
#include "llvm/CodeGen/GlobalISel/InstructionSelect.h"
#include "llvm/CodeGen/MachineFrameInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCTargetOptions.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/TargetParser/ARMTargetParser.h"
#include "llvm/TargetParser/Triple.h"
#include "ARMGenSubtargetInfo.inc"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "arm-subtarget"
 
#define GET_SUBTARGETINFO_TARGET_DESC
 
#define GET_SUBTARGETINFO_CTOR
 

Enumerations

enum  ITMode { DefaultIT , RestrictedIT }
 

Variables

static cl::opt< boolUseFusedMulOps ("arm-use-mulops", cl::init(true), cl::Hidden)
 
static cl::opt< ITModeIT (cl::desc("IT block support"), cl::Hidden, cl::init(DefaultIT), cl::values(clEnumValN(DefaultIT, "arm-default-it", "Generate any type of IT block"), clEnumValN(RestrictedIT, "arm-restrict-it", "Disallow complex IT blocks")))
 
static cl::opt< boolForceFastISel ("arm-force-fast-isel", cl::init(false), cl::Hidden)
 ForceFastISel - Use the fast-isel, even for subtargets where it is not currently supported (for testing only).
 
static cl::opt< boolEnableSubRegLiveness ("arm-enable-subreg-liveness", cl::init(false), cl::Hidden)
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "arm-subtarget"

Definition at line 43 of file ARMSubtarget.cpp.

◆ GET_SUBTARGETINFO_CTOR

#define GET_SUBTARGETINFO_CTOR

Definition at line 46 of file ARMSubtarget.cpp.

◆ GET_SUBTARGETINFO_TARGET_DESC

#define GET_SUBTARGETINFO_TARGET_DESC

Definition at line 45 of file ARMSubtarget.cpp.

Enumeration Type Documentation

◆ ITMode

enum ITMode
Enumerator
DefaultIT 
RestrictedIT 

Definition at line 53 of file ARMSubtarget.cpp.

Variable Documentation

◆ EnableSubRegLiveness

cl::opt< bool > EnableSubRegLiveness("arm-enable-subreg-liveness", cl::init(false), cl::Hidden) ( "arm-enable-subreg-liveness"  ,
cl::init(false)  ,
cl::Hidden   
)
static

◆ ForceFastISel

cl::opt< bool > ForceFastISel("arm-force-fast-isel", cl::init(false), cl::Hidden) ( "arm-force-fast-isel"  ,
cl::init(false)  ,
cl::Hidden   
)
static

ForceFastISel - Use the fast-isel, even for subtargets where it is not currently supported (for testing only).

Referenced by llvm::ARMSubtarget::useFastISel().

◆ IT

cl::opt< ITMode > IT(cl::desc("IT block support"), cl::Hidden, cl::init(DefaultIT), cl::values(clEnumValN(DefaultIT, "arm-default-it", "Generate any type of IT block"), clEnumValN(RestrictedIT, "arm-restrict-it", "Disallow complex IT blocks"))) ( cl::desc("IT block support")  ,
cl::Hidden  ,
cl::init(DefaultIT ,
cl::values(clEnumValN(DefaultIT, "arm-default-it", "Generate any type of IT block"), clEnumValN(RestrictedIT, "arm-restrict-it", "Disallow complex IT blocks"))   
)
static

◆ UseFusedMulOps

cl::opt< bool > UseFusedMulOps("arm-use-mulops", cl::init(true), cl::Hidden) ( "arm-use-mulops"  ,
cl::init(true ,
cl::Hidden   
)
static