Lines Matching refs:cl

57 static cl::opt<bool>
58 EnableIPRA("enable-ipra", cl::init(false), cl::Hidden,
59 cl::desc("Enable interprocedural register allocation "
61 static cl::opt<bool> DisablePostRASched("disable-post-ra", cl::Hidden,
62 cl::desc("Disable Post Regalloc Scheduler"));
63 static cl::opt<bool> DisableBranchFold("disable-branch-fold", cl::Hidden,
64 cl::desc("Disable branch folding"));
65 static cl::opt<bool> DisableTailDuplicate("disable-tail-duplicate", cl::Hidden,
66 cl::desc("Disable tail duplication"));
67 static cl::opt<bool> DisableEarlyTailDup("disable-early-taildup", cl::Hidden,
68 cl::desc("Disable pre-register allocation tail duplication"));
69 static cl::opt<bool> DisableBlockPlacement("disable-block-placement",
70 cl::Hidden, cl::desc("Disable probability-driven block placement"));
71 static cl::opt<bool> EnableBlockPlacementStats("enable-block-placement-stats",
72 cl::Hidden, cl::desc("Collect probability-driven block placement stats"));
73 static cl::opt<bool> DisableSSC("disable-ssc", cl::Hidden,
74 cl::desc("Disable Stack Slot Coloring"));
75 static cl::opt<bool> DisableMachineDCE("disable-machine-dce", cl::Hidden,
76 cl::desc("Disable Machine Dead Code Elimination"));
77 static cl::opt<bool> DisableEarlyIfConversion("disable-early-ifcvt", cl::Hidden,
78 cl::desc("Disable Early If-conversion"));
79 static cl::opt<bool> DisableMachineLICM("disable-machine-licm", cl::Hidden,
80 cl::desc("Disable Machine LICM"));
81 static cl::opt<bool> DisableMachineCSE("disable-machine-cse", cl::Hidden,
82 cl::desc("Disable Machine Common Subexpression Elimination"));
83 static cl::opt<cl::boolOrDefault> OptimizeRegAlloc(
84 "optimize-regalloc", cl::Hidden,
85 cl::desc("Enable optimized register allocation compilation path."));
86 static cl::opt<bool> DisablePostRAMachineLICM("disable-postra-machine-licm",
87 cl::Hidden,
88 cl::desc("Disable Machine LICM"));
89 static cl::opt<bool> DisableMachineSink("disable-machine-sink", cl::Hidden,
90 cl::desc("Disable Machine Sinking"));
91 static cl::opt<bool> DisablePostRAMachineSink("disable-postra-machine-sink",
92 cl::Hidden,
93 cl::desc("Disable PostRA Machine Sinking"));
94 static cl::opt<bool> DisableLSR("disable-lsr", cl::Hidden,
95 cl::desc("Disable Loop Strength Reduction Pass"));
96 static cl::opt<bool> DisableConstantHoisting("disable-constant-hoisting",
97 cl::Hidden, cl::desc("Disable ConstantHoisting"));
98 static cl::opt<bool> DisableCGP("disable-cgp", cl::Hidden,
99 cl::desc("Disable Codegen Prepare"));
100 static cl::opt<bool> DisableCopyProp("disable-copyprop", cl::Hidden,
101 cl::desc("Disable Copy Propagation pass"));
102 static cl::opt<bool> DisablePartialLibcallInlining("disable-partial-libcall-inlining",
103 cl::Hidden, cl::desc("Disable Partial Libcall Inlining"));
104 static cl::opt<bool> DisableAtExitBasedGlobalDtorLowering(
105 "disable-atexit-based-global-dtor-lowering", cl::Hidden,
106 cl::desc("For MachO, disable atexit()-based global destructor lowering"));
107 static cl::opt<bool> EnableImplicitNullChecks(
109 cl::desc("Fold null checks into faulting memory operations"),
110 cl::init(false), cl::Hidden);
111 static cl::opt<bool> DisableMergeICmps("disable-mergeicmps",
112 cl::desc("Disable MergeICmps Pass"),
113 cl::init(false), cl::Hidden);
114 static cl::opt<bool> PrintLSR("print-lsr-output", cl::Hidden,
115 cl::desc("Print LLVM IR produced by the loop-reduce pass"));
116 static cl::opt<bool>
117 PrintISelInput("print-isel-input", cl::Hidden,
118 cl::desc("Print LLVM IR input to isel pass"));
119 static cl::opt<cl::boolOrDefault>
120 VerifyMachineCode("verify-machineinstrs", cl::Hidden,
121 cl::desc("Verify generated machine code"));
122 static cl::opt<cl::boolOrDefault>
123 DebugifyAndStripAll("debugify-and-strip-all-safe", cl::Hidden,
124 cl::desc("Debugify MIR before and Strip debug after "
127 static cl::opt<cl::boolOrDefault> DebugifyCheckAndStripAll(
128 "debugify-check-and-strip-all-safe", cl::Hidden,
129 cl::desc(
134 static cl::opt<RunOutliner> EnableMachineOutliner(
135 "enable-machine-outliner", cl::desc("Enable the machine outliner"),
136 cl::Hidden, cl::ValueOptional, cl::init(RunOutliner::TargetDefault),
137 cl::values(clEnumValN(RunOutliner::AlwaysOutline, "always",
146 static cl::opt<bool> DisableCFIFixup("disable-cfi-fixup", cl::Hidden,
147 cl::desc("Disable the CFI fixup pass"));
151 static cl::opt<cl::boolOrDefault>
152 EnableFastISelOption("fast-isel", cl::Hidden,
153 cl::desc("Enable the \"fast\" instruction selector"));
155 static cl::opt<cl::boolOrDefault> EnableGlobalISelOption(
156 "global-isel", cl::Hidden,
157 cl::desc("Enable the \"global\" instruction selector"));
161 static cl::opt<bool>
162 PrintAfterISel("print-after-isel", cl::init(false), cl::Hidden,
163 cl::desc("Print machine instrs after ISel"));
165 static cl::opt<GlobalISelAbortMode> EnableGlobalISelAbort(
166 "global-isel-abort", cl::Hidden,
167 cl::desc("Enable abort calls when \"global\" instruction selection "
169 cl::values(
177 static cl::opt<bool> DisableRAFSProfileLoader(
178 "disable-ra-fsprofile-loader", cl::init(false), cl::Hidden,
179 cl::desc("Disable MIRProfileLoader before RegAlloc"));
182 static cl::opt<bool> DisableLayoutFSProfileLoader(
183 "disable-layout-fsprofile-loader", cl::init(false), cl::Hidden,
184 cl::desc("Disable MIRProfileLoader before BlockPlacement"));
186 static cl::opt<std::string>
187 FSProfileFile("fs-profile-file", cl::init(""), cl::value_desc("filename"),
188 cl::desc("Flow Sensitive profile file name."), cl::Hidden);
190 static cl::opt<std::string> FSRemappingFile(
191 "fs-remapping-file", cl::init(""), cl::value_desc("filename"),
192 cl::desc("Flow Sensitive profile remapping file name."), cl::Hidden);
199 static cl::opt<bool> MISchedPostRA(
200 "misched-postra", cl::Hidden,
201 cl::desc(
205 static cl::opt<bool> EarlyLiveIntervals("early-live-intervals", cl::Hidden,
206 cl::desc("Run live interval analysis earlier in the pipeline"));
216 static cl::opt<std::string>
218 cl::desc("Resume compilation after a specific pass"),
219 cl::value_desc("pass-name"), cl::init(""), cl::Hidden);
221 static cl::opt<std::string>
223 cl::desc("Resume compilation before a specific pass"),
224 cl::value_desc("pass-name"), cl::init(""), cl::Hidden);
226 static cl::opt<std::string>
228 cl::desc("Stop compilation after a specific pass"),
229 cl::value_desc("pass-name"), cl::init(""), cl::Hidden);
231 static cl::opt<std::string>
233 cl::desc("Stop compilation before a specific pass"),
234 cl::value_desc("pass-name"), cl::init(""), cl::Hidden);
237 static cl::opt<bool> EnableMachineFunctionSplitter(
238 "enable-split-machine-functions", cl::Hidden,
239 cl::desc("Split out cold blocks from machine functions based on profile "
243 static cl::opt<bool> DisableExpandReductions(
244 "disable-expand-reductions", cl::init(false), cl::Hidden,
245 cl::desc("Disable the expand reduction intrinsics pass from running"));
248 static cl::opt<bool> DisableSelectOptimize(
249 "disable-select-optimize", cl::init(true), cl::Hidden,
250 cl::desc("Disable the select-optimization pass from running"));
253 static cl::opt<bool>
254 GCEmptyBlocks("gc-empty-basic-blocks", cl::init(false), cl::Hidden,
255 cl::desc("Enable garbage-collecting empty basic blocks"));
380 extern cl::opt<bool> EnableFSDiscriminator;
642 static cl::opt<std::string> *PassNames[] = {&StartAfterOpt, &StartBeforeOpt, in getLimitedCodeGenPipelineReason()
766 bool Verify = VerifyMachineCode == cl::BOU_TRUE; in addVerifyPass()
768 if (VerifyMachineCode == cl::BOU_UNSET) in addVerifyPass()
789 (DebugifyAndStripAll == cl::BOU_TRUE || in addMachinePrePasses()
790 DebugifyCheckAndStripAll == cl::BOU_TRUE)) in addMachinePrePasses()
796 if (DebugifyCheckAndStripAll == cl::BOU_TRUE) { in addMachinePostPasses()
799 } else if (DebugifyAndStripAll == cl::BOU_TRUE) in addMachinePostPasses()
968 TM->setO0WantsFastISel(EnableFastISelOption != cl::BOU_FALSE); in addCoreISelPasses()
974 if (EnableFastISelOption == cl::BOU_TRUE) in addCoreISelPasses()
976 else if (EnableGlobalISelOption == cl::BOU_TRUE || in addCoreISelPasses()
978 EnableGlobalISelOption != cl::BOU_FALSE)) in addCoreISelPasses()
1071 static cl::opt<RegisterRegAlloc::FunctionPassCtor, false,
1073 RegAlloc("regalloc", cl::Hidden, cl::init(&useDefaultRegisterAllocator),
1074 cl::desc("Register allocator to use"));
1312 case cl::BOU_UNSET: in getOptimizeRegAlloc()
1314 case cl::BOU_TRUE: return true; in getOptimizeRegAlloc()
1315 case cl::BOU_FALSE: return false; in getOptimizeRegAlloc()