21 #define GET_SUBTARGETINFO_CTOR
22 #define GET_SUBTARGETINFO_TARGET_DESC
23 #include "HexagonGenSubtargetInfo.inc"
27 cl::desc(
"Enable Hexagon V3 instructions."));
31 "enable-hexagon-memops",
34 "Generate V4 MEMOP in code generation for Hexagon target"));
38 "disable-hexagon-memops",
41 "Do not generate V4 MEMOP in code generation for Hexagon target"));
45 "enable-hexagon-ieee-rnd-near",
47 cl::desc(
"Generate non-chopped conversion from fp to int."));
51 CPUString(CPU.str()) {
84 ModeIEEERndNear =
true;
86 ModeIEEERndNear =
false;
90 void HexagonSubtarget::anchor() {}
InstrItineraryData InstrItins
static cl::opt< bool > EnableV3("enable-hexagon-v3", cl::Hidden, cl::desc("Enable Hexagon V3 instructions."))
static cl::opt< bool > EnableIEEERndNear("enable-hexagon-ieee-rnd-near", cl::Hidden, cl::ZeroOrMore, cl::init(false), cl::desc("Generate non-chopped conversion from fp to int."))
#define llvm_unreachable(msg)
static cl::opt< bool > DisableMemOps("disable-hexagon-memops", cl::Hidden, cl::ZeroOrMore, cl::ValueDisallowed, cl::init(false), cl::desc("Do not generate V4 MEMOP in code generation for Hexagon target"))
static cl::opt< bool > EnableMemOps("enable-hexagon-memops", cl::Hidden, cl::ZeroOrMore, cl::ValueDisallowed, cl::init(true), cl::desc("Generate V4 MEMOP in code generation for Hexagon target"))
initializer< Ty > init(const Ty &Val)
HexagonArchEnum HexagonArchVersion
void ParseSubtargetFeatures(StringRef CPU, StringRef FS)
HexagonSubtarget(StringRef TT, StringRef CPU, StringRef FS)