mirror of
https://github.com/llvm/llvm-project.git
synced 2026-10-29 14:08:35 +08:00
Port the file-local options of llvm/lib/Analysis to a per-LLVMContext AnalysisOptions struct. These remain cl::opt: exported options, options read by public APIs without IR context (getInlineParams, TTI getters, InlineConstants::getInstrCost, generateParamAccessSummary), and options read per query without an object to bind them (ValueTracking, ConstantFolding, CFG reachability, ObjectSizeOffsetVisitor, TBAA, ScopedNoAliasAA). * Option-reading classes hold `const AnalysisOptions &`; the inline constructors of BasicAAResult, MemoryDependenceResults, DependenceInfo, MemoryDepChecker, RuntimePointerChecking, InterleavedAccessInfo and ProfileSummaryInfo move out of line, and InterleavedAccessInfo::isStrided becomes non-static. * Rename -disable-gep-const-evaluation and -da-disable-delinearization-checks to positive spellings; the old ones remain aliases. * The inline cost annotation printer no longer sets -print-instruction-comments for the rest of the process. LLM-aided