Skip to content

Commit 90c201b

Browse files
committed
Merge remote-tracking branch '1/main' into main
* 1/main: (3422 commits) [RISCV][RVV] Fix vslide1up/down intrinsics overflow bug for SEW=64 on RV32 [AMDGPU] Add llvm.amdgcn.s.setprio intrinsic [NFC][flang][OpenMP] Fixes formatting issues with D110714 [MLIR][Python] Add SCFIfOp Python binding [RISCV] Add DAGCombine to fold (bitreverse (bswap X)) to brev8 with Zbkb. [RISCV] Add Zbp command lines to bswap-bitreverse.ll. NFC [flang] Improve runtime crash messages [ELF] Simplify addCopyRelSymbol with invokeELFT. NFC [clang-format][docs] Fix incorrect 'clang-format 12' option markers [clang-format] Handle builtins in constraint expression [DebugInfo] Include DW_TAG_skeleton_unit when looking for parent UnitDie [mlirTranslateMain] Add a customization callback. Replace forward declaration by actual declaration of MemoryBuffer in Object/Binary.h Add missing include under EXPENSIVE_CHECKS [clang-format] Minimize the damage caused by AlignArrayOfStructures when working on non square arrays [gn build] Port 999fa9f68788 [BOLT][NFC] Use getShortOpcodeArith in X86MCPlusBuilder [X86][NFC] Move table from getRelaxedOpcodeArith into its own class Cleanup includes: DebugInfo & CodeGen [clang][deps] Update helper script documentation [clang][deps] Simplify PREFIX definitions in tests [MLIR] Fix block label parsing bug [libc++] Remove unneeded tests. [libc++][NFC] Use TEST_HAS_NO_EXCEPTIONS. [libc++] Add a missing test case. [clang][deps] Attempt to fix Windows test failure [clang][deps] Remove '-fmodules-cache-path=' arguments [clang][deps] Generate '-fmodule-file=' only for direct dependencies [clang][deps] Disable implicit module maps [Attributor] Remove capture tracker usage and follow uses explicitly [CaptureTracking][NFCI] Expose capture tracking logic [lsan] ppc64: dynamically pick address range for allocator [MC] Fix letter case of some MCSection member functions [Attributor] Avoid replacing return operands twice [MC] Destroy WasmAllocator in MCContext::reset [RISCV] Move GORCIW/GREVIW formation to isel patterns. [RISCV] Add test cases that show that we're too aggressive about using greviw/gorciw. NFC [gn build] Port ee0f8c401030 [libc++][ranges] Implement ranges::find{, _if, _if_not} [Attributor][FIX] Make sure to not ignore non-load users of stores [mlir] Update function referenced in comment (NFC) [builtins] Do not force thumb mode directive in arm/sync-ops.h [gn build] Port b1b4b6f36695 [Clang][VE] Add vector load intrinsics Rename EHFrameSplitter to DWARFRecordSectionSplitter [CMake] Rename TARGET_TRIPLE to LLVM_TARGET_TRIPLE [nfc][openmp] Swap arguments to remove noise from upcoming diff [InlineCost] Add cl::opt for target attributes compatibility check. NFC [NFC] Improve comment and rename test file [Attributor] Allow not to default initialize AAs for live internal functions [Attributor] Cleanup manifest and liveness for CGSCC passes [MC][test] Improve compression.s [clang-format][NFC] Group QualifierAlignment with other C++ passes [clang-tidy] Refactor: Prefer single quoted strings over double quoted strings [NFC] [MC] Remove unneeded zlib opt-out for .debug_frame [lldb] Removed scoped timer from ReadMemoryFromFileCache [lldb] Move FindTypes scoped timer to SymbolFileDWARFDebugMap [lldb] Include lldb/Host/HostInfo.h in ProcessWindows.cpp [AMDGPU] Support v_mov_b64 in dpp combine [AMDGPU] gfx940 MUBUF format changes [lldb] Fix typo in ProcessWindows.h [mlir][spirv] Make EntryPointABIAttr.local_size optional [CommandLine] Remove `may only occur zero or one times!` error [lldb] Add a getter for the process' system architecture [lld-macho] Don't allocate memory in parallelForEach [mlir][memref] memref.reinterpret_cast folding [LoopUnswitch] Use SmallPtrSet instead of std::set. NFCI. [VPlan] Implement VPCanonicalIVPHIRecipe::onlyFirstLaneUsed. [RISCV] Optimize vfmv.s.f intrinsic with scalar 0.0 to vmv.s.x with x0. [flang][NFC] rename IsKindParameterizedDerivedType and fix comment typos Return an error when dsymutil might produce an invalid mach-o file. [flang] Add tests for allocatable global [flang] Lower of elemental calls in array expression [NFC][Clang][OpaquePtr] Remove calls to Address::deprecated in a couple more files [lldb] Don't overwrite the host arch with the process arch [ASan] Export optimized callbacks. [X86] Add PR38960 comineqss test case [Bitcode] Don't confuse type attributes on declaration and call [AsmParser] Check forward reference type with opaque pointers [flang] Fix DYLIB builds [Attributor][FIX] Avoid double free (and useless state copy) [mlir][sparse][taco] Add a few unary operations. [clang][SVE] Add aarch64-registered-target to sve vector op tests [Attributor][FIX] Remove memory leak [Bitcode] Clarify that extractvalue/insertvalue constexprs are not supported [clang][SVE] Add support for arithmetic operators on SVE types [Bitcode] Enumerate constexpr GEP source element type in initializer [analyzer] Fix include typo introduced by e61a1a9 [Bitcode] Encode alloca address space Conditional include of missing headers under Z3 Conditional include of Twine.h under Z3 [BFI] Use SmallPtrSets. NFCI. [libc++] Remove workaround for missing declarations on Windows store apps [libc++] Remove workaround for C11 features on compilers that don't support using_if_exists [libc++] Remove raw call to debug handler from __char_traits_length_checked [Verifier] Check type of swifterror alloca [VPlan] Helper to check if a recipe uses scalar values of op. [ConstantFold] Fix scalable shufflevector fold with all-undef mask [FuzzMutate] Support scalable shufflevector [IRMutator] Handle module with only declarations [ConstFold] Don't fold calls with mismatching function type [libc] Implement expf function that is correctly rounded for all rounding modes. [clang-format] Refactor condition in AnnotatingParser::modifyContext(). NFC. [FunctionAttrs] Rename addReadAttrs -> addMemoryAttrs. [flang] Remove deprecated fields from FIROps.td [AArch64][SVE][Clang] Fix crash for incorrect svptrue and svcnt parameters [Bitcode] Check for type mismatch when assigning value Cleanup include: TableGen [Bitcode] Delete phi node on error [Bitcode] Improve some error messages [AArch64] Improve costs for some conversions to fp16. [ADT] Make BitmaskEnum operations constant expressions [AArch64][SVE] Change the asserts in LowerToPredicatedOp to check for legal types [InstSimplify] Handle vector GEP when simplifying zero indices [Bitcode] Delete instruction on error [MLIR][python binding] Add OpaqueAttribute to python binding. [clang-repl] Add an accessor to our underlying execution engine [Bitcode] Report error for missing element type for attr upgrade Fixed a roll-over on size_t in getNewUninitMemBuffer() [docs] Update opaque pointers transition state (NFC) [llvm-c] Document that LLVMGetElementType on pointers is deprecated (NFC) [flang] Do not return true for pointer sub-object in IsPointerObject [AMDGPUPromoteAlloca] Make compatible with opaque pointers [CommandLine] Keep option default value unset if no cl::init() is used [flang] Fix processing ModuleLikeUnit evaluationList [RISCV] Add tablegen helper classes to create PatFrag to check for one use. NFC [flang] Support for dump OpenMP/OpenACC declarative directives PFT in module [RISCV] Fix typo in comment. NFC [RISCV] Add alias for HFENCE.VVMA [Attributor][NFCI] Make AAPointerInfo deterministic [Attributor][NFCI] Remove non-deterministic behavior and debug output [RISCV] Use ZERO_EXTEND instead of ANY_EXTEND when promoting i32 RISCVISD::SHFL. NFC [LoongArch] Use getLoc() directly to construct error message [ELF] Add -z pack-relative-relocs [llvm-mt] Add support /notify_update [builtins] Use mcr for dmb instruction on armv6 Split up large test files(over 10k lines) under clang/test/CodeGen/RISCV including: [mlir] Support verification order (3/3) [lld-macho][nfc] Fix formatting in ld64-vs-lld.rst [x86] add tests for and+setcc; NFC [ARM] Fix 8-bit immediate overflow in the instruction of segmented stack prologue. [AArch64] Use correct calling convention for each vararg [clang-format] Fix namespace format when the name is followed by a macro [clang-tools-extra] Don't consider python below LLVM_MINIMUM_PYTHON_VERSION. NFC [lldb] Remove unused include in ScriptedProcessInterface.h [Sema][Windows] Don't special-case void* in __unaligned conversions. [mlir][Vector] Modernize default lowering of vector transpose [FunctionAttrs] Add tests for argmemonly inference. [clang-format][NFC] Group all C++ passes under isCpp() [clang-tools-extra] Remove unused lit features/substitutions. NFCI Fix reference to execute_external leftover in 69924ccf7a328f Remove redundant lit config already handled in llvm_config. NFCI [lldb] Call ThreadPlan::DiscardPlan from Thread::DiscardPlan llvm-ifs doc: Replace a utf-8 char by a more classic one [ASan] Added back @PLT to __asan_report_* calls to avoid compile errors. lldb/ObjectFile,Disassembler: read some state from the executable [libc][Obvious] Destroy the block store var in block store test. [clang-format] Handle "// clang-format off" for RemoveBracesLLVM [libc] Add a resizable container with constexpr constructor and destructor. Diagnose when `#pragma clang fp eval_method` doesn't have a supported value. Currently the compiler is crashing. [ASan] Moved optimized callbacks out of asan_static to avoid DSO size increase. [FunctionAttrs] Add initial test for pass statistics. [X86] Add (u)comiss/sd tests showing eflags handling (PR38960) [libc++] Add tests for the content of <cstddef> [libc++] Remove operator-> from iterator archetypes that don't need it [lldb] Always listen for progress events in the default event handler [LLDB][NativePDB] Add support for S_DEFRANGE_REGISTER and S_DEFRANGE_SUBFIELD_REGISTER [mlir][NVVM] Add ldmatrix op to NVVM dialect [AMDGPU] Updated some tests to run on gfx940. NFC. [cmake] Remove unused OUTPUT_MAPPING param to configure_lit_site_cfg(). NFC [lld-macho] Align cstrings less conservatively [BOLT] Divide RegularPageSize for X86 and AArch64 cases [lldb] Remove extra space in step logging message [mlir][sparse] Improving error messages for openSparseTensorCOO [RISCV] Remove performANY_EXTENDCombine. [lldb/gdb-remote] Remove ancient debugserver workaround [flang] Lower pointer component in derived type [lldb/crashlog] Reformat module loading logs (NFC) [lldb/Plugin] Test that a scripted process blueprint can be loaded for the dSYM [lldb/crashlog] Make interactive mode display more user-friendly [JMCInstrument] infer proper path style based on debug info [flang] Lower general forall statement [CMake] Include runtimes test suites in check-all [AMDGPU] Use subreg encoding instead of reassign Fix the dates for the C and C++ language working group [RISCV] Add isel patterns for masked RISCVISD::FMA_VL with RISCVISD::FNEG_VL. [InstCombine] replace negated operand in fcmp with 0.0 [InstCombine] add tests for fcmp with fneg common operand; NFC [VP] Strided loads/stores [flang] Lower where statement [mlir][linalg] Add a few unary operations. [flang] Added basic connect to lower OpenMP constructs [flang] Lower basic derived types [MLIR][Presburger] Remove `spaceKind` from PresburgerSpace [BOLT] LongJmp: Use per-function alignment values [mlir] ExecutionEngine: default enableObjectCache to false Cleanup includes: WindowsDriver & WindowsManifest tsan: fix another false positive related to open/close [MLIR][OpenMP][NFC] Move the modifier testcases to correct directory [MLIR] [CMake/Python] Fix ignored Python3_EXECUTABLE Revert "[InstCombine] fold fcmp with lossy casted constant" [AArch64] Fix type in comment. NFC [GlobalOpt] Handle undef global_ctors gracefully [BitcodeReader] Support GEP without indices [AArch64] TBL uses zero for out of range elements. [libc] Initial support for darwin-aarch64. [libc++] Bump minimum compiler requirements [AArch64] Extra tests for tbl with zero elements. NFC [libc++] Add test coverage for std::shared_ptr<const T> Cleanup includes: MCDisassembler [FuzzMutate] Support opaque pointers [InstCombine] Add vector support to icmp(add(X,C1),add(Y,C2)) -> icmp(add(X,C1-C2),Y) fold [X86] Add GFNI shift/rotate/funnel-shift vXi8 by constant splat tests Fix M68k missing header errors. [PhaseOrdering][x86] add TODO comments to test files; NFC Revert "Cleanup codegen includes" [OpenMP][mlir] Lowering for omp.atomic.update [AArch64] Move fp16 cast tests. [gn build] (manually) port af98b0af6705 [AMDGPU] Enable divergence predicates for negative inline constant subtraction [clang][dataflow] Add analysis that detects unsafe accesses to optionals [AMDGPU] Fix regenerated test checks (NFC) [AMDGPU] Regenerate test checks (NFC) [AMDGPU] Regenerate test checks (NFC) [MLIR][Presburger] fix vector update in coalesce [MLIR][Presburger] Use IdKind for removeIdRange in PresburgerSpace [LoongArch] Add basic support to Disassembler Add missing include in llvm/CodeGen/CodeGenPassBuilder.h [InstCombine] Add vector tests for icmp_eq(add(X,C1),add(Y,C2)) -> icmp_eq(add(X,C1-C2),Y) Cleanup codegen includes Cleanup includes: LLVMTarget [Coroutines] Support opaque pointers in solveTypeName() [RISCV] Add fixed-length vector instrinsics for segment load [RISCV] Remove RISCVISD::VLE_VL/VSE_VL. Use intrinsics instead. [RISCV] Add tests showing the optimization pipeline for O0 and O3. [BOLT][NFC] Fix print-cfg data race [BOLT][NFC] Check errors from Obj.dynamicEntries [libc] Use the constexpr constructor to initialize exit handlers mutex. [MachineSink] Pre-commit test for D121277. NFC. [clang][Driver] Get darwin -Xarch_ working for subtypes, again. [HIP] Fix -fno-gpu-sanitize [HIP] Fix HIP include path [gn build] Port c31014322c0b [Driver][OpenBSD] Disable unwind tables on Arm TLS loads opimization (hoist) [Support] Try 2: Reset option to its default if its Default field is undefined [msan] Fix unittest for 9397bdc6 [RISCV] Support 'generic' as a valid CPU name. [NFC] [HWASan] document why we tag Size but untag AlignedSize. [mlir][sparse] add end2end test for linalg.dot sparsification [OpenMP][CUDA] Fix the check of `setContext` [mlir][sparse] added linalg.dot to sparse kernel collection Revert "[MSAN] add interceptor for timer_create, timer_settime, timer_gettime" Revert "[MSAN] adjust Posix/timer.cpp" [Analysis] remove bogus smin/smax pattern detection [InstCombine] add tests to show miscompiled smin/smax; NFC [SDAG] Use MMO flags in MemSDNode folding Revert "[libc++] Remove extension to support allocator<const T>" [debug-info] Debug salvage llvm.dbg.addr in original function that point into the coroutine frame when splitting coros. [AArch64][SLP] Add a test with mutual reductions. NFC [CompilerRT] Fix build of compiler-rt with musl [RISCV] Switch undef -> poison in fixed-vector RVV tests [OpenMP][CUDA] Avoid calling `cuCtxSetCurrent` redundantly [NFC][llvm-nm] create a new helper function exportSymbolNamesFromFiles for --export-symbols Summary: Revert "Disable -Wmissing-prototypes for internal linkage functions that aren't explicitly marked "static"" [MSAN] adjust Posix/timer.cpp [LoopInterchange] Detect output dependency of a store instruction with itself [llvm-nm][NFC] remove global variable " std::vector<NMSymbol> SymbolList" [flang][NFC] Remove old RTBuilder.h [OpenMP][CUDA] Fix an issue that multiple `CUmodule` are could be overwritten [OpenMP][doc]Minor doc fixes [llvm-nm]add helper function to print out the object file name, archive name, architecture name [MSAN] add interceptor for timer_create, timer_settime, timer_gettime [DebugInfo][SROA] Correct debug info for global variables in case of SROA [flang] Lower more array character cases lldb/ObjectFile: reflow a comment (NFC) Revert "[PassManager] Add pretty stack entries before P->run() call." Revert "[MSAN] add interceptor for timer_create, timer_settime, timer_gettime" [IROutliner] Handling outlined code with no exit paths AArch64: correct epilogue/prologue emission for swift async [flang] Update ArrayValueCopy to support array_amend and array_access [sanitizer][mips] Fix the condition to include sanitizer_atomic_clang_mips.h [SDAG] match rotate pattern with extra 'or' operation AMDGPU: Set up User SGPRs for queue_ptr only when necessary [AMDGPU] Merge flat with global in the SILoadStoreOptimizer [AMDGPU] Remove HasAtomicFaddInstsGFX90X and HasAtomicFaddInstsGFX940 Fix linking error, undefined class static constants. [libc++] Enable format_to and vformat_to tests even outside of Debug mode [flang] Add OpenACC flag to bbc [AMDGPU] Add scheduler pass to rematerialize trivial defs [flang] Add OpenMP flag to bbc [InstCombine] Preserve FMF in foldLogicOfFCmps. Revert "[lldb] Remove the global platform list" [AMDGPU] Fix some confusing check prefixes. NFC. [flang] Fix extent computation in finalization [libc++][NFC] Cleanups in <charconv>. [gn build] (manually) port ffb9429b6f3c29ab [lldb] Fix step-avoid-regexp logging [lldb] Add SBType::IsAggregateType [LV] Do not consider instrs dead if used by phi that's not in plan. [lldb] Fix TestDebuggerAPI on windows (broken by D120810) [flang][driver] Add support for -S and implement -c/-emit-obj Revert "[clang][dataflow] Move dataflow testing support out of unittests" [clang][dataflow] Move dataflow testing support out of unittests [MachinePipeliner] Fix isPseduo typo. Add the C and C++ Language Working Group meeting info [lldb] Remove the global platform list [libc++] Don't manually override NDEBUG in the dylib build [mlir][OpenMP] Generating enums in accordance with the guidelines [X86] Add shift identity select tests [JITLink][RISCV] Refactor range checking and alignment checking [PassManager] Another adjustment to account for different printing. [clang][sema] Enable first-class bool support for C2x [llvm-dwarfdump] Avoid possible div-by-zero in debug output [Coroutines] Avoid pointer element access for resume function type [lldb] Don't print *trailing* nuls in char arrays [lldb/driver] Fix SIGTSTP handling [lldb] Warn when we fail to find dwo/dwp files [PassManager] Adjust check lines to account for different printing. [PassManager] Add pretty stack entries before P->run() call. Update my office hours [IR] MatrixBuilder - CreateIndexAssumption - fix unused variable warning on NDEBUG builds [BOLT] Move some of the tests to common directory [lldb] Fix -Wformat warning after 5a27b99825a5ba3a7a2eec3d35aea381a3ba9a31 [clang] ScalarExprEmitter::VisitCastExpr - use castAs<> instead of getAs<> to avoid dereference of nullptr [clang] Environment::createValueUnlessSelfReferential - use castAs<> instead of getAs<> to avoid dereference of nullptr [X86] Add common check prefixes to vector-bitreverse.ll [clang] Sema::ActOnModuleImport - remove superfluous nullptr test Fix for buildbot failure: https://lab.llvm.org/buildbot#builders/110/builds/11051 after https://reviews.llvm.org/D121005 [NFC] [C++20] [Modules] Add test to show private module fragment is not allowed in partition unit NFC. Clean up memref utils library [flang] Remove 'using namespace mlir;` from header files [CoroFrame] Avoid pointer element type access for swifterror [gn build] Port 2dc4a80ec026 [objcopy][NFC] Move NameOrPattern::create() into CommonConfig.h Revert "[clang][dataflow] Add analysis that detects unsafe accesses to optionals" [IR][IPSCCP] Treat different function type as address taken (PR54258) [clang][dataflow] Add analysis that detects unsafe accesses to optionals [libcxx][CI] Use temporary clang-13 bots for Arm/AArch64 [flang] Use unix logical representation for fir.logical [SCEV] Verify all IR -> SCEV mappings [Attributor] Use byval type instead of pointer element type [LoongArch] Add basic support to AsmParser [libcxx] [test] XFAIL the get/put long_double_ru_RU tests on Glibc < 2.27 [libcxx] [test] Fix the classic_table test on Windows [lldb] Add --exists flag to `settings set` [AMDGPU] Move call clobbered return address registers s[30:31] to callee saved range [clangd] Make dexp command line options sticky [clangd] Make dexp command line options sticky [OpenMP][FIX] Ensure the modules vector is filled as others are [lldb] A few small changes to HandleProgressEvent [lldb] Undef GetMessage when including Windows.h [mlir] Make ShapedTypeComponents contructible from ShapeAdaptor [libc++] Fix a use-after-move introduced in D118003. [lldb] Always move the cursor back after printing progress [lldb] Add a setting to change the progress color [lldb] Show progress events in the command line driver [lldb] Remove "(i.e. ANSI)" from several property descriptions. Revert "[clang][ABI] New C++20 module mangling scheme" [mlir] Extend AffineForEmptyLoopFolder [mlir][sparse] index support in sparse compiler codegen [flang] Distinguish usage and portability warning messages [mlir][NFC] Add various includes currently transitively found in BuiltinOps.h [MSAN] add interceptor for timer_create, timer_settime, timer_gettime [NFC] [MTE] [HWASan] fixed orphaned comments. [clang] Fix CodeGenAction for LLVM IR MemBuffers [NFC] [MTE] [HWASan] simply code. docs: Update instructions for requesting backports to the release branches [mlir:toy][NFC] Add comment blocks for toy operations. Revert "Attempt to fix linking issue on the bot" [NFC] [HWASan] [MTE] Use function_ref over template. Attempt to fix linking issue on the bot [cmake] Use CMAKE_TRY_COMPILE_PLATFORM_VARIABLES SafeStack: Re-enable SafeStack coloring optimization [BOLT] Handle ifuncs trampolines for aarch64 [test] Modify some tests to remove implicit -basic-aa in legacy PM RUN lines [SampleProfileInference] Work around odr-use of const non-inline static data member to fix -O0 builds after D120508 [DFSan] Fix several bugs in dfsan custom callbacks test. [gn build] Port c2cd15a66531 [libc++][ranges] Implement ranges::mismatch [test] Use new PM for -aa-eval tests [ConstraintElimination] Remove over-eager assertion. [OpenMP][Docs] Make copy pasting remarks easier [test][LowerMatrixIntrinsics] Use new PM RUN lines [libc++] Remove stray #undef [flang] Lower associate construct [BOLT][NFC] Handle "dynamic section sizes should match" [mlir][spirv] Define spv.VectorTimesScalar op [mlir][spirv] Fix spv.GLSL.{S|U}Clamp type checking [mlir][spirv] Handle another form of folding comparsion into clamp [libc] Add testing macros for errno and floating point exceptions. Revert "Fix link of libmlir.so by adding ExecutionEngine as dependency to GPUTransforms" introducing some profi flags Fix link of libmlir.so by adding ExecutionEngine as dependency to GPUTransforms [mlir][SCF] Replace use of FuncOp with FunctionOpInterface [mlir][MemRef] Change memref-expand to be a generic operation pass [mlir] Change ComplexToLLVM to be a generic pass [mlir] Update FuncOp conversion passes to Pass/InterfacePass<FunctionOpInterface> [mlir][NFC] Update the Builtin dialect to use "Both" accessors [mlir][Vector] Drop use of FuncOp in transferOpflowOpt [mlir][test] Generalize a bunch of FuncOp based passes to run on any operation/interfaces [libc++] Remove extension to support allocator<const T> [libc][NFC] remove completed TODOs [libc][NFC] split standalone_cpp into single headers [libc++][NFC] Rename ostreambuf_iterator test [flang] Add nonfatal message classes [SampleFDO] Allow multiple of --enable-fs-discrimintor option [NFC] [ELF] Inline InputSection::getParent. NFC [ELF] Don't use multiple inheritance for OutputSection. NFC [flang][driver] Add support for `-debug-dump-pft` [flang] Lower computed and assigned goto [mlir][Linalg] Modify `InferStaticShapeOfOperands` to work on Linalg Ops. [mlir][spirv] NFC: Move GLSL canonicalization pass to Transforms/ [libc++] "Bottom-up heapsort" improvement to sort_heap. [libc++] Complexity regression tests for make_heap and sort_heap. [BOLT] CMOVConversion pass [JITLink] Demote symbol scope to local during external-to-absolute conversion. [mlir] Add canonicalizations for op -> tensor.cast folding. [mlir] Check nullity of MixedContainerType and TypedArrayAttrBase [X86] convertIntLogicToFPLogic - enable fp-logic on pre-AVX targets for supported fp predicates (PR34563) [X86] Add cheapX86FSETCC_SSE helper. NFC. [LegalizeTypes][VP] Add widening and splitting support for VP_FMA. [LegalizeTypes][VP] Add splitting and widening support for VP_FNEG. [mlir][Linalg] Add a polymorphic linalg.copy operation [RISCV] Add combination crypto extensions in ISAInfo [flang] Lower sum intrinsic [NFC][Clang][OpaquePtr] Remove calls to Address::deprecated in CGBuiltin.cpp [MSSA] Add clarifying comment for isOptimized on MemoryUse [nfc] [InstCombine] fold fcmp with lossy casted constant [mlir][OpDSL] Support pointwise ops with rank zero inputs. [MSSA] Add comments describing optimized uses for MemoryDefs [nfc] [mlir][OpDSL] Remove unused SoftPlus2DOp operation. [flang][nfc] Update the CMake dependencies for `flangFrontend` [BOLT][NFC] Check section contents before registering it [mlir][OpDSL] Simplify index and constant tests. InstCombine: Can't fold a phi arg load into the phi if the load is from a swifterror address [CSSPGO][SCCIterator] Fix a non-determinism in scc_member_iterator [llvm-profgen] Turn on CS nested profile generation by default for CSSPGO. [PowerPC] Fix the none tail call in scalar MASS conversion This patch is proposing a fix for patch https://reviews.llvm.org/D101759 on none tail call math function conversion to MASS call. [SelectionDAG][NFC] Address a few clang-tidy warnings [mlir][OpDSL] Add support for adding canonicalization patterns. [mlir][linalg] Add returning rewrite method to fusion pattern (NFC). [mlir][linalg] Add a FillOpInterface. [libc++] Remove workarounds for re-defining _LIBCPP_ASSERT in the test suite Properly diagnose constant evaluation issues at TU scope [clang][driver] Fix float128 diagnostics with glibc >= 2.32 [InstCombine] add tests for fcmp (fpext X), C; NFC [clang][ABI] New C++20 module mangling scheme [lld-macho] Deduplicate the `__objc_classrefs` section contents [lld-macho] Deduplicate CFStrings during ICF [X86] convertIntLogicToFPLogic - pull out condcodes. NFCI. [libc++] Enable more clang-tidy checks and list potential candidates [Sparc] Add tail call support [clangd] NFC: Cleanup IncludeCleaner API [clang-format] Correctly detect `!` as TT_NonNullAssertion after `default`. [clang-format] Handle C# 9 `init` accessor specifier. Update more `parseSourceString()` call sites. [MLIR][Presburger] Silence warnings in GCC (NFC) [X86] Add add / mul identity select tests for D119654 [clang] Fix reference to file that was moved. [AArch64] Add test for D120481 with multiple uses. [AST] Fix typo in assert messages [mlir][bufferize][NFC] Better error messages if analysis fails [X86] Update avx512vbmi2 intrinsic tests to avoid adds tsan: fix false positive during fd close [LLDB] Skip TestIOHandlerProcessSTDIO.py for Arm/AArch64 Linux [mlir][Vector] Use create_mask in transfer mask materializations [Sema] Mark the referenced destructor during transformation of a `CXXBindTemporaryExpr` [MLIR][Presburger] Move PresburgerLocalSpace::isEqual from protected to public [X86] Update avx512vbmi2 intrinsic tests to avoid adds [mlir][NFC] Properly include PassDetail.h for FoldSubViewOpsPass [mlir][NFC] Remove dead forward declaration of FuncOp [mlir][Bazel] Adjust regarding StandardToLLVM -> FuncToLLVM rename. Revert "[CMake][compiler-rt] Make CRT separately buildable" [NewPM][Inliner] Make inlined calls to functions in same SCC as callee exponentially expensive [MLIR][OpDSL] Silence warning (NFC) [AMDGPU] Set noclobber metadata on loads instead of cast to constant [CMake][compiler-rt] Make CRT separately buildable [CSKY] Enable TargetAsmStreamer/ELFStreamer and support asm directive of csky_attribute Reland "[clang][debug] port clang-cl /JMC flag to ELF" [flang] Remove unused variable in Allocatable.cpp [OpenMP][FIX] Ensure flag to disable de-globalization works properly [OpenMP][CUDA] Use one event pool per device [OpenMP] Allow to explicitly deinitialize device resources [OpenMP][NFCI] Use RAII lock guards in libomptarget where possible NFC. Improve isInnermostAffineForOp - drop unnecessary check [RISCV] Share PatFprFpr classes for F, D, and Zfh [ORC][JITLink] Fix MachO absolute symbol handling, add test case. AMDGPU: Skip folding REG_SEQUENCE if found unknown regclasses for its users [X86] Add helper enum for ternary intrinsics [SLP] Extract a helper for buildvector [nfc] [clang][dataflow] Fix nullptr dereferencing error. [RISCV] Add patterns for vector widening floating-point reduction instructions. [SLP] Fix spelling in a lambda name [NFC] [BOLT][CMAKE] Remove CMake 3.13.4 incompatible parameter Change "target.save-jit-objects" to "target.save-jit-objects-dir". The old command wrote to CWD, which doesn't always work, and if it didn't, there was no workaround (and it crashed on failure). This patch changed the setting to provide a directory to save the objects to. [libcxx][AIX] Remove `LIBCXX-AIX-FIXME` in isalwayslockfree check after 86478c7ad8a7 [flang] Fix module file missing USE for shadowed derived type [clang] Fix OpenMP critical hint parameter check [mlir][sparse][taco] Split the evaluate method into compile and compute. Add JSON output option to llvm-remark-size-diff [WebAssembly] Add new target feature in support of 'extended-const' proposal [flang] Make uninitialized allocatable components explicitly NULL() in structure constructors [NFC] Cleanup StandardInstrumentations Revert "[libc++] Remove extension to support allocator<const T>" [AMDGPU] Add gfx10 assembler directive to specify shared VGPR count Re-land [lld-macho][nfc] Don't use `stubsHelperIndex` in ICF hash [flang] Runtime validation of SPREAD(DIM=dim) argument [MLIR][Presburger][NFC] Cleanup PresburgerSet [flang] Use faster path for default formatted character input [OpenMP][libomp] Fix register constraint for tpause and umwait [mlir][Vector] Add patterns to reorder elementwise ops and broadcast/transpose ops. [flang] Lower allocate and deallocate statements [libc++] Make common_iterator's proxy types into aggregates. [sancov] Don't instrument calls to bitcast funcs: they're not indirect. Revert "[clang][debug] port clang-cl /JMC flag to ELF" [libcxxabi] Fix cmake order dependency wrt dllexporting [libc++] Remove extension to support allocator<const T> [AMDGPU] new gfx940 fp atomics [flang] Make per-argument intrinsic error messages more localized [x86] reduce code duplication for select of X86ISD::CMP; NFC [x86] add tests for mask+cmp; NFC [x86] remove unnecessary decorations in test file; NFC [lldb] Format g_color_tokens as a table (NFC) [lldb] Support "bright" ANSI colors [AMDGPU] Add v_mov_b64 gfx940 opcode [IVDescriptors] Bail out instead of asserting that order is expected. [Hexagon] Handle v2f16 in build_vector in isel [AMDGPU] gfx940 uses new names for coherency bits Fix buildbots after https://reviews.llvm.org/D120755. [libc] Align the stack pointer in the start function. [flang] Avoid crash case in provenance mapping [AMDGPU] Fix uninitialized value after 8d0c34fd4f [AMDGPU] gfx940: support V_FMAMK_F32 and V_FMAAK_F32 [MTE] Add NT_ANDROID_TYPE_MEMTAG [RISCV] Rename 'SplatOperand' to 'ScalarOperand'. NFC [LegalizeTypes][ARM][X86] Change ExpandIntRes_ABS to use sra+xor+sub. [mlir][NFC] Remove FuncOp overload of NestedPattern::match [mlir][NFC] Drop a few dead forward declarations of FuncOp [mlir][NFC] Rename StandardToLLVM to FuncToLLVM [pseudo] Strip comments for TokenStream. [OpenMP] libomp: implemented task priorities. [libc++][AIX][test] Enable put_double/long_double locale tests [pseudo] empty parameter-declaration should be allowed in lambda declarator. [flang] Add lowering for host association Revert "[lld-macho][nfc] Don't use `stubsHelperIndex` in ICF hash" [flang] Accommodate arrays with a zero-extent dimension in location folding Revert "[gn build] (manually) port 0c2b43ab8cb1 (X86MCTests)" Revert "[X86] Fix MCSymbolizer interface for X86Disassembler" [gn build] (manually) port 0c2b43ab8cb1 (X86MCTests) [libc++] [ranges] Fix `decltype(auto) ranges::iter_move`. [clang-format] Fix namespace end comments in ObjC++ files too [libc++] Overhaul std::quoted; fix its relationship to character traits. [X86] Fix MCSymbolizer interface for X86Disassembler Simplify OpenMP Lambda use [clang][debug] port clang-cl /JMC flag to ELF [mlir][sparse][taco] Add more unit tests. Revert "Add CMake option not to build BOLT tests" Fix the comment for EnableNoundefAttrs, NFC Add CMake option not to build BOLT tests [mlir][Vector] Improve default lowering of vector transpose operations [clang][dataflow] Extend flow conditions from block terminators [lld-macho][nfc] Reduce size of icfEqClass hash [lld-macho][nfc] Don't use `stubsHelperIndex` in ICF hash [lld-macho][nfc] Rename isec -> referentIsec to avoid shadowing [lld-macho][nfc] Track # of ICF calls to `equals*` methods [lld-macho][nfc] Use llvm::function_ref instead of std::function [lld-macho][nfc] Remove file statics from ICF.cpp UpdateTestChecks: fix handling of UTC with spaces [AArch64] Perform first active true vector combine [LV] Add test from PR54227. [mlir] Add missing override keyword. NFC. [lldb] Add a setting to change the autosuggestion ANSI escape codes [llvm] remove empty __LLVM segment in llvm-bitcode-strip [libc++] Better handling for zero-sized types. [gn build] Port 54d6b5b67fb3 [mlir] Fix dumping invalid ops [pseudo] Rename {Preprocess,PPStructure} -> DirectiveMap. NFC [VE] Split v512.32 load store into interleaved v256.32 ops [analyzer][NFC] Merge similar conditional paths [NFC][LV] Use different braces in debug output [AMDGPU] Ensure return address is save/restored if clobbered or when function has calls [AMDGPU] Omit unnecessary waitcnt before barriers [gn build] Port 205557c908ff [libc++][ranges] Implement ranges::max_element [AArch64] Move FeatureSpecRestrict into core 8.0-R architecture. [clang-format] Fix assertion failure/crash with `AllowShortFunctionsOnASingleLine: Inline/InlineOnly`. [libc++][NFC] Improve release note formatting update_analyze_test_checks.py: fix UTC_ARGS handling [clang] Adjust LookupTest for UsingTypeLocs [clang-tools-extra] Document clang tidy unit tests target [pseudo] Add readme [libc++][NFC] Add missing whitespace in release notes [analyzer] Fix buildbot failure for D120369 [gn build] Port 311ff3917827 [libc++] Add missing header <cuchar> [ConstraintElimination] Use ZExtValue for unsigned decomposition. [ConstraintElimination] Add tests inspired by PR54224. Update normalizeAffineFor to canonicalize maps/operands before using them [flang] Update tco after 0dc66b76fe4c [mlir][shape] Migrate bufferization to BufferizableOpInterface update_analyze_test_checks.py: fix --filter handling [mlir][Bazel] Remove unused dependencies (NFC) [MLIR] Fix bazel BUILD file after Parser.h moved. [analyzer] Add more propagations to Taint analysis [ConstraintElimination] Only add cond from assume to succs if valid. [ConstraintElimination] Add test case for PR54217. Partially revert 03e6d10cac86: it broke the build Revert "Apply clang-tidy fixes for bugprone-macro-parentheses to MLIR (NFC)" [README] Add hint, how to use automatically the optimal number of CPU cores [Attributor] Remove restriction on simplifying function pointers [CODE_OWNERS/CREDITS] Update my email address Apply clang-tidy fixes for readability-simplify-boolean-expr to MLIR (NFC) Apply clang-tidy fixes for readability-identifier-naming to MLIR (NFC) Apply clang-tidy fixes for performance-unnecessary-value-param to MLIR (NFC) Apply clang-tidy fixes for modernize-use-emplace to MLIR (NFC) Apply clang-tidy fixes for modernize-use-default-member-init to MLIR (NFC) Apply clang-tidy fixes for modernize-loop-convert to MLIR (NFC) Apply clang-tidy fixes for llvm-qualified-auto to MLIR (NFC) Apply clang-tidy fixes for bugprone-macro-parentheses to MLIR (NFC) [CoroElide] Remove fallback for frame layout determination [clang][modules] Fix failing test Remove Simon Atanasyan from the code owners list. MIPS Backend. [Coroutines] Allow FramePtr to be an Argument [clang][modules] Report module maps affecting `no_undeclared_includes` modules [clang][modules] NFC: Simplify and clarify test [AArch64] Turn truncating buildvectors into truncates [libc] Fix alignment logic in TLS image size calculation. [gn build] Port 5f62156762d4 [mlir][NFC] Move Translation.h to a Tools/mlir-translate directory [mlir][NFC] Move MlirOptMain to the Tools/ directory [mlir][NFC] Move Parser.h to Parser/ [ConstraintElimination] Remove dead variables when dropping constraints. [ConstraintElimination] Add test from PR54228. [X86] Update some of the AVX512 intrinsic tests to avoid adds. [VP] Introducing VectorBuilder, the VP intrinsic builder [Attributor] Remove function pointer restriction for AAAlign [AArch64] Use NPM for cost model tests. NFC [SCEV] Enable verification under EXPENSIVE_CHECKS [LoongArch] Add EncoderMethods for transformed immediate operands [SCEV] Enable verification in LoopPM [mlir] Use empty() instead of checking size() == 0 (NFC) [SCEV] Fully invalidate SCEVUnknown on RAUW [clang][parser] Stop dragging an EndLoc around when parsing attributes [MLIR] Change call sites from deprecated `parseSourceFile()` to `parseSourceFile<ModuleOp>()`. [Attributor] Determine potentially loaded values through memory [Attributor] Handle undef and null in AAAlignFloating [Attributor] Use CFG reasoning also for read accesses [Attributor] Improve isValidAtPosition (mostly for old PM) [PowerPC] Add generic fnmsub intrinsic [Attributor][NFCI] Introduce fine-grained anonymous namespaces [Attributor][OpenMPOpt][FIX] Register simplification callbacks [Attributor][FIX] Use maximal access for dereferenceability deduction [Attributor][FIX] Initialize stack variable Revert "[OpenMP][NFCI] Use RAII lock guards in libomptarget where possible" [RISCV] Fix incorrect optimization for masked vmsgeu.vi with 0 immediate. [OpenMP][NFCI] Use RAII lock guards in libomptarget where possible [Attributor][NFCI] No repeated manifest of AAValueSimplifyReturned (CGSCC) [Attributor][NFC] Expose helper with more generic interface [Attributor][NFC] Improve debug messages [OpenMPIRBuilder] Allocate temporary at the correct block in a nested parallel [mlir][support] Fix msvc build. [clang-format] NFC update LLVM overall clang-formatted status [DAG] Don't convert undef to 0 when creating buildvector [Hexagon] Move single-use global tables into their only user and turn them into StringSwitch [X86] Update AVX512-BW mask intrinsic tests to avoid adds [X86] Update AVX512 rotate intrinsic tests to avoid adds [X86] Update AVX512-VNNI mask intrinsic tests to avoid adds Drop some more global std::maps. NFCI. [LoopSink] Do not try to sink phi nodes. [MLIR][Presburger][NFC] Fix PresburgerLocalSpace::print() output [Clang] Use = default(NFC) [RISCV] Add SimplifyDemandedBits support for FSR/FSL/FSRW/FSLW. [OpenMP][CMake] Ensure linking against libm for Linux [OpenMP][CMake] Clean up the CMake variable `LIBOMPTARGET_LLVM_INCLUDE_DIRS` [libcxx][atomic] Remove workaround for PR31864 [YAML] Simplify code a bit. NFC. [clang-format] Handle goto labels for RemoveBracesLLVM [IVDescriptor] Remove SinkCandidate from SinkAfter before re-sinking. Make ParsedAttrInfo and subclasses use constexpr construction [OpenMP] libomp: omp_in_explicit_task() implemented. [AArch64] Some tests to show reconstructing truncates. NFC Drop iostream include, which is forbidden in LLVM [libc++] Granularize <utility> includes [OpenCL] Turn global vector into static array. NFCI. [clang-format] QualifierOrder does not reorder template arguments [libc++] Don't warn that coroutines aren't supported when including <experimental/coroutine> [AArch64] fix i128-math.ll [AArch64] Add test for i128 overflow/saturation ops (NFC) [clang-format] Turn global COperatorsFollowingVar vector into a switch [SDAG] fold bitwise logic with shifted operands [AArch64][x86] add tests for bitwise logic + shifts; NFC [WebAssembly] Update WebAssemblyAsmTypeCheck for table.get [RISCV] Fix incorrect codegen introduced by D119688. [RISCV][NFC] Precommit test cases for D120963. [NFC][Clang] Fix a couple of typos [RISCV] Add CMOV isel pattern for (select (setgt X, -1), Y, Z) [cmake] Pass /winsysroot explicitly [llvm-cov] New parameters to set coverage coverage_watermark [RISCV] Support k-ext clang intrinsics Revert "[polly] Fix regression test after D110620." [libc++] Add _LIBCPP_HIDE_FROM_ABI to __quoted_proxy ctors. [libc++] [NFC] Formatting preliminary to D120135 (std::quoted) [libc++] ADL-proof calls to __quoted and noskipws. Revert "[SCEV] Infer ranges for SCC consisting of cycled Phis" Reland D119909 [ELF] Parallelize initializeLocalSymbols [ELF] Move addWrappedSymbols before postParseObjectFile [WebAssembly] Update Preprocessor/init.c test after 3be9e0ba972c [RISCV] Move vslide1up/down intrinsics into lowerVectorIntrinsicSplats. NFC [CMake] Replace `TARGET_TRIPLE` with `TOOLCHAIN_TARGET_TRIPLE` for Win-to-Arm cross toolchain cache file. NFC. [RISCV] Merge more rv32/rv64 vector intrinsic tests that contain the same content. [lldb/Test] Fix test_launch_scripted_process_stack_frames failure [WebAssembly] Check bulk-memory when adjusting lang opts [clang-format] fix namepsace format when the name is macro expansion [Docs] List __has_feature(dataflow_sanitizer) in LanguageExtensions docs. [MSAN] extend ioctl interceptor to support BLKSSZGET [mlir][Pass] Add support for an InterfacePass and pass filtering based on OperationName Revert "[ELF] Parallelize initializeLocalSymbols" [lldb/Test] Disable test_scripted_process_and_scripted_thread on Windows [libcxx] Fix the ctype `is` (pointer version) function for Windows [libc++] [LWG3656] Update the return type of std::bit_width. [mlir][sparse] fix mlir-window build breakage Update references to the mailing list to reference Discourse. Also update references to LLVM Bugzilla as we have moved to GitHub issues. [mlir] RegionBranchOpInterface should be verifyWithRegions Revert "Reland [SROA] Maintain shadow/backing alloca when some slices are noncapturnig read-only calls to allow alloca partitioning/promotion" [mlir][ods] Save the Enum info in EnumAttr [mlir] NFC fix missing dependency on Async ObjectFile: add a case for `EM_RISCV` Reapply "[cmake] Prefix gtest and gtest_main with "llvm_"." revert "[lldb/Host] Fix crash in FileSystem::IsLocal" [lldb/Plugins] Add ability to load modules to Scripted Processes [lldb/Plugin] Use static ScriptedInterface::ErrorWithMessage function (NFC) [lldb/test] Re-enable TestEvents.py on Darwin and fix crashes Fix test failure in openmp-offload.c [llvm] add -r functionality to llvm-bitcode-strip OpenMP: add allocsize(0) attribute to __kmpc_alloc_shared Reland [SROA] Maintain shadow/backing alloca when some slices are noncapturnig read-only calls to allow alloca partitioning/promotion [NFC][SROA] Add test w/ select and non-capturing call [LLDB] Flush stream at the end of PrintCommandOutput getAllocAlignment: respect allocalign attribute if present BuildLibCalls: add allocalign attributes for memalign and aligned_alloc Attributes: add a new allocalign attribute [CUDA][HIP] Fix offloading kind for linking C++ programs [LLDB] Remove cases of using namespace std [HIP] Fix job action offloading kind for mixed HIP/C++ compilation [mlir] Region/BranchOpInterface: Allow implicit type conversions along control-flow edges [RGT] DistroTest: Separate environment-specific test functions [mlir][bufferize] Add BufferizationState initializers [libc] Fix small bugs in aarch64/FEnvImpl.h and simplify feclearexcept_test. [tooling] Explain how to create a compilation database on Windows [NFC] [mlir][sparse] Rename add{Pointer,Index} to append{Pointer,Index} [lld-macho][nfc] Use %X in mapfile test [lld-macho][nfc] Rename some tests for consistency [bazel] Port 76ec69a911c6 [memprof] Filter out callstack frames which cannot be symbolized. [libc] Remove the redundant header FPUtil/FEnvUtils.h [NVPTX] Correctly set regs for neg, abs intrinsics [OpenMP][FIX] Ensure custom state machine works Revert "[SROA] Maintain shadow/backing alloca when some slices are noncapturnig read-only calls to allow alloca partitioning/promotion" [InstrProf][NFC] Fix warning by removing typecast [libc][NFC] Add a platform independent thread support library. [libc++] Mark __wrap_iter's private constructors as explicit. [libc][Obvious] Add build folder to .gitignore. [Libomptarget] Work around bug in initialization of libomptarget [SROA] Maintain shadow/backing alloca when some slices are noncapturnig read-only calls to allow alloca partitioning/promotion [clang] [concepts] Check constrained-auto return types for void-returning functions [clang] [NFC] Add `const` to a parameter that's not modified. [X86] getTargetVShiftNode - peek through any zext node Pass through more LIBCXX_* variables to libfuzzer's custom lib++ [libc] Make the errno macro resolve to the thread local variable directly. [gn build] Port c88deef0a721 [gn build] Port 7ee97c24efab [clang][dataflow] Add `MatchSwitch` utility library. [MLIR][AMDGPU] Fix typo and add comment to SerializeToHsaco [clang][dataflow] Add a lattice to track source locations. [MLIR][SCF] Allow combining subsequent if statements that yield & negated condition [DebugInfo][InstrRef] Accept register-reads after isel in any block [MLIR][MemRef] Ensure alloca_scope is inlined with no allocating ops [X86] LowerShiftByScalarVariable - find splat patterns with getSplatSourceVector instead of getSplatValue Revert "[AArch64] Async unwind - function prologues" [AArch64] Use simd mov to materialize big fp constants [llvm] fix bitcode-strip.test on windows [MLIR][Presburger] skip IntegerPolyhedrons with LocalIds in coalesce [llvm] add -o flag to llvm-bitcode-strip [MLIR][LLVM] Fold extractvalue to ignore insertvalue at distinct index [runtimes] Trigger CI jobs when only the runtimes/ subdirectory is touched [clang-tidy][NFC] Document bugprone-narrowing-conversions check alias InstructionCombining: avoid eliding mismatched alloc/free pairs Extend `performANDCSELCombine` to `performANDORCSELCombine` [CoroFrame] Remove unused insertSpills() return value (NFC) [X86] SimplifyDemandedVectorElts - adjust X86ISD::ANDNP demanded elts based off constant masks Revert "[WebAssembly] Update WebAssemblyAsmTypeCheck for table.get" [flang] Fix standalone builds [AMDGPU] Extra test cases in hard-clauses.mir [AMDGPU] Regenerate checks in hard-clauses.mir [demangler] Make OutputBuffer non-copyable Revert "[analyzer] Done some changes to detect Uninitialized read by the char array manipulation functions" [NFC] Divide tests into smaller files [AMDGPU] Tweak predicates for image_bvh_intersect_ray instructions [WebAssembly] Update WebAssemblyAsmTypeCheck for table.get [DAGCombine] Prevent illegal ISD::SPLAT_VECTOR operations post legalisation. [Driver] Split up huge arm-cortex-cpus.c test. [Driver] Split up huge aarch64-cpus.c test. [AArch64] Turn UZP1 with undef operand into truncate [Attributor] Remove function pointer type check (NFCI) [IVDescriptor] Use DT to check order of Previous, OtherPrev. Reapply [MergeICmps] Don't require GEP [AArch64] Fix the TuneExynosM4 entry in lib/Target/AArch64/AArch64.td [MergeICmp] Make instruction move robust against empty block (NFCI) [AArch64] Improve access to fixed-width object when stack has SVE. [AArch64] NFC: Add test for access to fixed-width stack object when stack has SVE. [Bitcode] Move x86_intrcc upgrade to bitcode reader [Bitcode] Fully support opaque pointer auto upgrade [AArch64] Additional insert-subvector codegen tests. NFC [tests][Driver] Pass an empty sysroot for `DEFAULT_SYSROOT` builds [libcxx] [test] Fix get_string_en_US, get_long_double_en_US for Windows [libcxx] [test] Fix the get/put long_double_zh_CN tests on Windows [MLIR][Presburger] support a heuristic for the "cut case" in coalesce [analyzer] Done some changes to detect Uninitialized read by the char array manipulation functions [LoongArch] Delete unnecessary comments in LoongArchMCTargetDesc.cpp Fix for D119899 More bazel fixes [PDLL] Attempt to fix shared libraries build More bazel fixes [MLIR] Extend isLoopMemoryParallel to account for locally allocated memrefs [MLIR][OpenMP] Mark openmp.parallel and omp.wsloop as having recursive side effects [PDLL] Specify LLVM_LINK_COMPONENTS using LINK_COMPONENTS Bazel fixes for 81f2f4dfb2922e4f7af8bbfd8b653eda7c1f1339 [lld-macho][nfc] Decouple tapi-link.s test from libSystem [gn build] Port e865fa75308a Fix race condition when launching and attaching. [PDLL] Add support for tablegen includes and importing ODS information [TableGen] Add a library-based entry point for parsing td files [LTO] Initialize canAutoHide() using canBeOmittedFromSymbolTable() [lld-macho][nfc] Use %lld-watchos substitution in bind-opcodes.s [lld-macho][nfc] Avoid using absolute addresses in cgprofile-icf.s [RISCV] With Zbb, fold (sext_inreg (abs X)) -> (max X, (negw X)) [hmaptool] Fix string decoding for Python 3 [hmaptool] Fix dumping Revert "[MergeICmps] Don't require GEP" [CMake] Update cache file for Win to ARM cross tooolchain. NFC. [lldb] Fix the build after 8b3b66ea63d6 [Mips] support "sp" named register [MLIR] [AMDGPU] Use correct flags when building SerializeToHsaco [NFC] Fix typos [BOLT][NFC] Return MCRegister::NoRegister from MCPlusBuilder::getNoRegister() [lldb] Remove reproducer_handler from the driver [lldb] Remove FileSystem::Initialize from FileCollector Revert "Update bazel build rules to match 169ebf03ab2a6f16bfa32a36305929c7bc8e4784." Fixed sphinx build due to indentation [libc++] Removes base member from tests. Revert "Inliner: Correctly merge amdgpu-unsafe-fp-atomics attribute" [x86] add tests for vector rotate; NFC [AArch64][x86] add tests for rotate/funnel combines; NFC Fix the order of modules-loaded event and the resultant breakpoint-changed event. Fix up the "lldb log break" channel output. [NFC] move CheckInstantiatedFunctionTemplateConstraints to SemaConcepts.cpp [DSE] Cache liveOnEntry as clobbering access Revert "Reapply "[SLP] Schedule only sub-graph of vectorizable instructions""" [RegAlloc] Add a complexity limit in growRegion() to cap compilation time. [lldb] Remove reproducer verifier and corresponding command [AMDGPU] Added hsa-gfx90a-v3.s test. NFC. Revert "[GlobalOpt] Don't replace alias with aliasee if either alias/aliasee may be preemptible" [lldb] Remove FileSystem::Initialize from VFS mapping [AMDGPU] Add test for instructions unsupported on gfx940. NFC. [memprof] Symbolize and cache stack frames. [libc++] Remove _LIBCXX_MODULES_BUILD and ext/ headers from header tests [analyzer] Done some changes to detect Uninitialized read by the char array manipulation functions [LLDB] Remove cases of using namespace llvm:: from header file [libc++] Move several defines to ADDITIONAL_COMPILE_FLAGS in the test suite [libc++] Move .fail.cpp test to .verify.cpp [CostModel] Change printer pass wording to work with update_analyze_test_checks.py [analyzer] Done some changes to detect Uninitialized read by the char array manipulation functions [InstCombine][Analysis] Move getFCmpCode and getPredForFCmpCode to CmpInstAnalysis. NFC Revert "[lldb] Correct case in description of breakpoint --on-catch/throw" [NFC] Change TemplateInstantiator to refer to the base using a typedef [flang][nfc] Fix GCC 11 build [NFC][Clang][OpaquePtr] Remove calls to Address::deprecated in CGBlocks.cpp [lldb] Fix DataExtractor symbol conflict [IVDescriptor] Find original 'Previous' for first-order recurrences. [flang][nfc] Add missing build dependency [PS4] isPS4 and isPS4CPU are not meaningfully different [libc][Obvious] Add a few missing deps listings. [UpdateTestChecks] Don't skip first line with --filter [libcxx][test][NFC] Add tests for constructors of unordered [multi]map since C++14 [Attributor] Regenerate test checks (NFC) [mlir] Fix gcc -std=c++17 compilation. [Clang] Diagnose invalid member variable with template parameters [mlir][linalg] NFC: minor cleanups after moving pad to tensor dialect [Concepts] Check constraints for explicit template instantiations [libc++] Fix initialization of __fill_ [SDAG] try harder to remove a rotate from X == 0 [x86] add tests for setcc of rotate; NFC [FuncSpec] Remove unnecessary function pointer type check [AArch64] Use first op of FADDPv* instead of implicit def. [pseudo] Fix an out-of-bound access for LRTable::Actions. [mlir][bufferize] Always bufferize top-to-bottom [FuncSpec][NFC] Refactor internal structures. [clang-format] Handle wrapped else for RemoveBracesLLVM [RISCV] Add cost modelling for masked memory op [gn build] Port 8de8731591fe Revert "[VP] Introducing VectorBuilder, the VP intrinsic builder" [libc++] Use -I instead of -isystem to include headers in the test suite [libcxx][test][NFC] Add tests for C++14 constructors of unordered sets [X86][XOP] Tidyup VPHADD/VPHSUB unary horizontal ops default schedule class [NFC] TypePromotion test Reapply [lit] Read command stdout/stderr as text on Windows [libcxx] [test] Fix get/put long_double_ru_RU on Glibc, FreeBSD and Windows [AArch64] Update costs for some fp16 converts [mlir][linalg][bufferize] Migrate --linalg-bufferize to BufferizableOpInterface-based bufferization [AArch64] Vector shifts cost 1 [gn build] Port 8bcbfb50e8ea [VP] Introducing VectorBuilder, the VP intrinsic builder Revert "[mlir] Add extensible dialects" [analyzer] Improve NoOwnershipChangeVisitor's understanding of deallocators [InstCombine] Support opaque pointers in callee bitcast fold [lldb] Correct case in description of breakpoint --on-catch/throw [InstCombine] Remove unnecessary byval check in callee cast fold [InstCombine] Add callee bitcast test with byval on callee (NFC) [AArch64] Allow copying of SVE registers in Streaming SVE [AArch64] Add legal types for Streaming SVE [AST] Use RecoveryExpr to model a DeclRefExpr which refers to an invalid Decl. [Scalarizer] Avoid pointer element type accesses Add missing include under -DEXPENSIVE_CHECKS [flang] Generate PDT runtime type info in the type definition scope [flang] Handle optional TARGET associate in ASSOCIATED runtime [flang] Support PDT type descriptors in codegen [llvm-stress] Support opaque pointers [DSE] Drop redundant WalkerStepLimit adjustment [RISCV] Fold store of vmv.f.s to a vse with VL=1. [libcxx] [test] Fix the collate compare test for Glibc, Windows and FreeBSD [LLD] [COFF] Order .debug_* sections at the end, to avoid leaving gaps if stripped [MLIR] Fix afterIP for dynamic worksharing-loop after collaping loops Cleanup includes: Transform/Scalar Revert "Add missing include under EXPENSIVE_CHECK" [lldb] Update the CI docs [lldb] Update TestBasicEntryValues.py for `image lookup` output [Support][AArch64] Detect a few more host CPU features on AArch64 [lldb] Fix python errors in gdbremote.py [PowerPC][atomics] Precommit test cases for i128 cmpxchg. NFC. More bazel fixes. [lldb] Skip check for the lldb prompt in TestIOHandlerProcessSTDIO More attempts at bazel fix [flang] Remove bogus messages for actual/dummy procedure argument compatibility [lldb] Update error messages in TestMemoryHistory.py [lldb] Devirtualize IOHandler::{IsActive,SetIsDone,GetIsDone} (NFC) [lldb] Avoid data race in IOHandlerProcessSTDIO [AMDGPU] Removed XFAIL from hsa-gfx940-v3.s. NFC. [AMDGPU] Add gfx1036 target [flang] Extend ProvenanceRange::Suffix() to handle crash case [flang] Avoid bogus warning from MSVC build [AMDGPU] Fix 3 tests with expensive checks. NFC. [libc++] Preliminary cleanups to ranges::iter_move. NFC. [LLDB] Add error message when using --show-variable-ranges without -v [AMDGPU] gfx940 removes all image instructions [AMDGPU] Add gfx940 target Attempt fix for Bazel build from 3ba66435d9377cb99ee1718807cbf6a7c4b0d6d3 [LLDB] Dump valid ranges of variables [SDAG] refactor foldSetCCWithRotate; NFC [x86] add nounwind attribute to test; NFC [lldb] Explicitly declare the default constructor in PlatformAndroidRemoteGDBServer [libcxx] [test] Fix en_US money locale formatting tests on Windows [mlir][SPIRV] Split up StandardToSPIRV now that the Standard dialect is gone [CSSPGO] Even flow distribution [flang] Accommodate module subprograms defined in the same module [Hexagon] Recognize "access size" for dcfetch [mlir] Add extensible dialects [flang] Catch READ/WRITE on direct-access file without REC= [tosa][mlir] Add support for dynamic width/height for Conv2D inputs in tosa-to-linalg [flang] Honor RECL= in list-directed/namelist output [RISCV] More correctly ignore Zfinx register classes in getRegForInlineAsmConstraint. [clang][CGStmt] fix crash on invalid asm statement Refine error msgs from CommandObject & Disassemble [BOLT] Enable PLT analysis for aarch64 Revert "[cmake] Prefix gtest and gtest_main with "llvm_"." Add "REQUIRES: x86" to test as it calls llc with an x86_64 triple. [flang] Fix result type of "procedure(abs) :: f" [flang] Lower more cases of assignments on allocatable variables [cmake] Prefix gtest and gtest_main with "llvm_". Reapply "[SLP] Schedule only sub-graph of vectorizable instructions"" [NFC] Fix typo in CMake comment [SLP] Don't try to vectorize allocas [AArch64] Add some fp16 conversion cost tests. NFC [OpenMP] Handle sysroot option in offloading linker wrapper [MLIR] Use Datalayout defaults when importing LLVM Revert "[LegalizeTypes][VP] Add splitting and widening support for VP_FNEG." [LoopPeel] Add EXPENSIVE_CHECKS ifdef guard around domtree verify call [SelectionDAG][RISCV] Emit a canonical sign bit test from ExpandIntRes_ABS. [RISCV] Don't combine ROTR ((GREV x, 24), 16)->(GREV x, 8) on RV64. [LegalizeTypes][VP] Add splitting and widening support for VP_FNEG. [MLIR][OpenMP] Place alloca scope within wsloop in scf.parallel to omp lowering [slp] Add tests for cause of D118538 revert [libc++] Check clang-tidy version [AArch64][SME] Don't infer -neon from +streaming-sve. [X86] Enable v32i16 FSHL/FSHR support [MLIR][Arith] Canonicalize cmpi of extui/extsi [flang] Handle module in lowering pass [libc++] Add missing std:: qualification to __synth_three_way. [flang] Lower inquire statement [flang] Lower basic IO file statements ... Signed-off-by: kyvangka1610 <[email protected]>
2 parents eae0641 + 1648852 commit 90c201b

File tree

12,144 files changed

+638120
-440246
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

12,144 files changed

+638120
-440246
lines changed

.github/workflows/issue-release-workflow.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,12 @@ on:
1919
types:
2020
- created
2121
- edited
22+
issues:
23+
types:
24+
- opened
2225

2326
env:
24-
COMMENT_BODY: ${{ github.event.comment.body }}
27+
COMMENT_BODY: ${{ github.event.action == 'opened' && github.event.issue.body || github.event.comment.body }}
2528

2629
jobs:
2730
backport-commits:
@@ -30,7 +33,7 @@ jobs:
3033
if: >-
3134
(github.repository == 'llvm/llvm-project') &&
3235
!startswith(github.event.comment.body, '<!--IGNORE-->') &&
33-
contains(github.event.comment.body, '/cherry-pick')
36+
contains(github.event.action == 'opened' && github.event.issue.body || github.event.comment.body, '/cherry-pick')
3437
steps:
3538
- name: Fetch LLVM sources
3639
uses: actions/checkout@v2

.github/workflows/issue-subscriber.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,12 @@ jobs:
1818
pip install -r requirements.txt
1919
2020
- name: Update watchers
21+
# https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-an-intermediate-environment-variable
22+
env:
23+
LABEL_NAME: ${{ github.event.label.name }}
2124
run: |
2225
./github-automation.py \
23-
--token ${{ secrets.ISSUE_SUBSCRIBER_TOKEN }} \
26+
--token '${{ secrets.ISSUE_SUBSCRIBER_TOKEN }}' \
2427
issue-subscriber \
25-
--issue-number ${{ github.event.issue.number }} \
26-
--label-name ${{ github.event.label.name }}
28+
--issue-number '${{ github.event.issue.number }}' \
29+
--label-name "$LABEL_NAME"

.github/workflows/llvm-bugs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ jobs:
4848
4949
subject: `[Bug ${issue.data.number}] ${issue.data.title}`,
5050
template: "new-github-issue",
51+
'o:tracking-clicks': 'no',
5152
'h:X-Mailgun-Variables': JSON.stringify(payload)
5253
};
5354

.mailmap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
# Combinations of both are possible too, see
1717
# https://git-scm.com/docs/gitmailmap for format details.
1818
#
19-
# You can commit changes for your own names and email addresses without review.
19+
# You can commit changes for your own names and email addresses without review.
2020
# If you want to add entries for other people, please have them review the
2121
# addition.
2222
#

README.md

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,17 +63,25 @@ This is an example work-flow and configuration to get and build the LLVM source:
6363

6464
Some common options:
6565

66-
* ``-DLLVM_ENABLE_PROJECTS='...'`` --- semicolon-separated list of the LLVM
67-
sub-projects you'd like to additionally build. Can include any of: clang,
68-
clang-tools-extra, compiler-rt,cross-project-tests, flang, libc, libclc,
69-
libcxx, libcxxabi, libunwind, lld, lldb, mlir, openmp, polly, or pstl.
66+
* ``-DLLVM_ENABLE_PROJECTS='...'`` and ``-DLLVM_ENABLE_RUNTIMES='...'`` ---
67+
semicolon-separated list of the LLVM sub-projects and runtimes you'd like to
68+
additionally build. ``LLVM_ENABLE_PROJECTS`` can include any of: clang,
69+
clang-tools-extra, cross-project-tests, flang, libc, libclc, lld, lldb,
70+
mlir, openmp, polly, or pstl. ``LLVM_ENABLE_RUNTIMES`` can include any of
71+
libcxx, libcxxabi, libunwind, compiler-rt, libc or openmp. Some runtime
72+
projects can be specified either in ``LLVM_ENABLE_PROJECTS`` or in
73+
``LLVM_ENABLE_RUNTIMES``.
7074

7175
For example, to build LLVM, Clang, libcxx, and libcxxabi, use
72-
``-DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi"``.
76+
``-DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi"``.
7377

7478
* ``-DCMAKE_INSTALL_PREFIX=directory`` --- Specify for *directory* the full
7579
path name of where you want the LLVM tools and libraries to be installed
76-
(default ``/usr/local``).
80+
(default ``/usr/local``). Be careful if you install runtime libraries: if
81+
your system uses those provided by LLVM (like libc++ or libc++abi), you
82+
must not overwrite your system's copy of those libraries, since that
83+
could render your system unusable. In general, using something like
84+
``/usr`` is not advised, but ``/usr/local`` is fine.
7785

7886
* ``-DCMAKE_BUILD_TYPE=type`` --- Valid options for *type* are Debug,
7987
Release, RelWithDebInfo, and MinSizeRel. Default is Debug.
@@ -94,8 +102,9 @@ This is an example work-flow and configuration to get and build the LLVM source:
94102

95103
* Running a serial build will be **slow**. To improve speed, try running a
96104
parallel build. That's done by default in Ninja; for ``make``, use the option
97-
``-j NNN``, where ``NNN`` is the number of parallel jobs, e.g. the number of
98-
CPUs you have.
105+
``-j NNN``, where ``NNN`` is the number of parallel jobs to run.
106+
In most cases, you get the best performance if you specify the number of CPU threads you have.
107+
On some Unix systems, you can specify this with ``-j$(nproc)``.
99108

100109
* For more information see [CMake](https://llvm.org/docs/CMake.html)
101110

bolt/docs/OptimizingClang.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Collecting accurate profile requires running `perf` on a hardware that
4141
implements taken branch sampling (`-b/-j` flag). For that reason, it may not be possible to
4242
collect the accurate profile in a virtualized environment, e.g. in the cloud.
4343
We do support regular sampling profiles, but the performance
44-
improvements are expected to be more modest.
44+
improvements are expected to be more modest.
4545

4646
```bash
4747
$ mkdir ${TOPLEV}/stage3
@@ -211,7 +211,8 @@ $ cd ${TOPLEV}/stage1
211211
$ cmake -G Ninja ${TOPLEV}/llvm-project/llvm -DLLVM_TARGETS_TO_BUILD=X86 \
212212
-DCMAKE_BUILD_TYPE=Release \
213213
-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_ASM_COMPILER=gcc \
214-
-DLLVM_ENABLE_PROJECTS="clang;lld;compiler-rt" \
214+
-DLLVM_ENABLE_PROJECTS="clang;lld" \
215+
-DLLVM_ENABLE_RUNTIMES="compiler-rt" \
215216
-DCOMPILER_RT_BUILD_SANITIZERS=OFF -DCOMPILER_RT_BUILD_XRAY=OFF \
216217
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
217218
-DCMAKE_INSTALL_PREFIX=${TOPLEV}/stage1/install

bolt/include/bolt/Core/BinaryBasicBlock.h

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class MCCodeEmitter;
3131
namespace bolt {
3232

3333
class BinaryFunction;
34+
class JumpTable;
3435

3536
class BinaryBasicBlock {
3637
public:
@@ -623,6 +624,10 @@ class BinaryBasicBlock {
623624
/// remove the conditional successor and branch instruction.
624625
void removeDuplicateConditionalSuccessor(MCInst *CondBranch);
625626

627+
/// Update successors of the basic block based on the jump table instruction.
628+
/// The block must end with a jump table instruction.
629+
void updateJumpTableSuccessors();
630+
626631
/// Test if BB is a predecessor of this block.
627632
bool isPredecessor(const BinaryBasicBlock *BB) const {
628633
auto Itr = std::find(Predecessors.begin(), Predecessors.end(), BB);
@@ -909,7 +914,12 @@ class BinaryBasicBlock {
909914
return Index;
910915
}
911916

912-
bool hasJumpTable() const;
917+
/// Return jump table if the block contains a jump table instruction or
918+
/// nullptr otherwise.
919+
const JumpTable *getJumpTable() const;
920+
921+
/// Check if the block has a jump table instruction.
922+
bool hasJumpTable() const { return getJumpTable() != nullptr; }
913923

914924
private:
915925
void adjustNumPseudos(const MCInst &Inst, int Sign);

bolt/include/bolt/Core/BinaryContext.h

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ class BinaryContext {
211211
std::map<unsigned, DwarfLineTable> DwarfLineTablesCUMap;
212212

213213
public:
214-
static std::unique_ptr<BinaryContext>
214+
static Expected<std::unique_ptr<BinaryContext>>
215215
createBinaryContext(const ObjectFile *File, bool IsPIC,
216216
std::unique_ptr<DWARFContext> DwCtx);
217217

@@ -489,7 +489,9 @@ class BinaryContext {
489489
void adjustCodePadding();
490490

491491
/// Regular page size.
492-
static constexpr unsigned RegularPageSize = 0x1000;
492+
unsigned RegularPageSize{0x1000};
493+
static constexpr unsigned RegularPageSizeX86 = 0x1000;
494+
static constexpr unsigned RegularPageSizeAArch64 = 0x10000;
493495

494496
/// Huge page size to use.
495497
static constexpr unsigned HugePageSize = 0x200000;
@@ -1192,14 +1194,14 @@ class BinaryContext {
11921194
/*PIC=*/!HasFixedLoadAddress));
11931195
MCEInstance.LocalCtx->setObjectFileInfo(MCEInstance.LocalMOFI.get());
11941196
MCEInstance.MCE.reset(
1195-
TheTarget->createMCCodeEmitter(*MII, *MRI, *MCEInstance.LocalCtx));
1197+
TheTarget->createMCCodeEmitter(*MII, *MCEInstance.LocalCtx));
11961198
return MCEInstance;
11971199
}
11981200

11991201
/// Creating MCStreamer instance.
12001202
std::unique_ptr<MCStreamer>
12011203
createStreamer(llvm::raw_pwrite_stream &OS) const {
1202-
MCCodeEmitter *MCE = TheTarget->createMCCodeEmitter(*MII, *MRI, *Ctx);
1204+
MCCodeEmitter *MCE = TheTarget->createMCCodeEmitter(*MII, *Ctx);
12031205
MCAsmBackend *MAB =
12041206
TheTarget->createMCAsmBackend(*STI, *MRI, MCTargetOptions());
12051207
std::unique_ptr<MCObjectWriter> OW = MAB->createObjectWriter(OS);

bolt/include/bolt/Core/BinaryFunction.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1299,10 +1299,11 @@ class BinaryFunction {
12991299
case ELF::R_X86_64_32:
13001300
case ELF::R_X86_64_32S:
13011301
case ELF::R_X86_64_64:
1302+
case ELF::R_X86_64_PC8:
1303+
case ELF::R_X86_64_PC32:
1304+
case ELF::R_X86_64_PC64:
13021305
Relocations[Offset] = Relocation{Offset, Symbol, RelType, Addend, Value};
13031306
return;
1304-
case ELF::R_X86_64_PC32:
1305-
case ELF::R_X86_64_PC8:
13061307
case ELF::R_X86_64_PLT32:
13071308
case ELF::R_X86_64_GOTPCRELX:
13081309
case ELF::R_X86_64_REX_GOTPCRELX:

bolt/include/bolt/Core/BinarySection.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,16 @@ class BinarySection {
296296
return make_range(Relocations.begin(), Relocations.end());
297297
}
298298

299+
/// Iterate over all dynamic relocations for this section.
300+
iterator_range<RelocationSetType::iterator> dynamicRelocations() {
301+
return make_range(DynamicRelocations.begin(), DynamicRelocations.end());
302+
}
303+
304+
/// Iterate over all dynamic relocations for this section.
305+
iterator_range<RelocationSetType::const_iterator> dynamicRelocations() const {
306+
return make_range(DynamicRelocations.begin(), DynamicRelocations.end());
307+
}
308+
299309
/// Does this section have any non-pending relocations?
300310
bool hasRelocations() const { return !Relocations.empty(); }
301311

0 commit comments

Comments
 (0)