This is an automated email from the git hooks/post-receive script.
tcwg-buildslave pushed a change to branch linaro-local/ci/tcwg_kernel/llvm-release-arm-lts-allmodconfig in repository toolchain/ci/llvm-project.
from 82fb4f4b223d [SCEV] Sequential/in-order `UMin` expression adds 7f1955dc9640 [ELF] Support mixed TLSDESC and TLS GD adds fb3faa8b326d [flang] Do not lose call in shape inquiry on function reference adds 9b5cf7267beb [lldb] Disable several lldb tests that are flaky on Windows adds 08bc2eb1e049 [mlir][NFC] Fully spell mlir typenames in BaseOpWithOffset [...] adds 68468bbe15d5 AMDGPU: Avoid null check during addrspacecast lowering adds 988c3f5f9692 [clang-tidy] Fix RenamerClangTidyChecks suggesting invalid [...] adds 0ba4e4b500ea GlobalISel: Pass DebugLoc to getFunctionLiveInPhysReg adds 2d3ae6f4844b [cmake] Enable users to specify archive creation commands adds 8e682086a067 AMDGPU/GlobalISel: Explicitly track d16 for image legalization adds f5b387988bd4 Revert "[CodeGen] Mark fma as const for Android" adds e7481f6ee591 [clang][dataflow] Add transfer functions for assignment adds f4ab0f6e097f [TSan] Avoid deadlock in test for compiler-rt debug build adds 4609e30f5001 [lldb] Remove lldb-instr adds c0add1636d3a [flang] Fix the documentation on how to build flang adds e12126913139 [NFC][regalloc] Pass RAGreedy to eviction adviser adds 69c55d636200 [lldb] Remove LLDB_RECORD_CHAR_PTR_* macros adds da4b7437f932 [lldb] Remove LLDB_RECORD_DUMMY_* macros adds c9f83a8af9dc [libc++] Alphabetize CMakeLists.txt and module.modulemap. NFC. adds ce167c6fb2ae [libcxx] Use Fuchsia-native monotonic clock for std::chron [...] adds 4d81a46f7f71 [libc++] Alphabetize header #includes. NFCI. adds 914fffc7f249 [libunwind][cmake] Create `LIBUNWIND_INSTALL_INCLUDE_DIR` [...] adds 84654f2733f6 [libc++] Refactor the tests for std::random_device adds 847eefe5bfd7 [doc][cmake] Convert read-me for the common CMake utils to reST adds 8bed953782af [llvm] Fix the module build adds e2cc091a7d01 Fix a missed opportunity to merge stores. adds a765eea15389 [libcxx][test] Auto-detect _LIBCPP_HAS_NO_UNICODE for MSVC STL adds a74826d30a2e [openmp][amdgpu] Replace unsigned long with uint64_t adds 2154dbaa593d [libc++][NFC] Use _LIBCPP_DEBUG_ASSERT in <list> adds 87a9be2a74a9 Don't fail if unable to promote loops during unrolling adds 1267506ea54a [lldb] fix memory leak in "GetGDBServerRegisterInfoXMLAndProcess" adds 98ab43a1d209 [HIP] Fix device only linking for -fgpu-rdc adds a2c33b0ec976 [clang-tidy] Refactor: Extract Class CheckRunner on check_ [...] adds 38b30eb2b218 [LowerMatrixIntrinsics] Call getRegisterClassForType befor [...] adds 5265ac72c668 [MemoryBuiltin] Add an API for checking if an unused alloc [...] adds b191c1f0f9f8 [NFC][regalloc] Pull out some AllocationOrder/CostPerUseLi [...] adds 371779fac193 [libc] Add linux aarch64 syscall implementation. adds ed7ae1af7237 Add coverage of GlobalsModRef's indirect global case adds bbf234b56a82 [CodeCompletion] Complete designators for fields in anonym [...] adds bfeb92cb9cfb docs: update some bug tracker references (NFC) adds eb200e584ece Emit the C++ dialect in -gmodules .pcm files. adds 1d3964d2adc4 [libcxx][test] Make LIBCPP_STATIC_ASSERT usable at namespa [...] adds d789ea713372 [Diagnostics] Don't drop a statically set NoWarningAsError [...] adds 4258d68dc737 [Tooling] When transferring compile commands between files [...] adds 140a6b1e5c68 [clang][OpenMP5.1] Initial parsing/sema for 'indirect' clause adds 63f0c00d38ee Add a `qualified` directive to the Op, Attribute, and Type [...] adds 86c5b870b2e5 [AST] Don't consider 'ExportDecl' when calculating DeclCon [...] adds 9ef2175f812a [SelectionDAG] Add additional documentation to FP_TO_S/UIN [...] adds d9d63fc1088c [AST] lookup in parent DeclContext for transparent DeclContext adds abc787fbf3a7 Delete a stale comment adds f62f47f5e1f6 Partial revert of 82fb4f4 adds b607cd39281f [RISCV] Use vmv.s.x to build one element splat vector. adds 301e91174002 [TargetLowering] precommit refactor from D115688 NFC adds 649b11ef8bcd git-clang-format HEAD~ adds bd653f6406e7 [RISCV] Use shift for zero extension when Zbb and Zbp are [...] adds 905ac777d5c1 [M68k][test][NFC] Reorder the tests for MxBTST_MI and MxBTST_MR adds 99c1acf3f1df [RISCV] Add precommit test for select vl op that equal to ~0. adds d0554ae4cf26 [RISCV] Select vl op to X0 when it is equal to ~0. adds 9ea772ff81eb [RISCV] Block vmsgeu.vi with 0 immediate in Isel adds 2968467e3990 [lld-macho][test] Add missing coverage for archive/dylib r [...] adds 477bc36d3b2a [lld-macho] Change some global pointers to unique_ptr adds 5dbbd4eeb8c4 [ELF] Move OffsetGetter before some static functions. NFC adds 4eec1710c518 allow llvm-reduce, if asked, to run its set of passes more [...] adds b28e8abfd069 [NFC][XCOFF][llvm-readobj] replace binaries with YAMLs (on [...] adds 8d23b7420c92 [libc++][ranges] Implement `uninitialized_copy{,_n}` and ` [...] adds 04867c3c51e7 [gn build] Port 8d23b7420c92 adds 50ec1306d060 [clang] Add --start-no-unused-arguments/--end-no-unused-ar [...] adds 98d51c2542dc [RISCV] Override TargetLowering::BuildSDIVPow2 to generate SELECT adds 065e0324e5e4 [CSKY] Add CSKYConstantIslands Pass to lift or duplicate c [...] adds 2d1b55ebea88 [CodeGen] Make element type in emitArrayDestroy() predictable adds e2b658cd5d0b [mlir][GPU] Fix attribute name of DL specification adds 4a42ce25088e [LoopVersioning] Check the full generated runtime checks i [...] adds e26bbae30218 [clang] [test] Remove newly added tests that fail on Darwin adds 22ac067b2dce [clangd] Small optimization in SelectionTree adds 51497dc0b201 [IR] Change vector.splice intrinsic to reject out-of-bound [...] adds 2d67a86b7c14 [SCEVExpander] Use IntToPtr for temporary instruction. adds 1e9b837585cc [clangd] Save more getFileID in Selection adds 4d3ba4e6c8ea [flang] Add tests for converting arrays and refs to arrays. NFC adds c6430fade344 [RISCV] Generate 32 bits jumptable entries when code model [...] adds 4b01968b5eae [MLIR] Update allocs to memref.allocs in documentation. adds aff9f2dc0160 [LICM] Regenerate test checks (NFC) adds 18b2385f2b09 [clang] [test] Fix clang-cl unused argument tests on paths [...] adds c61299e2b306 [SemaOverload] Use castAs<> instead of getAs<> to avoid de [...] adds 2e52f76a722a [SemaOverload] compareConversionFunctions - use castAs<> i [...] adds 83797c03d2ee [ADT] Use a lookup table in hexdigit() and call that from toHex() adds fe2c4af90507 [DSE] Make test more robust (NFC) adds 0b48d0fe1292 [ADT] Add an in-place version of toHex() adds 41fbdfa4d560 Reland "[AST] Add RParen loc for decltype AutoTypeloc." adds 3d5179febe40 [DSE] Add additional tests for noalias calls (NFC) adds 2c5c5ca8681a [mlir][linalg][bufferize] Fix CallOp bufferization adds ec016681d33f [LSR] Remove duplicated test address-space-loop.ll. adds 3cef3cf02f09 [DSE] Check for noalias calls rather than alloc functions adds b56f6f1913a8 [MemoryBuiltins] Remove unused isStrdupLikeFn() function (NFC) adds 3946095b8813 [MemoryBuiltins] Remove unused isOpNewLikeFn() (NFC) adds fba8ad2b719c [SemaTemplateInstantiate] Use cast<> instead of dyn_cast<> [...] adds 0b5b35fdbdbf ARM: make FastISel & GISel pass -1 to ADJCALLSTACKUP to si [...] adds 3a272d1eaf26 [SVE][CodeGen] Use splice instruction when lowering VECTOR_SPLICE adds acc39873b70e [CodeGen] Avoid deprecated Address constructor adds fda47db8ee1d [Clang][Sema] Fix attribute mismatch warning for ObjC clas [...] adds 0c7f515f88fc Revert "[Clang][AArch64][ARM] PMUv3.4 Option Added" adds 8dba4d42f50e [LSR] Use pointer args instead of undef for uglygep*.ll tests. adds e0772cf00f57 [NFC][SCEV] Add reproducers for umin_seq crashes adds 76a0abbc13cd [SCEV] Reenable umin_seq support and fix the `computeSCEVA [...] adds 6d8d1c5ea307 [lldb/qemu] Implement GetMmapArgumentList adds dbb8d086377b [SPIR-V] Add linking using spirv-link. adds 88fdce5be696 [lldb] Remove non address bits from memory read arguments adds 50c3bf234f8d [InstSimplify] Add additional GEP tests with undef bases. adds 0eef65028e8a [SPIR-V] Remove unused variable adds 36075942f998 [SCEV] Add test for umin_seq with duplicate operands adds 5e1665079201 [SCEV] `getSequentialMinMaxExpr()`: keep only the first in [...] adds 7f47005dcc6a [mlir][linalg] Use cast instead of dyn_cast that's always [...] adds 8503c688d555 [clang][lex] Keep references to `DirectoryLookup` objects [...] adds 3404127b4e9d [GlobalOpt] Regenerate test checks (NFC) adds 5fc9abe4749f [gn build] (manually) port 8503c688d555 adds 138d5c750ba2 [NFC][SCEV] Add more tests for umin_seq with redundant operands adds 94d62633914b [GlobalStatus] Look through non-constexpr casts adds a3b9edf8b8c3 [ASan] Driver changes to always link-in asan_static library. adds 7c7d59a35d65 [libc++] Use TEST_HAS_NO_UNICODE instead of _LIBCPP_HAS_NO [...] adds ae4c643bcdf2 [compiler-rt] Silence warnings when building with MSVC adds b2be7dcf5b12 [NFC][SCEV] More tests with operand-wise redundant operand [...] adds 5ceb070bbbe3 [SCEV] `getSequentialMinMaxExpr()`: look into `umin` when [...] adds 4eda7be15a11 [X86] Tag existing shuffle test case as PR53124 adds 962e8d9976c5 [mips] Use `push_back` to insert element at the end of a c [...] adds 0199e4737349 [mips][lld] Add test case to check symbol index reading on [...] adds 8a469e20505f [InstSimplify] Fold inbounds GEP to poison if base is undef. adds 593b4d7a1c26 [Nomination] Adding Intel representatives to security group adds 3712372fa5a5 [DSE] Style improvements after 3cef3cf - remove redundant [...] adds 20404d820c7c [X86] Apply clang-format to X86TargetLowering::isVectorShi [...] adds e838949bee05 [GlobalsModRef] Apply indirect-global rule to all globals [...] adds d345ce65ff0c Mark arith.minf, arith.maxf as commutative. adds 134e9d1914db [libc][NFC] Move sys/mman entrypoints to the default build [...] adds f77d115cc136 [clang] Move `ApplyHeaderSearchOptions` from Frontend to Lex adds 4b14fc6fe5a7 [SPIR-V] Drop double quote from test pattern adds be1cc64cc13c [RISCV] Add DAG combine to fold (fp_to_int (ffloor X)) -> [...] adds ad25f8a556d2 X86InstrInfo: Support immediates that are +1/-1 different [...] adds 108837663004 [gn build] Port f77d115cc136 adds 8f553da49261 [instsimplify] Add a comment and test for a highly confusing case adds ee25a327aac0 [clang-format] Fix SeparateDefinitionBlocks issues adds f0ef1ea6dd32 [IRBuilder] Introduce folder using inst-simplify, use for [...] adds 0a6f1c5f972a Fix bazel build after 8503c688d555014b88849e933bf096035a351586. adds b22a93f4fb39 [mlir][linalg] Improve pooling op iterator order consistency adds 37a1291885c1 [ELF] Add RelocationScanner. NFC adds 5443d2ed982d [MLIR][SCF] Simplify scf.if by swapping regions if conditi [...] adds 630084549b33 [mlir][tosa] Relax tosa.apply_scale operations adds 9c4b49db1928 [ShrinkWrap] check for PPC's non-callee-saved LR adds bf52210e25e2 [NFC][LazyCallGraph] Remove check in removeDeadFunction() [...] adds 0a8d15ad55e3 [libc++][libc++abi][libunwind] Dedup install path var definitions adds dfd070820cba [mlir][tosa] Allow optional TOSA decompositions to be popu [...] adds 4edb9983cb8c [SelectionDAG] treat X constrained labels as i for asm adds 0ceb332a761c [mlir] Fix a missing override warning adds c0e415471136 Fix clang-tidy bugprone-argument-comment that was mixed up adds 75b08cce47df Apply clang-tidy fixes for readability-redundant-control-f [...] adds e5df9cc098b5 [CodeGen] Treat ObjC `__unsafe_unretained` and class types [...] adds 79ebc3b0dd13 [llvm][test] rewrite callbr to use i rather than X constraint NFC adds 228dfc092751 Fix bazel build after f77d115cc136585f39d30a78c741eb296f9e804d. adds 7b7a49a9fb00 [NFC][SimplifyCFG] Add some more tests for sinking into 'u [...] adds c8463fd22b1f [clang][CGStmt] emit i constraint rather than X for asm go [...] adds fce1c6fb6798 [gn build] (manually) port f77d115cc136 more adds 694fd10659eb [HIP] Fix device malloc/free adds 65c15cbd4a55 [MLIR][LLVM] Add MemRead/MemWrite behavior to llvm store/l [...] adds a1bf4ddac6e4 [DSE] Generalize store null to calloc allocated memory [NFC-ish] adds 36af07334246 Accept string literal decay in conditional operator adds 5c562f62a4ee [clang] number labels in asm goto strings after tied inputs adds e2e7ecf25d3d [DSE] Minor style improvements to calloc formation code [NFC] adds 25b976aa1280 BOLT root commit adds 575b24d7198c Initial FLO commit. adds a89c41735749 Removed remote .arcconfig + comment change. adds 7927c14ff58a Fixed cmake. adds 9a2fe7ebe499 Commit FLO with control flow graph. adds e1a539b0ecc8 Add initial implementation of DataReader adds f166c4ab2bb2 Fix CFG building issue. adds ffcc2be7fa6f FLO: added support for rip-relative operands. adds d30423f87200 Don't bail out if there's no input data file specified. adds 4c1da22ae9ab Add branch count information to binary CFG adds f79f6302c195 Converted local offsets from uint64_t to uint32_t. Refactoring. adds 9b58b2e64b89 Make llvm-flo infer branch count data for fall-through edges adds 34f708550391 Teach llvm-flo how to reorder basic blocks with a heuristic adds f9ed45893b5d Teach llvm-flo how to reorder blocks in an optimal way adds 9a8d357d0b46 Fix DataReader to work with new local sym perf2flo format adds ec22caff1e52 Fix comments. NFC. adds b4ed5cc942ee Make FLO work on hhvm binary. adds 31e6bd1226ba Fix missing sanity check in BinaryFunction::optimizeLayout() adds ef059af3d129 Fix bug in block reorder heuristic adds cd6250d1e3a9 Fixes branches after reordering basic blocks in a binary function adds 85b99eb7b793 Eliminate nop instruction in input and derive alignment. adds b0115a4536ab Teach llvm-flo how to handle two back-to-back JMPs adds 9f41a0d26385 Do not schedule BBs before the entry point adds ab63ca9afb4f Implement unreachable BB elimination in llvm-flo adds dc848b537640 Fix entry BB execution count in llvm-flo adds 546c4e6e848e Fix bug in BinaryFunction::fixBranches() in llvm-flo adds 7f4433177394 Issue warning when relaxed tail call is seen on input. adds d4d773458cff More control over function printing. adds 2539539bdeea Fixes priority queue ordering in llvm-flo block reordering adds 13a520ab3002 Implement two cluster layout heuristics adds 0e8998713c9f Extract non-taken branch frequencies from LBR adds 21cc191ea80d Added function to parse and dump .gcc_except_table adds 7d592d097558 Verbose printing of actions from .gcc_except_table adds 208887565638 Teach llvm-flo how to read .eh_frame information from binaries adds de46e6fc07f9 Parse whole contents of .gcc_except_table even if we are n [...] adds a30d04c3e27b Annotate BinaryFunctions with MCCFIInstructions encoding CFI adds e80d11f27aa5 Fix bug in local symbol name disambiguation algorithm adds 1df130ae17b2 Remove add PG prefix from symbols that are already local adds 2117362a09a7 Revert 45fc13b as it breaks HHVM rewriting adds be2a19523cb4 Add exception handling information to CFG. adds 56cca2fb5b18 Fix LSDA reading issues. adds bc9d6e3b6c9c Regenerate exception handling information after optimizations. adds 6c851dc2e3f8 Attempts to fix CFI state after reordering adds 70db5677fb83 Write updated CFI to temporary object file adds 1d248ec51b33 Write .eh_frame and .eh_frame_hdr after reordering BBs adds 7886f4e81a65 Ignore LSDA information for now adds 75798a891b79 Do not bail on functions with indirect calls adds 38dac03e6b66 Make llvm-flo print dynamic coverage of rewritten functions adds ccbbb8f8b949 Teach llvm-flo how to split functions into hot and cold regions adds c67a753e3cfc Refactoring llvm-flo.cpp into a new class RewriteInstance, NFC. adds d6f01452d1b0 Change function splitting to be a two-pass process adds 04c80af012f6 Don't choke on DW_CFA_def_cfa_expression and friends adds 9a73a8c4464a Turns off basic block alignment by default adds fb6e8c5d0bad Don't touch functions whose internal BBs are targets of in [...] adds f7d7a85a2470 Turn EH ranges support back on. adds e2fcb371a89e Ignore functions referencing symbol at 0x0. adds a6efd11c0527 Code/comments cleanup. adds b42c72cbf6e3 Fix issues with some CFI instructions with gcc 4.9. adds c9b7e3e09e49 Write updated LSDA's. adds d9536e6092a6 Added an option to reverse original basic blocks order. adds 4a44d187c6d3 Handle more CFI cases and some. adds bbb745efa9a3 Don't create empty basic blocks. Fix CFI bug. adds 89578e231428 Allow to partially split functions with exceptions. adds 218c5f091652 Fix a bug with outlining first basic block. adds b91d1f129916 Enable REPNZ prefix support. adds 628d06b1e5a3 Preserve layout of basic blocks with 0 profile counts. adds d1526083fc82 Rename binary optimizer to BOLT. adds e1a61e1eed72 Keep intermediate .o file only under -keep-tmp option. adds 50c895ad0c87 Drop requirement for __flo_storage in the input binary. adds 7f7d4af7e030 Add an option to use PT_GNU_STACK for new segment. adds 73e9afe99c4d Don't abort on unknown CFI instructions. adds 62da18d32a32 Always split functions under '-split-functions=1' option. adds 77a6b72842cd BOLT: Read and tie .debug_line info to IR. adds d68b1c7b16c6 Extending support for non-allocatable sections. adds 73c9f0abe384 Write updated .debug_line information to temp file adds 9212a9ad691e Proper skipping of unsupported CFI instructions. adds f2df1a8d9732 Update stmt_list value to point to new .debug_line offset. adds e7e9e15b90b4 Check function data in symbol table against data in .eh_frame. adds 80ea31b24e8f Write updated .debug_aranges section after optimizations. adds dc7cc1fb185d Fix default line number information for instructions. adds d01172ffa8ef Refactor existing debugging code. adds a60914427cfb Update DW_AT_ranges for CU when it exists. adds 9cdb7bdb55c0 Write only minimal .debug_line information. adds 466cbae866cf Update subroutine address ranges in binary. adds 595d0885d9ab Populate function execution count while parsing fdata. adds e8ef8a561943 Speedup section remapping. adds ffa9641e16b3 Update DWARF lexical blocks address ranges. adds 0a07d9bf884d Don't skip non-simple functions on function address ranges [...] adds 4349b631441f Re-enable conditional function spitting under an option. adds 4b4db401748f Update DWARF location lists after optimization. adds e513bfd86ddd Only set output ranges when updating dbg info. adds 784f6a877343 Emit debug line information for non-simple functions. adds 665b03a46417 Fix behavior with multiple functions with same address. adds 2694e58fa2a3 Update unmatched and nested subprogram DIEs. adds e16b5d8b78ce Option to pass a file with list of functions to skip. adds 0e77c53b8964 Update address ranges of inlined functions and try/catch blocks. adds f6c892979949 Fix debugging info for simple functions that we fail to rewrite. adds ad344c4387cd Group debugging info representation and serialization code. adds 4f44d6094728 Special handling for GNU_args_size call frame instruction. adds 43bc4a09add3 Changed splitting options and fixed sorting. adds ff68b3455375 Tool to merge .fdata files. adds 87a90ae133a2 Fix ninja install-* for BOLT utilities. adds 3811673a0c39 Option to break in given functions. adds 1258903b5442 Fix for functions in different segments. adds de95a5b6a43d Make merge-fdata generate smaller .fdata files. adds 459eb8c230e2 Fix "Cannot update ranges for DIE at offset" error messages. adds e6acc7bb53dd Optimize calls to functions that are a single unconditional jump adds d1f525499e94 Optimize calls to functions that are a single unconditional jump adds 5fa128e7485c Inlining of small functions. adds f7e7e25b888c Put all optimization passes under the pass manager. adds b445f5eb7b6b Fix issue with garbage address in .debug_line. adds e63984f3257f Patch forward jumping tail calls to prevent branch mispred [...] adds f047b9d43ad4 Overwrite contents of .debug_line section. adds 7ab3db129bbf Create DW_AT_ranges for compile units. adds cfa5d753eb9f Miscellaneous fixes for debug info. adds 7b97793b94e9 Fix for clang .debug_info. adds 06b9c5b34271 Better .debug_line for non-simple functions. adds fb5f18b2dc07 Correctly updating landing pad exec counts. adds 485f9220b75c Taking LP counts into account for FT count inference adds 65ac8bbdf235 Better edge counts for fall through blocks in presence of [...] adds 4460da0d8166 Improvements for debug info. adds 6da0d9532604 Fix large functions debug info by default. adds 45e2219ae408 Allocate BinaryBasicBlocks with new rather than storing th [...] adds 8bcfd9a39257 Indirect call optimization. adds 980a06265af9 Revert "Indirect call optimization." adds 88ac5d9d0e8a [merge-fdata] Add option to print function list. adds 70f82d9371d3 Reject profile data for functions that do not match. adds f1192a7118a5 Support for multiple function names. adds d09b00ebff7b Refactoring of the reordering algorithms adds 287fa51324aa Fix for ignoring fall-through profile data when jump is fo [...] adds 6eb4e5b6878a perf2bolt can extract branch records with histories adds 260f6fbdb6c2 Add option to dump CFGs in (simple) graphviz format during [...] adds c20506c5709b Fix in inferFallthroughCounts adds 90c9323511de Use unordered_map instead of map in ReorderAlgorithm and B [...] adds bdd4af213405 Store index inside BinaryBasicBlock instead of in map on B [...] adds 84b5b9e4628b Create alternative name for local symbols. adds 674dbcc0de71 Fix crash in patchELFPHDRTable when no functions are modified. adds bf46263eed31 Shorten instructions if possible. adds f2d82919d076 Move debug-handling code into DWARFRewriter (NFC). adds c6d0c568d43b Add BinaryContext::getSectionForAddress() adds ea53cffb2d36 Add movabs -> mov shortening optimization. Add peephole o [...] adds 17b846586cd0 Loop detection for BOLT's CFG. adds 156a55209c9b Simplification of loads from read-only data sections. adds 82401630a22b Factor out instruction printing and size computation. adds a9bb3320ad6f Identical Code Folding (ICF) pass adds ab599fe71a7b Basic block clustering algorithm for minimizing branches. adds 50e011f4e54c CFG editing functions adds 486ab273c7d0 Add printing support for indirect tail calls. adds 713e361f3616 Fix for correct disassembling of conditional tail calls. adds 82d76ae18b08 Add MCInst annotation mechanism to MCInstrAnalysis class. adds 32739247ebd1 More aggressive inlining pass adds 36df6057b014 Refactoring. Mainly NFC. adds 003d106c0b2b More refactoring work. adds 406aa6208399 Add additional info to BOLT graphviz CFG dumps. adds c1d1c2e7cda6 Check if operands are immediates before trying shortening. adds a10fb73ab3b9 Compute ClusterEdges only when necessary. adds 42c5894fe246 Write padding for .eh_frame_hdr to a file. adds 97f598fd17bc Handling for indirect tail calls. adds 43acb6a28ab0 Emit remember_state CFI in the same code region as restore_state. adds c27a6a5c63df Add verbosity level and clean up stream usage. adds 1cf200107edd Fix tail call conversion and test cases. adds dcaffe64d339 Inlining fixes/enhancements adds 48b55300e0ac BOLT: Make most command line options ZeroOrMore. adds 17e691915bfc Make BinaryFunction::fixBranches() more flexible and suppo [...] adds 6bef336cc2eb Add dyno stats to BOLT. adds c4c518ee9d9b Rewrite SCTC pass to do UCE and make it the last optimizat [...] adds 71be5679694c BOLT: Add per pass dyno stats + factor out post pass printing. adds 617c6a13b793 Use BB.getNumNonPseudos() in more places. adds 861d5a1586a4 BOLT: Remove double jumps peephole. adds 52bfc3f92f42 Fix switch table detection. Disassemble all instructions i [...] adds b0f4031db334 Add cluster randomization layout algorithm. adds 7483cd0fa694 BOLT: Clean up interface between BinaryFunction and Binary [...] adds 2f3a85977298 Add experimental jump table support. adds 8dbf0e2b3d7b Add dyno stats for jump tables. adds c4e36c1dd6bd Fix issue with zero-size duplicate function symbols. adds 2c9bf9afd657 Add PLT dyno stats. adds 62bff426c3b9 Do no collect dyno stats on functions with stale profile. adds 510f227cbd3d BOLT: Add feature to sort functions by dyno stats. adds 2f1341b51da0 BOLT: Refactoring BinaryFunction interface. adds ecc4b9e71350 BOLT: Add ud2 after indirect tailcalls. adds 4464861a02e2 Support for splitting jump tables. adds 4a0c494bc10e BOLT: Remove restrictions on unreachable code elimination adds 9cf5d74ffb98 Support for PIC-style jump tables. adds e241e9c156b0 New function discovery and support for multiple entries. adds 0eb2559feeff Fix EH for cold fragments that we fail to write. adds 99dce7d05e4e Disable processing of functions with EVEX-encoded instruct [...] adds bc8cb088c0ec Support DWARF expressions in CFI instructions adds 355dbd769e5d Fix DW_CFA_def_cfa CFI duping in output binary adds 055dfe48e712 Another EH fix for cold fragments of functions that we fai [...] adds 809c28f585bb Generate .eh_frame_hdr based on contents of .eh_frame's. adds a7fb610eba62 Relocate old .eh_frame section next to the new one. adds 8609ad51e504 Detect default CFI frame instructions for the target adds ac2621fbf456 Add stats for "-optimize-bodyless-functions". adds 7115706d0217 Fix clang warning about switch covering all enums adds b21bc02ac4e5 Remove pessimizing std::move adds 5cc9c5841064 Avoid const_iterator on std::vector::emplace adds a331fa396bc4 Fix memory leak in DWARFRewriter adds 5c0e4b6a5741 Fix undefined behavior in DebugInfo adds 3888c5604f73 Remove unused private var in CFIReaderWriter (NFC) adds c570038d319a Add option to time passes adds 06caefdb1d1b Fix typo in time passes adds 3a3dfc3dc25c BOLT: Use profiling info to control branch simplification [...] adds a75bbfc6401a Add a frame optimization pass adds 55fc5417f854 Relocations support for BOLT. adds bc8a456309e6 ICF improvements. adds 08949053730d [ICF] Don't re-fold functions in non-relocation mode. adds 19859377f8c4 [BOLT] Fix debug info update for zero-length ranges. adds 503c741d430a [BOLT] Report stale functions' percentage wrt all profiled [...] adds 6dfd16cb4c8b Cover RSP-indexed accesses in frame optimization adds 6ff1795d969a [BOLT] Support overwriting jump tables in-place. adds d74997c3ccf3 Indirect call promotion optimization. adds e212805ea6f5 [BOLT] Update section names in output file. adds c89821cee342 [BOLT] Detect and prevent re-optimization attempts. adds 6b0b5bbae703 [BOLT] Reject sanitized binaries. adds 734a7a5437d9 [BOLT] Skip disassembly of padding at function end. adds 82965b963f36 [BOLT] Emit short tail calls in relocation mode. adds f06a1455eac5 [BOLT] Add support for *GOTPCRELX relocation type. adds 88244a10bb20 [BOLT] Move BOLT passes under Passes subdirectory (NFC). adds d3e33b6edc12 [BOLT] Fix -jump-tables=basic in relocation mode. adds 88a461014b6c [BOLT] Don't set code skew in relocations mode. adds 2029458f347c [BOLT] Strip 'repz' prefix from 'repz retq'. adds 965a373dc491 Fix warnings when compiling with clang (NFC) adds 6dc2351505b3 [BOLT] New CFI handling policy. adds f241e252fc98 [BOLT] Detect and handle __builtin_unreachable(). adds 0acba2bcf0cf [BOLT] Detect unmarked data in text. adds fed0980139e4 [BOLT] Update tests adds 98737b34bb98 [BOLT] Fix verbose output. adds f4825ea4171a [BOLT] Fix gcc5 build. adds 2e5c2e689f75 Fix hfsort callgraph stats, add hfsort test. adds 351af0c895bc [BOLT] Do not process empty functions. adds 559a57a18186 [BOLT] Improve dynostats output. adds 6cfd7ac2d586 [BOLT] Do not overwrite starting address in non-relocation mode. adds e6f96de4d0f9 [BOLT] Add option to print only specific functions. adds b1ef186ca94b [BOLT] Don't allow non-symbol targets in ICP adds ad81bd677999 Change dynostats dynamic instruction count policy adds d5a0264a9e67 [BOLT] Issue error in relocs mode if input is lacking relo [...] adds 0bde796e50ba [BOLT] Organize options in categories for pretty printing [...] adds c166a8c1a721 [BOLT] Fix debug info update for inlining. adds f7d32f7e7ddb [BOLT] Detect and reject binaries built for coverage. adds 6c5c65e3a313 [BOLT] Fix double jump peephole, remove useless conditiona [...] adds a99005397f89 [BOLT] Fix branch count in removeDuplicateConditionalSuccessor(). adds 34c8a7c21bee [BOLT] Relocation support for non-allocatable sections. adds c7cccacc4f39 [BOLT] Enable SCTC by default. adds 075f076503ae [BOLT] Don't abort on processing binaries with .gdb_index section adds 13c89e6ef19b [BOLT] Fix branch data for __builtin_unreachable(). adds 3f42fdf7daf2 [BOLT] Update function address and size in relocation mode. adds 3adb52d80e90 [BOLT] Update .gdb_index section. adds 69b586326c2b [BOLT] Support adding new non-allocatable sections. adds c789d5137b40 [BOLT] Add option to keep/generate .debug_aranges. adds 4806b1383591 [BOLT] Add jump table support to ICP adds 457b7f14b9e0 [BOLT] Fix debug info for input with continuous range. adds 511a1c78b2cd [BOLT] Add dataflow infrastructure adds 96adec51eb70 [BOLT] Rework debug info processing. adds 3a3bcd767edd Don't add useless uncond branch to fallthroughs when runni [...] adds 2ee4bbd3c1c7 [BOLT] Optimize jump tables with hot entries adds 5cd58961a935 Add .bolt_info notes section containing BOLT revision and [...] adds 174e3a825bba [BOLT] Fix C++ ABI function alignment. adds 2428567f7ddb [BOLT] Fix no-assertions build. adds 96943d2f4b97 Add option to generate function order file. adds 2e744e686783 [BOLT] Emit sorted DWARF ranges and location lists. adds 35d2530a40f7 [BOLT] Fix SCTC again. adds 6c32079d57a8 [BOLT] Update addresses for DW_TAG_GNU_call_site and DW_TA [...] adds 9b190cc74bbc [BOLT] Fix SCTC again again. adds 733e8c464fc2 HFSort/call graph refactoring adds 95ab659fe4a8 [BOLT] Do not assert on an empty location list. adds 5feee9f1d896 [BOLT] More CG refactoring adds 382c660ee5f3 [BOLT] Make hfsort+ deterministic and add test case adds 4b485f4167a8 [BOLT] Fix misc issues in relocation mode. adds d850ca36222f [BOLT] Add shrink wrapping pass adds 2c2309429905 Split FrameAnalysis and improve LivenessAnalysis adds f9436bc9033d [BOLT] Fix ELF inter-section references adds 8eaa2fdd9f76 [BOLT] Fix hfsort+ crash when no perf data is present. adds 2baa4c7a2c8b [BOLT] Only print stats when requested adds 583790ee22f8 Fix dynostats for conditional tail calls adds ea5306628750 [BOLT] Fix hfsort+ caching mechanism adds eb63a0b295ea [BOLT] Expand BOLT report for basic block ordering adds eeea415dd2eb [BOLT] Fix SCTC execution count assertion adds f819f53d2741 Normalize Clusters Twice adds dc4dd648002b [BOLT] More HFSort+ refactoring adds 37d0f81df500 BinaryFunction.h: Clarify commet for getSize(), add getNum [...] adds 8233c7d204fc [BOLT] Bail frame analysis on PUSHes escaping vars adds 59e90f0f43cb [BOLT] Make function reordering more robust with stale data. adds 346939626931 [BOLT] Set local symbols in relocation mode to zero adds ec304396c3e5 [BOLT] Call Distance Metric adds 4ecd3856e980 [BOLT] Fix shrink-wrapping bugs adds 4d34471eeb0c [BOLT] Improved Jump-Distance Metric adds 4e29afeb1801 [BOLT] Add cold symbols to the symbol table adds 6d845719ce08 get analysis information of functions adds 70bad8d34db5 add: get function score to find hot functions refine the d [...] adds 787db1cf3e89 Recognize AArch64 as a valid input adds 87481cb49466 [BOLT] Improve Jump-Distance Metric -- Consider Function E [...] adds eb64d03b7366 Reformat the register strings in the output so Stoke can p [...] adds d27b31ee07cd [BOLT] Fix reading LSDA address for PIC code adds ae409f0b277b [BOLT] Better match LTO functions profile. adds e4290d083fbe [BOLT] Disable last basic block assertion. adds b81ff8a8fcaf [BOLT] Fix SCTC issue with hot-cold split adds 21c48f7d7824 Fix profiling for functions with multiple entry points adds 0c0744511040 [BOLT] Fix printing of dyno-stats adds 49d1f5698d5c [BOLT] PLT optimization adds bd8e4b9e879a [BOLT] Support PIC-style exception tables adds ec5b3b0a655f [BOLT] Fix bug in SCTC adds 29d4f4cfac28 [BOLT] Ignore TLS relocations types adds 9df155ce116b [BOLT] Introduce non-LBR mode adds ef0ec9edf9c9 [BOLT] Fix frameopt=all for gcc adds b006d2a8604d [BOLT] Fix issue with exception handlers splitting adds 156fc7315728 [BOLT] Fix SCTC bug adds 42f957bb75d9 [BOLT] Integrate perf2bolt into llvm-bolt adds aa05dc91c51d Fix SCTC bug when two pred/succ BB are in a loop. adds f32784f4cb41 [BOLT] Ignore Clang LTO artifact file symbol adds f02c8c29ee57 [PERF2BOLT] Improve user messages about profiling stats adds 9df6dce2348d [PERF2BOLT] Fix aggregator wrt new output format of perf adds f77a6acd7192 fixing sizes adds 0ed144a188d0 [PERF2BOLT] Check build-ids of binaries when aggregating adds 0cc2a62f6a2f [BOLT] Write bolt info according to ELF spec adds 7689cf2417c5 [BOLT] Fix bolt_info ELF note adds 3d3fefff4672 [BOLT] Use 32 as the default max bytes for function alignment adds 1605f07f5c55 [BOLT] Create symbol table entries under -hot-text if they [...] adds bee9132a54b4 [BOLT] Change function order file format for linker script adds 4c8f48be3d3b [BOLT] Fix function order output option adds b77172ce2f42 updating cache metrics adds 1e1833c8a2c5 [BOLT][Refactoring] Make CTC first class operand, etc. adds 2ab74723291a [BOLT] Account for FDE functions when calculating max func [...] adds c58996fd559f [BOLT] Add ability to specify custom printers for annotations. adds 61e5fbf8c34e [BOLT][Refactoring] Get rid of TailCallTerminatedBlocks, etc. adds 244a476a2e53 using offsets for CG adds 1288c81c9b5e [BOLT][Refactoring] Change landing pads handling adds 9e42885d045e [BOLT] Add value profiling to BOLT adds 46866f5fa024 [BOLT] Refactor branch analysis code. adds e838b354ce21 [BOLT][Refactoring] Move basic block reordering to BinaryPasses adds 0b967eb01262 [BOLT] Always call fixBranches in relocation mode. adds 848cb78080ad [BOLT] Fix BOLT build adds 19fea9279276 improving hfsort+ algorithm adds fe6e9b4ab5b4 [BOLT-AArch64] Support rewriting bzip2 adds 76d7740cc9a0 [BOLT-AArch64] Support reordering bzip2 no relocs adds 624b2d984a9e [BOLT-AArch64] Support relocation mode for bzip2 adds 69ddcfa5cb27 [BOLT] Fix implementation for TSP solution adds dd6ecdd78240 [BOLT-AArch64] Support reordering spec06 gcc relocs adds a0c041f72a56 [BOLT] Custom function alignment adds f8e6f66c1e95 [BOLT] Fix segfault in debug print adds e9aa6e1a3317 [BOLT] Fix N-1'th sctc bug. adds a3b719e0f9fb [BOLT] Fix ASAN bugs adds 7eaaaaba96fc [BOLT] Add finer control of peephole pass. adds 0836fa7d0868 [BOLT] Fix handling of RememberState CFI adds 1475c4da7116 speeding up caches for hfsort+ adds c4d7460ed6d6 [BOLT] Improve ICP for virtual method calls and jump table [...] adds b2f132c7c2d0 [RFC] [BOLT] Use iterators for MC branch/call analysis code. adds dc23def47706 [PERF2BOLT] Fix aggregator wrt traces with REP RET adds 591e0ef3ba48 [BOLT] Add timers for non-optimization related phases. adds 0bab742949a4 [BOLT] Fix icp-top-callsites option, remove icp-always-on. adds a71b5700c0ab [BOLT] Fix bug in shortening peephole. adds 39a8c3669778 [BOLT] Use getNumPrimeOperands in shortenInstruction. adds 21eb2139ee3e Introduce pass to reduce jump tables footprint adds 48a53a7b551f a new i-cache metric adds cd0a075a08f9 [BOLT] Fix ICP nested jump table handling and general stats. adds 70d44ab20ab8 [BOLT] Add REX prefix rebalancing pass adds 10274633eed3 [BOLT] Options to facilitate debugging adds 2b9bafed836e [BOLT] Consistent DFS ordering for landing pads adds b6f7c68a6c9a [BOLT] Automatically detect and use relocations adds d15b93badec2 [BOLT] Major overhaul of profiling in BOLT adds 67cef1f53620 debug adds 85f5f4fb6319 [BOLT] Fix debugging derp adds 660daac2d048 [BOLT] Fix -simplify-rodata-loads wrt data chunks with relocs adds 1fa80594cf8b [BOLT] Do not assign a LP to tail calls adds a599fe1bbc90 [BOLT] a new block reordering algorithm adds f8f52d01d012 [BOLT-AArch64] Support SPEC17 programs and organize AArch64 tests adds b6cb112febef [BOLT] New profile format adds 907ca2584128 [BOLT-AArch64] Support large test binary adds 2640b4071f47 [BOLT] Refactoring - add BinarySection class adds 89feb847ea94 [BOLT] Refactor relocation analysis code. adds 626e977c4a34 [BOLT] faster cache+ implementation adds 48370744d98e [BOLT] Do not assert on bad data adds 304c8ba80a09 [BOLT] Handle multiple sections with the same name adds d114ef1fa5ed [BOLT] Fix profile for multi-entry functions adds 2b8194fa5015 Handle types CU list in updateGdbIndexSection adds 1207e1d229d7 [BOLT] Fix lookup of non-allocatable sections in RewriteInstance adds 501601259b4e [BOLT] Fix branch info stats after SCTC adds f85264ae18f8 [BOLT] Reduce the usage of "Offset" annotation adds 600cf0ecf609 [BOLT] Fix memory regression adds 8a5a30156e1e [BOLT rebase] Rebase fixes on top of LLVM Feb2018 adds 1298d99a4153 [BOLT] Limited "support" for AVX-512 adds a24c5543eac7 [BOLT] Improved function profile matching adds 5599c019117a [BOLT] Fixes for new profile adds e15623058e79 Cache+ speed, reduce mallocs adds 6744f0dbeb81 [BOLT] Fix jump table placement for non-simple functions adds ddefc770b0ea [BOLT] Refactoring of section handling code adds 6d0401ccfb2e [BOLT/LSDA] Fix alignment adds 32b332ad2dc6 [BOLT] Fix ShrinkWrapping bugs and enable testing adds 0e4d86bf19fb [BOLT] Refactor global symbol handling code. adds d660f8b1fea7 [BOLT] Disassemble all functions before building CFGs adds 6644548c743d [BOLTDIFF] Add a tool to audit performance differences adds 2fe37b443519 [BOLT] Fix remove-unused-stores in rebased bolt adds 8c16594f2e13 [BOLT] Fix ORC to properly update symbols adds 48ae32a33bea [BOLT] Introduce MCPlus layer adds 598a346abf30 [BOLT] Fix assertion when setting size of jump table symbol adds faacdf60801b [BOLT] Fix assertion when building test binary adds 3458e92285f9 removing compact-mode adds 0dea33737a79 [BOLT] improvements for CFG construction adds a62f4fda4650 [BOLT][Refactoring] Isolate changes to MC layer adds 77f35bd0e9ba [BOLT] Fix iterator issue adds 0d729f218b34 [BOLT] Fix relocation verification adds 7956da0fe8f1 [BOLT] Fix CFG in BinaryFunction::eraseInvalidBBs() adds d8cf08b243ba [BOLT] Use MCPlus::getNumPrimeOperands() adds 489e51453089 [BOLT] Improve annotations format and processing adds 7df6a6d5c6f8 [BOLT-AArch64] Fix AArch64 port - make it work with hhvm adds 190693059a08 [merge-fdata] Rewrite merge-fdata to use YAML format adds 487877007254 [BOLT][Cleanup] Remove branch history adds 8b049d3c7f93 [BOLT] Support for non-LBR profile in YAML adds dc12911feaf2 [BOLT] Report when operating in relocation mode adds c13cd9084dc2 [BOLT] Fix tests adds 120d26727a2a [BOLT] Restore macro-fusion optimization adds a30fff6e36f3 [BOLT-AArch64] Fix BOLT build on AArch64 adds db949fc1f5f4 [PERF2BOLT] Add support for non-LBR aggregation adds aa91281ac325 [BOLT] improving cache metrics adds d6003e94eb0e [BOLT-AArch64] Fix -icf, -use-old-text and -update-debug-sections adds caad4bcf3a50 [BOLT] Fix crash while writing new profile adds 9c6f9656166a [BOLT] Getting open-source ready adds bdf21f7617e4 [BOLT] Align basic blocks based on execution count adds 729da2da2274 [BOLT] Static data reordering pass. adds e4f39bda51d2 adjusting cache stats for non-simple functions adds 56b38a14c50a [BOLT] Fix dyno-stats for PLT calls adds 1750fee2ac33 [BOLT] Add option to ignore function hash in profile adds 3af3537383fc [BOLT] Properly handle non-standard function refs adds 13968f7fa9c7 [BOLT] Add option to print functions with bad layout adds 6302e18f9466 [PERF2BOLT] Improve file matching adds 929b0908f711 [BOLT][NFC] Move ICF pass into a separate file adds 42e651224146 [BOLT-AArch64] Detect linker stubs and address them adds b4dbd35d6c18 [BOLT] Initial support for memcpy() inlininig adds 779541283a3d [BOLT] merging cold basic blocks to reduce #jumps adds 706abb6c9541 [BOLT] Hash anonymous symbol names adds 232046f9b25e [Bolt] Reduce verbosity while reporting hash collisions adds 789162276d00 [Bolt][NFC] Change capitalization s/BOLT/Bolt/g adds a7d025139f37 Revert "[Bolt][NFC] Change capitalization s/BOLT/Bolt/g" adds 221107c5fb06 [BOLT] Update llvm.patch adds 35c09dc4ddbc [BOLT] Add a user friendly error reporting message adds 3ab2929b36cc [BOLT] Fix support for PIC jump tables adds 1baa2529ea57 [merge-fdata] Support legacy/non-YAML profile format adds 8f717dd25ecc [BOLT] Add initial bolt-only test infra adds 5b2eab653809 [BOLT] Fix call to evaluateX86MemOperands adds 72ecd12f2fae Disable -split-eh in non-relocation mode adds 07353e9590ac [BOLT][PR] In some cases DB could be nullptr adds 8835f90d1e24 [X86] Support a subset of internal calls adds 6802948028b5 [BOLT] Allow jump tables with 2 entries adds edc0cb1121a1 [LLVM] Accept `S` in augmentation strings in CIE adds a6a37995d916 [BOLT] Reject processing of PIE binaries adds 365613b40407 [BOLT] Fix no-assertions build adds d7b2474f8359 [DebugInfo] Change default value of FDEPointerEncoding adds b447979b8c35 [BOLT] Fix diagnostics printing in data aggregator adds 64c429da895e [LongJumpPass] X86 enablement. First attempt. adds 207ac19c638b Revert "[LongJumpPass] X86 enablement. First attempt." adds b6c4d8e924d3 -- Adding Veneer elimination pass and Veneer count to dyno stats. adds 544d1577c1d9 Avoid removing BBs referenced by JTs adds 12380b8b0672 Fix assembly after adding entry points adds 66e0313d1526 [perf2bolt] Accept `-` as a valid misprediction symbol adds 44a36937f878 [BOLT] Fix llvm-dwarfdump issues adds 7aee0adbf9a5 [BOLT-AArch64] Create cold symbols on demand adds f2f164f47434 [perf2bolt] Fix perf build-id matching adds 6e45f5aeec0b [perf2bolt] Enforce file matching in perf2bolt adds 27f30324478a Add initial function injection support adds ddfcf4f266d2 [BOLT] Add parser for pre-aggregated perf data adds 631da736b0f2 [BOLT] further speeding up cache+ adds 49920a8fad09 [BOLT] Add R_X86_64_PC64 relocation support adds 771d9765435f [BOLT][NFC] Minor code refactoring adds fe9f8219faba [BOLT] Fix TBSS-related issue adds df947861199e [BOLT] Fix range checks adds 39f6fcc947bd [BOLT] Add support for IFUNC adds 06e1554158a9 Retpoline Insertion Pass adds c35dc2a38635 [BOLT] Detect and handle fixed indirect branches adds b2382dc5527d retpoline insertion : further updates. adds b10d4724c386 [BOLT] Fix pseudo calculation in BinaryBasicBlock adds 560c23411a00 [perf2bolt] Use mmap events for PID collection adds 87788ca92655 [perf2bolt] Support profiling of PIEs and .so's adds 88bb14516499 [BOLT] Update allocatable relocation sections adds 510a8c4bbe56 [BOLT] Fix shrink-wrapping CFI update adds 9c4fcafa37ba [BOLT] Add update-build-id option, on by default adds af1177d99f36 [BOLT] Add mattr options to AArch64 target adds a7e0704be671 [BOLT] Reduce AArch64 target feature flags adds 2511b09985e7 [BOLT][DWARF] Fix line info for empty CU DIEs adds 708a55008477 [BOLT] Fix profile after ICP adds d0a80b08703e [BOLT] Change ForceRelocation behavior adds 69e6004a4292 [perf2bolt] Fix processing of binaries with names over 15 [...] adds cd19f718b4cb [BOLT] Merge jump table profile data adds 41ed5431a01f [BOLT] turning on the compact aligner by default adds 8026760ac041 [BOLT] Fix another issue with profile after ICP adds 53b72d0f2eeb [BOLT] Ignore symbols from non-allocatable sections adds 1387a9d76165 [BOLT] Keep .text section in file when using old text adds bd0b99c45d13 [BOLT] Change stub-insertion pass for AArch64 adds ce508b58c6e9 [BOLT] Support relocations without symbols adds cc2276d3f1f8 [BOLT] fix build with gcc-4.8.5 adds c3c80822a356 [BOLT] Capitalize i adds b166ccbea800 [BOLT][PR] Fix compiler warnings in BinaryContext and RegAnalysis adds 74a71c681216 Fix bug in analyzeRelocation for GOT entries adds a76b13d48e41 [perf2bolt] Pre-aggregate LBR samples adds 30fd960951b8 [BOLT] Update local symbol count in symbol table adds 40d9fcfdcadb [BOLT] Workaround for Clang de-virtualization bug adds e1b8fade7fa6 [BOLT] Add branch priority policy for blocks with 2 successors adds b0f7fddd3505 [BOLT] Add method for better function size estimation adds 067a3850006e [BOLT] Add thresholds for function splitting adds 2fe0c38d6b3d [perf2bolt] Better tracking of process forking adds c6ce2abb7d71 [perf2bolt] Optimize memory usage in perf2bolt adds af81c7ff803a [perf2bolt] Add support for generating autofdo input adds 365bd1f1c8f4 [BOLT] For non-simple functions always update jump tables [...] adds ff6e21290f01 [BOLT] New inliner implementation adds 0c704eb75a13 [BOLT-HEATMAP] Initial heat map implementation adds c593563d1f96 Do not assert on addresses read from processIndirectBranch adds a9e64947c5d7 [NFC][BOLT] Move ExecutableFileMemoryManager into its own file adds 163adbec9fa4 [BOLT] Refactor allocatable sections rewrite part adds 0a55001a0e2c [BOLT] Fix -hot-functions-at-end option adds 61ea19edf834 [BOLT][NFC] Fix compilation warnings adds 17cd2034f3db [BOLT] Fix debug line info emission adds 6bcb3389dd7d [BOLT] Place hot text mover functions into a separate section adds b8d3dc40ea06 [BOLT] Use local binding for cold fragment symbols adds 69faf6137243 [BOLT] Fix section lookup while deleting symbols adds d1b76f2ac2fe [BOLT] Allocate enough space past __hot_end for huge pages adds 297d1a4e1a75 [BOLT] Do not write jump table section headers adds 8894853f42b8 [BOLT][DWARF] Dedup .debug_abbrev section patches adds 7fd487066f6f [BOLT] Move BinaryFunctions into a BinaryContext and more adds c8a927696cf4 [BOLT] Detect internal references into a middle of instruction adds 624a0e810d84 [DWARF][BOLT] Convert DW_AT_(low|high)_pc to DW_AT_ranges [...] adds 90996eb54b90 [PERF2BOLT] Print a better message if perf.data lacks LBR adds 7d89b113d86a [BOLT][NFC] Indentation fix adds a8e05d067d4e [BOLT] Add interface to extract values from static addresses adds 88375d311e0c [BOLT] Sort basic block successors for printing adds 315ae74de39a [BOLT] Include <numeric> for std::iota adds e50e89be9e59 [BOLT] Handle R_X86_64_converted_reloc_bit adds 8f982685183a [BOLT] Reduce warnings for non-simple functions adds 27dcec971717 [BOLT] Abort processing if the profile has no valid data adds 22ba3dc8166f [BOLT] Add another section to the list of hot text movers adds 31fc56b313cb [BOLT] Fix adjustFunctionBoundaries w.r.t. entry points adds ffae5e73f3fb [BOLT] Fix an issue with std:errc adds 99ef4c90c160 [BOLT] Basic support for split functions adds 433f3e3e02af [BOLT] Process CFIs for functions with FDE size mismatch adds 3b422eafd027 [BOLT] Fix non-determinism in shrink wrapping adds d9f1bd42fd06 [cmake] Only build enabled targets adds eba1a67730f8 Fix casting issues on macOS adds 4e4d39c21cb6 [BOLT] Update symbols for secondary entry points adds 91b2de3c23c1 [BOLT] Minimize BOLT's diff with LLVM by removing trivial [...] adds 492e4a515ea0 [BOLT] Automatically enable -hot-text adds 5717b0c427d3 [perf2bolt] Fix print report for pre-aggregated profile adds caa0fafa18e4 [BOLT] Fix profile reading in non-reloc mode adds 21ee0e98c716 [BOLT] Fix symboltable update bug adds 2b1523362eb0 [BOLT] Strip debug sections by default adds f1dfd38dece6 [BOLT][NFC] Move DynoStats out of BinaryFunction adds 310b32fbe578 [BOLT] Limit jump table size by containing object adds 4b55967d9e99 [perf2bot] Pass `-f` flag to perf adds fee61231ef2c [BOLT] Move JumpTable management to BinaryContext adds f1fde4415459 [BOLT] Improve ICP activation policy and hot jt processing adds 4755825447d4 Parse statically defined tracepoint markers from .note.sta [...] adds ca659e4336ba Preserve nops that are SDT markers in binaries and disable [...] adds d047df12c5fc [BOLT] Add an option to specialize memcpy() for 1 byte copy adds be344c8de7ca [BOLT] Refactor handling of interproc refs adds f57d3c00fcb3 [BOLT] Better verification of jump tables adds e5b1d9cd8c8a [BOLT][NFC] Fix white space adds c8038da36e2c Minor-fix: remove duplicate definition of SPT optimization [...] adds 9ef9a7b1be10 [BOLT] Use regex matching for function names passed on com [...] adds 3df2c9ea1f09 Update SDT locations after bolt reordering adds 21f4303bfd01 Support data collection in bolted binaries adds d3c1821f5fcb Compile Bolt using std 14. adds fac6a89c237f [BOLT] Better handling of address references adds 9df5063c0e16 [perf2bolt] Option to use event PC with LBR stack adds 66cf16208fa7 Use singleton instances for SPT (stack pointer tracking) i [...] adds 9e2ad3f59391 [BOLT] Delay populating jump tables adds 9894de00940b [BOLT] Check instruction boundaries while populating jump tables adds 1ec091e6f56c Parallelize ICF Pass adds bda13b7dd8c3 [BOLT] Add option to print profile bias stats adds db02a1a142fb [BOLT] Ignore empty funcs in relocation mode adds 0d23cbaa5268 [BOLT] Initial experimental instrumentation pass adds 459add2827d4 [BOLT] Force non-relocation mode for heatmap generation adds 06e7a1e0595d [BOLT] Ignore false function references adds e89ad0db4baf [BOLT] Introduce strict relocation mode adds 078ece16911c [BOLT] Fix out-of-bounds entry points adds 4e90fc1e3b9b [BOLT] Prioritize Jump Table ICP target by frequency and i [...] adds 86b529bd543a run SPT in parallel, and split annotation allocator adds 00c252f6d80a Clean SPTMap in frame anaylsis in parallel adds f10d1fe0f3ef Run cleanAnnotations within frame analysis in parallel adds 3cfc76cdbfef Create a general interface to implement parallel tasks eas [...] adds 8880969ced9c [BOLT] Restrict creation of jump tables adds 1169f1fdd843 [BOLT] Support duplicating jump tables adds 9977b03fea5c Run reorder blocks in parallel adds 98539b0966e1 run aligner pass in parallel adds f4ab6e69248a run finalize functions in parallel Summary: adds 7d428354181b Run buildCFG in disassembly in parallel adds fde5a2b470c1 Run shrink wrapping in parallel adds 2c9c6b164b23 [BOLT] Fix issue printing CTCs without annotations adds 86800abc8135 [BOLT][PR] Target compilation based on LLVM CMake configuration adds b50500893ddb Lock-based parallelization for updateDebugInfo adds 744a2417dd64 Run findSubprograms in preprocessDebugInfo in parallel adds 98fdba2cc765 [BOLT][NFC] Fix white space adds 672287504716 [BOLT] Fix processing PLT without relocs adds a9b9aa1e025c [BOLT] Add code padding verification adds 6443c46b9dbf Run hfsort+ in parallel adds 1bce256e677c Fix race condition in buildCFG adds 79ff4ec1cb17 [perf2bolt] Enforce strict mode for perf2bolt adds 8d5854ef0927 [BOLT] Add option to verify instruction encoder/decoder adds 5084534699d4 Rewrite ICF using parallel utilities adds cc8415406c7b Rewrite frame analysis using parallel utilities adds c1564a10263c Add test for parallel mode adds f77cccf6811c Rename option adds 62aa74f8369f [BOLT] Support instrumentation via runtime library adds 821480d27f39 [BOLT] Encode instrumentation tables in file adds bf030f336ab1 [BOLT] Fix misleading output adds f588d7a6ea3d [BOLT] Tighter control of jump table detection adds 243507db990d [BOLT] Fix aggregator w.r.t. split functions adds 1f6564f1176c [BOLT] Support .plt.got section adds 52786928ff66 [BOLT] Fix perf2bolt race in BAT mode adds cc4b2fb61425 [BOLT] Efficient edge profiling in instrumented mode adds 8cd1ba599b7c [BOLT] Ignore LBR from kernel interrupts adds 615a318b604d [BOLT] Filter perf samples by PID adds e9c6c73bb875 [BOLT][non-reloc] Change function splitting in non-relocat [...] adds c8232201165d [BOLT] Better check for compiler de-virtualization bug adds 5e6d246b9cee [BOLT] Reword message for macro-op fusion optimization adds ba31344fa92f [BOLT] Fix build for Mac adds c9f4bbdc22be [llvm-bolt] Bugfix jemalloc sized deallocation segfault adds 13948f376d5c [BOLT] Do not emit BAT for non-simple in nonreloc adds 8c6ea8540a33 [BOLT] Improve object discovery runtime adds d87f95065a2f [BOLT] Add missing CMake test dependencies adds 698a4684ac81 [BOLT] Fix merge-fdata and heatmap in BAT adds 103b0a77cc46 [BOLT] Fix non-determinism while reading debug info adds b807641e2a8a [BOLT] Fix stale functions when using BAT adds 12aca4005c72 [BOLT] Ignore __builtin_unreachable destination adds 8fb6512a2384 [BOLT][Docs] Instructions for linking with jemalloc/tcmalloc adds a3295715e4ef [AArch64] Recognize one extra br idiom adds ed8be23e73f2 [BOLT][llvm] Reduce memory used by MCInst adds 1ed3ac17ffce [BOLT] Fix section offsets after debug stripping adds a1388308f0a0 [BOLT] Use NameResolver class for local symbols adds 98e63610b19c [BOLT] Create OffsetTranslationTable for basic blocks adds f2b257bec892 [BOLT] Update SDTs based on translation tables adds d5ddb320ef5b [BOLT] Free memory for CFG after emission adds 72b52edcbb28 [BOLT] Free more memory in BinaryFunction::releaseCFG() adds 6796b7216b53 [BOLT] Fix jump table analysis for non-simple functions adds 95a1c7f5537a speeding up ext-tsp adds 3b1b9916dde9 [BOLT][NFC] Refactor data section emission code adds b07e870d785f [BOLT] Add BinarySection::flushPendingRelocations() adds 658f270417c7 [BOLT] Refactor data PC relocations in BinaryContext adds a09659fd5418 [BOLT] Refactor markAmbiguousRelocations() adds 7350d40404ba [BOLT][NFC] Refactor BinaryFunction::addEntryPoint() adds 3cc4fc267b35 [BOLT] Proper support for -trap-avx512 option adds 4bcc53a408b6 [BOLT] Fix shrink wrapping empty BB issue adds 28f91871b372 [PERF2BOLT/BOLT] Improve support for .so adds 8e2d3f7c3066 [BOLT] Fix invalid abbrev error when reading debug_info se [...] adds 112c4251f585 [BOLT] Separate DebugRangesSectionsWriter into Ranges and ARanges adds 6f93d53bf51e [BOLT] Remove test for impossible debug ranges condition adds e5d1334ad5f4 [perf2bolt] Ignore mmap events unrelated to execution adds bdb60857e83b [BOLT] Make .debug_loc update deterministic adds e46d52de5b1c [BOLT] Fix non-determinism in ICP with threads adds 16a497c627d9 [BOLT] Support full instrumentation adds d414acfbb6eb [perf2bolt] Better mmap event matching adds 9aa276d34978 [BOLT] Make .debug_loc update deterministic adds de284bc510b8 [BOLT] Fix symbol table entries for secondary entries adds 8c7f524afb38 [BOLT] Fix build of the runtime on OSX adds 088e3c032ac7 [BOLT] Improve handling of secondary function entry points adds 45b27d7b44aa [BOLT] Get rid of Names in BinaryData adds 0283271f29dc [BOLT] Do no report error on mismatched instruction encoding adds 961d3d02d894 [BOLT] Move postProcessEntryPoints after disassembly adds 7a59783d7a05 [BOLT] Move createBinaryContext to BinaryContext adds ac697b7d3a3b [BOLT] Replace list of Names with Symbols for BinaryFunction adds d57513e4ab8d [BOLT] Fix symbol table issue with ICF adds 0080d74506fb [BOLT] Fix issue with strict and builtin_unreachable adds 41de03b8e900 [BOLT] Fix section names under `-generate-link-sections` adds c3c4b15a2e1c [BOLT] Remove BinaryContext::getFunctionData adds d5b8fc8fbed5 [BOLT] Make the methods isText/isData more robust adds c82e7fd1cc26 [BOLT] Decoder cache friendly alignment wrt Intel JCC Erratum adds 58a129a602b1 [BOLT] Move peepholes pass after sctc adds 36cf37c4c134 [BOLT] Add initial bits for parsing MachO files adds 754b6569f6f6 [BOLT] Add missing std::move adds 16630f5c580e [BOLT] Factor out NameResolver from RewriteInstance adds 9711286858a9 [BOLT] Get rid of BinarySection::IsLocal adds a9d85413acc7 [BOLT] Emit long nops by default adds 5b64bf212879 [BOLT] Disassemble functions from a MachO binary adds 4ad5048393c1 [BOLT] Add first bits to build CFG adds 76aa1c26aa3a [BOLT] Enable reversing the order of basic blocks adds be43f89c4f37 [BOLT][llvm] Update llvm.patch adds 01b7c9024268 [BOLT] Add missing override adds 3b45212e84ad [BOLT] Delete ExecutableFileMemoryManager::registerNoteSection() adds 495761dc7045 [BOLT][NFC] Remove unused BinarySection member functions adds 2df4e7b99ed5 [BOLT][NFC] Minor refactoring of RewriteInstance adds 340da8f294e5 [BOLT] Fix shrink wrapping to check pops adds d89bb53afa93 [BOLT][NFC] Factor out relocation processing adds b0cbb601655e [BOLT] Fix begin decrementing adds c7e012e145fd [BOLT][NFC] Get rid of BestFit parameter adds cb9c991dcbe4 [BOLT] Remove allow-section-relocations option adds 842a25f785cc [BOLT] Mark functions containing data as non-simple adds e3654fc27485 [BOLT] Uniquify names of local symbols adds af553124d330 [BOLT] Refactor emission of original .eh_frame adds 74a2777c5484 [BOLT] Refactor ELF parts of instrumentation code adds 1f3e351a9c77 [BOLT] Refactor code and data emission code adds a07f1a26e78a [BOLT] Refactor section prefixes adds bbbf679b426e [BOLT] Refactor ELF symbol table rewriting code adds 58b0d9e7b0fa [BOLT][DWARF] Add support for base address in DWARF locati [...] adds b08d82d91be1 [BOLT] Verify exceptions action table equivalence in ICF adds abda7dc6a722 [BOLT] Fix ICF non-determinism in non-relocation mode adds ee0371ad97c3 [BOLT] Speedup ICF by better function hashing adds 401fa5b493fc [BOLT] Further speedup ICF adds 6dbd15bc019e [BOLT-X86] Fix instrumentation issue with indirect calls adds 1be7a8254097 [BOLT] Speedup RTDyld external symbol resolution adds 606532bdf19f [BOLT] Fix .eh_frame update with ICF in non-relocation mode adds 10245b5c5bbe [BOLT] Emit ICF symbols for large functions adds 23edb3ed9ce7 [BOLT] Option to control .text alignment adds 33e0b2aa5806 [BOLT] Do not emit old .eh_frame in relocation mode adds 0ea98d1f0b45 [BOLT] Option to fail if invalid profile detected adds fbca177a83e4 [BOLT] Speedup PLT processing adds ac1af09e8289 [BOLT][NFC] Change wording while reporting functions stats adds 5296b6d12ac0 [BOLT] Change symbol handling for secondary function entries adds ac36e17a73c7 [BOLT][BFC] Refactor code for adding secondary function entries adds b62a1774af28 [BOLT] Cover PIC jump table reference in non-strict mode adds 4e69764c659f [BOLT] Fix dyno stats after ICF in non-reloc mode adds 04c5d4fcab08 [BOLT] Introduce isIgnored() function attribute adds 924d0bdb08a3 [BOLT] Introduce lite processing mode without relocations adds 7b61bdf8ea97 Check runtime lib format within archiver adds 96c4168ddc52 [BOLT] Ignore kernel interrupts by default adds 689447bf1086 [BOLT] Change .debug_line emission for non-simple functions adds f91d121eee5f [BOLT] Add option to tag version adds cce49b952256 [BOLT] Remove StringRef from IndirectCallProfile adds 872917118270 [BOLT] Refactor profile-handling code adds 8a680745dd58 Remove const call to take_front adds 2b65b3aa6b08 Use shuffle instead of random_shuffle adds cd067ae1e8e0 Emit functions on MachO adds 00892a5fd0fe Refactor runtime library adds 9bd71615290d Adding automatic huge page support adds 2d524fd5e22f [BOLT] Update section index for symbols from unemitted functions adds 48b71ad219c1 Generate heatmap for linux kernel adds 7950e1e5bb60 Provide a redundant declaration of KernelBaseAddr adds 0823882d47b8 Link functions on MachO adds e22378d20aa2 Be more flexible when locating runtime libs adds 0ce0bce9e72e [BOLT] Support for lite mode with relocations adds e7c34642269d [BOLT] Disable trapping on AVX-512 by default adds db4642d0a68a [BOLT] Support -hot-text in lite mode adds 15fffe282400 [BOLT] Fix memory error adds 8374e8e3fedc [BOLT] Properly register symbols at secondary entry points adds 0403adde327d [BOLT] Fixes for scanExternalRefs() adds efce443e0da6 [BOLT] Create entry points for internal refs from external code adds 12b7987d4fc3 [BOLT] Ignore functions that failed validation adds ae296ea66582 [BOLT] Allow to overwrite -use-old-text option adds 4946b881a825 [BOLT] Fix getNewValueForSymbol() adds 13baf47a3cdc [BOLT] Add '-force-patch' to forcefully patch old entries adds 4aaa8892ddbe [BOLT] Ignore duplicate relocations adds 94230a2c074a [perf2bolt] Relax rules for aggregation in strict mode adds 250ca4082ece [BOLT] Add static binary support adds ffaba22476f0 [BOLT] Do not emit duplicate org symbols adds 41cb6b68ed07 Update X86/pre-aggregated-perf.test adds 26ad0bd9519e [TESTS] Re-add issue20/issue26 tests adds e233dec4676d [BOLT] Skip R_X86_64_PLT32 relocation verification adds 84eae1a413a9 [Bolt] Improve coding style for runtime lib related code adds a9fac6a89fac Support for CDF distribution of heatmap buckets adds 3e795c8a5f32 [BOLT] Ignore addresses from non-allocatable sections adds f40ffa0dc8b9 Report stale sample count and percentage adds 181327d7633f [BOLT] Add the FeatureMiner pass to extract Calder's features. adds 170f73ac9e1c [BOLT] Fix fix-branches in presence of JRCXZ and friends adds 6c8fc28892c7 Revert "[BOLT] Add the FeatureMiner pass to extract Calder [...] adds 937244b4f248 [BOLT] Allow to specify -reorder-functions option multiple times adds f7d4bed9d1bf Extracted sequence insertion function into helper function adds 6b89a9cb444a Handle intra-function call in instrumentOneTarget adds ed029462816e [BOLT] Fix hot_end symbol update with user function order adds c6799a689df7 [BOLT] Fix stack alignment for runtime lib adds 8f7cb54ae5a7 Added execution count threshold option adds 8f2a96286605 [perf2bolt] Fix for SKL bug workaround adds 0033a7612d54 Linux kernel marker to update special sections adds 6547813d1fb6 Print when we are operating in lite mode adds 8b989765f63c Add first bits to support emitting more than 255 sections [...] adds aaf49b095f58 [perf2bolt] Issue error when writing YAML for BOLTed input adds 9bc4a8db18bb Fix BAT cold-to-hot mappings adds 8c4ba8f16550 Bugfix for splitting critical edges in shrink wrapping adds 62469b503671 [BOLT] Do no map sections with zero address adds a82cff0f52a8 [BOLT] Eliminate "shallow" function lookup adds a10f799290e6 [BOLT][Linux] Initial support for special Linux Kernel sections adds 0601ae643859 Set InputFileOffset for MachO sections adds d1ec11b28f4d postProcessEntryPoints: return after setIgnored and setSim [...] adds 2808c800e8c2 Read the entry point address on MachO adds d7fb998637a2 [BOLT] Fix sign issue when validating X86 relocations adds 71e185f2dac6 Add -check-overlapping-elements option adds 59c21b42dacf Precompute symbol section indices on MachO adds 35632d4828c0 [BOLT] Refactor relocations class impl per arch, NFC adds 0376abe252a1 Add ToolPath field to MachORewriteInstance adds 0465d952cc9f [BOLT] Refactor PatchEntries pass adds 843309c07575 [BOLT] Disable PatchEntries in non-relocation mode on ELF adds 7f1fd807622c Add support for emitting code into a new segment on MachO adds c27e25405629 [BOLT] Change label name for cold fragments adds 528da5d7955b Fix handling of _end symbol on MachO adds 247b4181a306 [BOLT] Emit symbol size for functions adds 473a6199ab0b Add first bits to support emitting instrumented code on MachO adds 9f15b9f3c21e [BOLT] Fix debug line info in lite relocation mode adds 53bd88c7fe2b [BOLT] Refactor reading of debug line info adds 0b6df06e0434 [BOLT] In shrinkwrap, do not split prefix/instr adds bbd9d610fe62 Add first bits to cross-compile the runtime for OSX adds f15532c2aa48 [BOLT][DWARF] Streamline processing of DWARF unit DIEs adds 6133d2598b1b Inject a hook into the entry point on MachO adds e4396c41da02 [BOLT] Ignore __hot_start, __hot_end from input adds d6d88399fce4 [BOLT] Enable lite mode by default with relocations adds d91add0bfe52 [BOLT] Fix PatchEntries pass adds 5f2f96c4c958 Add pass number to dot dump filename adds 6b185cccf464 [BOLT] Always keep dynamic symbols defined adds eb12d719ac3a [BOLT] Fix no-asserts build adds 3e78082c1b61 [DOCS] Add instrumentation instructions to README adds 37921b489a69 [BOLT] Please sanitizers adds c1bb4dcb2b87 [BOLT] Remove threaded EliminateUnreachableBlock version adds 4f4239cebadc [BOLT] Fix C++ exceptions for shared objects adds 58460460d9a7 [BOLT][PR] Handle TLS relocations on AArch64 adds 54522877105e Extract BinaryContext::registerFragment adds dc48354f71cf processInterproceduralReferences: record references to col [...] adds 2b09d672ce89 Conservatively handle jump tables in split functions adds f86a78a4e756 Lost in rebase: call registerFragment with a reference to [...] adds c36b71686ca9 Improve cold fragment name matching adds e54d3897991e [BOLT] Disable DynoStats printing after SCTC adds c0cb55053604 Minimize X86/shrinkwrapping-critedge test case adds 157129b751ee [BOLT] Debug logging in analyzeJumpTable adds e8234b3b989e [BOLT] Add invalid offset for a JT entry pointing to a fragment adds 6401af89c730 [BOLT] Support jump tables in split fragments with entries [...] adds 1e9b73300802 a new version of hfsort+ adds 7eaf63a118d6 [BOLT] Fix data race while running split functions pass adds 1cf23e5ee8bf Link the instrumentation runtime on OSX adds f9d00d418b3e [BOLT] Handle insertion of updated CFI at the first basic block adds 1b258b890849 Refactor syscall wrappers for OSX adds e067f2adf4e4 Inject instrumentation's global dtor on MachO adds d2f68039bc42 [BOLT] Fix shrinkwrapping bug when changing frame alignment adds e0261a22ce21 [TEST] Remove dependency on debug output adds e3898d5969ad [BOLT] Add threshold options for lite mode adds 0de92b834605 [PERF2BOLT] Relax segment matching requirements adds a86cd533b3a8 [BOLT] Fix missing newlines in debug prints adds faaefff618ca [BOLT] Fix operator new signature adds d6e60c5becfd [BOLT] Enable intToStr for MacOS adds fea6b4e4691e an updated version of ExtTSP adds 6a84124e1d19 [BOLT] Add support for __literal16 section on MachO adds 3b876cc3e776 [BOLT] Add support for dumping counters on MacOS adds a0dd5b05dcf7 [BOLT] Add support for dumping profile on MacOS adds 0a8aaf56bb58 [BOLT] Add support for reading profile on Mach-O adds 1c5d3a056c4a Rebase: Merge BOLT codebase in monorepo adds 16521f1f7906 [BOLT] Update license headers adds 0ec91a25df05 Update DW_AT_stmt_list for .debug_types adds da752c9c5c20 Fix license for a few remaining files adds 06959eedcfe3 Fix up test for Update DW_AT_stmt_list for .debug_types adds ec9751eef5b7 [BOLT][PR] readDynamicRelocations: Skip NONE relocations adds 225a8d7f2c01 [BOLT] Ignore TBSS section at layout time adds 76d346ca14d4 [BOLT][PR] Instrumentation: Introduce -no-counters-clear a [...] adds b11c826889d9 [BOLT] Fix false references to zero-sized objects adds b3c34d568adc [BOLT] Fix instrumentation bug in duplicated JTs adds e7169be93faf [BOLT] Do not assert on jump table heuristic failure adds 081e39aa150a Rebase: [cherry-pick] [BOLT] Add option to skip writing an [...] adds f1bfb18ceb66 [BOLT] Refactor SectionPatchers map to a Patcher in BinarySection adds 35732d954b5b [BOLT] Remove cantFail in getAddressRanges calls adds dc2673a03958 [BOLT] Fix value invalidation bug in runtimelib adds c7306cc21987 Rebase: [BOLT][NFC] Expand auto types adds f84f451a54a4 [BOLT][NFC] Use const reference for MCInstrDesc adds 3355936e145c [BOLT][NFC] Remove RewriteInstance::EHFrame adds f8fa3e97d5b3 [BOLT] Remove -dump-eh-frame option adds bd86c06c1b32 [BOLT][NFC] Remove CFIReaderWriter::fdes() adds 52391820757e [perf2bolt] Further relax segment matching adds eb99a6665c6e Rebase: [BOLT][NFC] Remove unneeded includes with include- [...] adds 94653797f38f Rebase: [BOLT][NFC] Avoid binutils in tests adds 9a884543f167 [BOLT][NFC] Avoid unnecessary copies with push_back adds ce84e9607a41 [PR] Fix bb reordering optimization adds de298c08fd87 [PR] Fix tests build with -no-pie option adds b728bfc70a8d [PR] Add missing includes adds fe37f1870e28 [BOLT][NFC] Follow LLVM variable initialization style adds 500edf26c95e [BOLT][NFC] Address warning about ProgramPoint implicit co [...] adds 81c59d9a54ed [BOLT][NFC] Change interface for searching relocations adds ba6fdb811310 [BOLT] Preserve original jump table relocations adds 99d7f9063502 [BOLT][NFC][TEST] Added llvm-dwarfdump and llvm-mc to BOLT [...] adds 12e9fec69742 Rebase: [BOLT] DebugFission Support adds 79807d99fe96 [PR] Introduce loop inversion pass adds 5a6c379f5b94 [PR] Instrumentation: Emit paddings to preserve data alignment adds a26370389a3e [BOLT][NFC] Disable ProcessAllSections in RuntimeDyld adds 1c06193d0f4f [BOLT] Resolve JumpTable namespace issue in pseudo probe d [...] adds 65d227c03557 [BOLT][TEST] Fix test case to conform to analyzePICJumpTab [...] adds 7bccf8d25d6f [BOLT][NFC] Fix debug info printouts for inlined functions adds 2da5b12a3dcf [BOLT] Hugify: check for THP support via sysfs adds 226d1c3b0bbd [BOLT] Change how DF DWO logging is handled adds 8a919593c784 [BOLT][CSSPGO] Pseudo probe decoding adds f7f0a571d7e1 [BOLT][NFC] Suppress addList override warning adds 1efadeedf26a [BOLT] Fix rodata load simplification pass adds 2cf9008a60a7 [PR] Instrumentation: Disable signals on mutex lock adds a8b931953627 [PR] Patch allocatable relocations for AArch64 adds e485a9830b69 Rebase: [BOLT][DebugFission] Fix reading support for DWP adds ba915af1cd7d [PR][BOLT] Print revision in perf2bolt and bolt-diff modes" adds bbbd159ccb1c [BOLT] Fix undefined symbol warnings/errors adds be0da0fac27b Throw an error in instrument for dynamic libs adds f46af9e9bc1c [BOLT][TESTS] Fix ICF test case adds da276d73c735 [BOLT] Handle R_X86_64_64 in flushPendingRelocations adds 521a61b0560a [BOLT][NFC] Use MCPlusBuilder::isPseudo adds dea6c247d937 [BOLT][CSSPGO] Relate decoded pseudo probe basic blocks adds b964e852d569 [BOLT][NFC] Readability improvements in X86,Aarch64 MCPlusBuilder adds ef1b1e7184f7 [BOLT][NFC] Refactor handlePCRelOperand adds 38c58879928d [BOLT][NFC] Always process runtime relocations adds 8f7a400629d2 [BOLT][NFC] Delete MoveRelocations entirely adds 8f751bc0581f [BOLT][NFC] Un-inline adding external references out of di [...] adds c7c0803b5961 [BOLT][NFC] Un-inline indirect branch handling out of disa [...] adds a07d24cc4bd1 [BOLT][NFC] Un-inline checking AArch64 linker veneers out [...] adds 3e5ce1f28214 [BOLT][TESTS] Remove dynamic relocations from YAML tests adds f7499c671191 [BOLT][DWARF] Fix writing out dwo with DWP as input adds 1de0746790d0 [BOLT] Read all dynamic relocations and refactor code adds 4c12afc1f459 [BOLT][NFC] Resolved all clang-12 warnings for bolt adds c9f5f47b518c [BOLT] Add support for .plt.sec and refactor PLT-reading code adds 60b15062e16a [BOLT] Dump dynamic execution per instruction opcode adds 2f466605595f [BOLT] Tail duplication analysis pass adds 3e55dea4dd1e [BOLT][CSSPGO] Encode pseudo probe section to binary adds 0df7bf7b8b84 [BOLT][CSSPGO] Handle indirect call promotion in Pseudo Pr [...] adds 68be8caf3f27 RewriteInstance: account .stab and .stabstr as debug sections adds a7e2a8f94686 [BOLT] Tail Duplication active pass adds c33f08e7df51 [BOLT] Update build instructions in README adds 89a2e1603770 [BOLT] Support PLT sections with variable entry sizes adds 60b10a8eade6 [BOLT][NFC] Unify isTailCall interface across X86 and AArch64 adds ad79d51778e3 [PR] Instrumentation: Generate and use _start and _fini tr [...] adds 6665c628eab6 [PR] Instrumentation: Add readlink and getdents support adds 2ffd6e2b430e [PR] Instrumentation: Add support for opening libs based o [...] adds 9b39a823ea21 [PR] Instrumentation: Initial support for static executables adds 361f3b5576c4 [PR] Instrumentation: Fix runtime handlers for PIE files adds 285ac26d169b [PR] README: remove note about experimental status of inst [...] adds 519cbbaa9a4e [PR] Instrumentation: Introduce instrumentation-binpath argument adds 553f28e9217d [PR] Instrumentation: Fix start and fini trampoline pointers adds af58da4ef3fb [PR] Instrumentation: Avoid generating GOT table in instru [...] adds 900914d3c66b [PR] Tests: add instrumentation tests for PIE exec & shared libs adds d217e2f338a0 Rebase: [BOLT] DWP output support adds faee814fb945 Fix NFC tests adds 8459c14c688a [PR] Fix AARCH64 ADR* relocations adds b64de0756985 [BOLT][NFC][PR] Removed unused singletonSet adds 2a5790b670a9 [PR] Fdata: Escape whitespaces in symbol names adds ef6186c822f3 [BOLT] Added Constant and Copy Propagation to tail duplica [...] adds a1036e42dab5 [PR] Print relocations warning if failed to process adds c040431fe6d5 [PR] AArch64: Fix ADR instruction handling adds 3e8af67a95de [BOLT] Optimize the three way branch adds 23fc454f68bc [BOLT] Refactor to use new APIs for getting offset of attribute adds 856299594c67 [PR] ReorderAlgorithm.cpp: Fix iterator types adds e2480fcc984f [PR] LIT: add checking if maxIndividualTestTime is availab [...] adds 9aa134dc2d4c [PR] Instrumentation: use TryLock for SimpleHashTable getter adds 7b779f819f4a [BOLT] Fix binary corruption in non-reloc mode adds 47ce9b39e410 [BOLT] [NFC] Cleanup old code in mapCodeSections adds 1ca3a8b824d6 [NFC] Fix warnings when building with clang adds 48fbeb1a46f5 [BOLT] Fix warnings from LLVM DWARF reading library adds 542c03c3a3d1 [PR] Fix aarch64 TLS relocations handling adds 00c0659b1389 [PR] AArch64: Skip some of the relocations processing adds 43fffff671eb [BOLT][DWARF][NFC] Refactor code adds d4fdc98140fa [BOLT][TEST] Remove dependence on host_cc and host_cxx adds e1da1539e3a2 [PR] Add AARCH64_MOVW_UABS_G* relocations support adds 4d5cd1bf82ec [BOLT][DWARF] Write new .debug_abbrev sections adds 64db3e7b7ccc [BOLT][DWARF][NFC] Use only skeleton/main CUs to update .d [...] adds 122254bc35c5 [BOLT][DWARF][NFC] Get rid of updateRangeBase() helper function adds 6b4eb0b94a6d [BOLT][TEST] Split runtime tests into test/runtime folder adds 4157682fd925 [BOLT][TEST] Import internal_call_instrument.s adds 62550dd22cbe Rebase: [PR] Fix build instructions adds 47455e98b344 [BOLT][TEST] Imported small tests adds e3b901aaee0a [BOLT][DWARF] Fix abbrev offsets for type units adds ba1f503f1b8f [BOLT][NFC] Remove redundant code adds d4a0e8526aa9 [BOLT][DWARF] Move line info emission into BOLT adds 7b61cb78121e [BOLT][DWARF] Deprecate usage of DWARFAbbreviationDeclarat [...] adds e903671bbf6a [BOLT][TEST] Imported small tests, removed duplicate input adds 98bc9876fbf0 [BOLT][DWARF] Change line info emission for unmodified functions adds 8ef3b2783434 [BOLT][DWARF] Properly emit of end-of-sequence entries for [...] adds a8cbc8093f65 [BOLT] Do not process DWARF relocs adds c637fcf24ef7 [BOLT][NFC] Use const pointers in PrintProgramStats adds 848f07792c0f [PR] Update skipRelocationProcess adds e424d16f0e6e [PR] AArch64: Add TSTBR14 and CONDB19 relocations support adds b86c91eae05f [BOLT][TEST] Imported small tests adds 8ab49cb4aa52 [BOLT] link_fdata: accept symbols with slash in the name adds 5f953277a92d [PR] Handle relocations in constant islands adds 92e306de0ca6 [BOLT][TEST] Imported small tests adds c74e5bfee385 [BOLT][TEST] Imported small tests adds d41b4e6e2d26 [BOLT][TEST] Imported small tests adds 872013e0778f [BOLT][TEST] Imported small tests adds f44e1df9d0c3 [BOLT][TEST] Imported small tests adds 44e08ead3051 [BOLT][TEST] Imported small tests adds 01a81dca413f [BOLT][TEST] Imported small tests adds 9bb3908b61e1 [BOLT] Allocate memory for constant islands on-demand adds 93444ce8e88d [BOLT] Fix build after auto rebase adds 96bb09065364 [BOLT][DWARF] Use MCAsmLayout to update stmt_list values adds a2214e8f0dff [PR] Fix LongJmp pass adds 53ec21e3a10a [PR][BOLT][TEST] Fix tests adds fdd9184db54b [BOLT][DWARF] Refactor of Loc and LocLists writers adds 2d431eefbf49 [PR] Fix constant islands handling adds dcdd37fdc2ca [PR] Instrumentation: Sync file on dump adds dc4b32e1b10f [PR] Skip NONE static relocations adds cb8d701b7bbb [PR] Disable instrumentation and hugify build for aarch64 adds 32782574d2e7 [BOLT][DWARF] Keep original line info for unmodified units adds 10088a1e15b4 [PR] Fix warning adds 95ee12977b85 [PR] Introduce remove-symtab option adds 1ccc3d500ed9 [BOLT] Add Dockerfile adds 46bc197d72a6 [PR] bolt_rt: getBinaryPath() increase max file path adds a34c753fe709 Rebase: [NFC] Refactor sources to be buildable in shared mode adds 0559dab54632 [BOLT] Improve cmake configs for opensource adds 60b09997237c [BOLT][NFC] Do not pass BinaryContext alongside BinaryFunction adds 443f1b4ff458 Rebase: [BOLT] AsmDump: dump function assembly and profile info adds 85ffa8e4ba44 [PR][BOLT][Instrumentation] Optimize eflags load/store adds 172deb75947e [PR] Aarch64: Add ABS32/16 relocations support adds 45f94abcd954 [BOLT][DWARF] Fix rare problem while rewriting debug_abbre [...] adds 933df2a460ed [BOLT][NFC] Remove references to internal tasks adds 9ab066221181 [BOLT] TailDuplication: skip non-simple functions adds f808ea00bd77 [BOLT][TEST] Import small tests adds d1df113e3056 [BOLT][TEST] Add instrumentation test using merge-fdata adds 2e0ad6ffe42a [BOLT][TEST] Import small tests adds 8331f75e2866 [BOLT][TEST] Rename tests to follow standard naming scheme adds 3a16f2169d11 [BOLT][TEST] Import jump-table-icp.test, update link_fdata script adds a82502d4a84e [BOLT][NFC] AsmDump: disable printing of empty profile data adds c42d46727686 [BOLT][NFC] Remove unused function adds 0e7dd1aad161 [BOLT][TEST] Import small tests adds ae585be11cfa [BOLT] Fix Windows build adds 3b00a3a2f807 [PR] instr: change assert to allow FD 0 return by __open() adds 7ea61dab0374 [BOLT][TEST] Reduce vararg.test adds 1d0a276c7279 [BOLT][TEST] Import small tests adds c7f8adb87f1c [BOLT][TEST] Add llvm-boltdiff to build/test requirements adds 2f3285989ece [BOLT] Fix tailcall-traps and basic-instr tests on ubuntu adds 2ccea6eac349 Fix shared build adds 63bebdd8131b [BOLT][NFC] Change guard macros in headers adds 68b0003ee317 [BOLT][DWARF] Fix for Unsupported Debug section: debug_lin [...] adds a944a487ae2f [PR] Fix ShrinkWrapping pop order adds e9ee2ca1fa27 [BOLT][TEST] Fix runtime/X86/retpoline-synthetic.test adds d474dbdfcb17 [BOLT][NFC] Use function names passed in -funcs-no-regex as-is adds e4ccdfe84f84 [BOLT] Import bughunter script adds a23726bb3377 [BOLT] Fix crash when trying to resolve external symbols f [...] adds 4e4ef2f3e7ad [PR] Disable stack protection in runtime libraries adds 7261655d2c0a [BOLT] Tail Duplication: skip unreachable blocks adds 76cd07f9e40a [BOLT] Tail Duplication: fix jump table check adds eb9f4eb6abfa [BOLT][NFC] Better diagnostics for unsupported relocation types adds 4f91538f5769 [BOLT][NFC] Remove misleading debug message adds 02145d20ab34 [BOLT] Tail duplication: disable const/copy propagation by [...] adds 8e632eae569b [BOLT][NFC] Remove unused MCPlusBuilder::createIndirectCal [...] adds b69d487a626a [BOLT][NFC] Remove unused MCPlusBuilder::isEnter adds fd71cc51639f [BOLT][TESTS] Move debugTypesBug.s test into binary tests adds cbf530bf417e [BOLT] Add pass to normalize CFG adds b73c87bc4ffa [BOLT][DWARF] Force allocation of debug_line in RuntimeDyld adds a2a8fb10a743 Add code owners file adds 1417f607bd63 [BOLT][DWARF] Fix for abbrev check in DWP case adds a73b1b728987 [BOLT][NFC] Clear HFSort copyright/license adds ebe51c4d23de [BOLT] Use more ADT data structures for BinaryFunction adds bb201ca3e8c2 Disable Windows build adds 69706eafab6b [BOLT] Refactor BinaryBasicBlock to use ADT adds 6aa735ceaf63 [BOLT] Split functions: support fragments with multiple parents adds 5fc8adb529d6 Add bolt target to cmake adds 40c2e0fafe56 [BOLT][NFC] Reformat with clang-format adds 283a87743e41 Fix install-bolt_rt dependencies adds 4a4045f74081 [PR] Fix update-debug-sections for AArch64 adds 46e93fb42703 Fix frameopt crash when processing POPF adds 08f56926c2d2 [BOLT] Move disassemble optimizations to optimization passes adds ccb99dd1261a [BOLT] Fix profile and tests for nop-removal pass adds cf624f2e63db [BOLT][NFC] Remove unused function adds 226c9732806c [BOLT][NFC] Remove another unused function adds 07d9e014edf4 [BOLT] Don't use ld.lld in tests adds 4eb237e45d19 [BOLT][DOCS] Updated clang build instructions in Optimizin [...] adds 0f32a5e5e1c0 [BOLT][NFC] Clear HFSort copyright/license adds 2f09f445b2d6 [BOLT][NFC] Fix file-description comments adds 9a689946f247 [bughunter.sh][NFC] Fix license and file description adds 3652483c8ea7 [BOLTCore] [NFC] Fix braces usages according to LLVM adds b392ec696b6a Re-enable Windows build and fix issues adds e1eeef5b901f [BOLT][RFC] Use new LLVM license for ADRRelaxationPass adds 2d84e344d943 [PR][BOLT] Check for end iterator in LongJmp stub lookup adds ee0e9ccb52d0 [BOLTRewrite][NFC] Fix braces usages adds cd7a63058511 [BOLT][DOCS] Build doxygen documentation adds f92ab6af3534 [BOLT][NFC] Fix braces usage in Passes adds 3b01fbebeb9f [BOLT] Fix debug logging in IndirectCallPromotion adds 89ceb779970e [BOLT][NFC] Fix braces usage in Target adds def464aaaec2 [BOLT][NFC] Fix braces usage in Profile adds 883bf0e83d5a [BOLT][NFC] Fix braces usage in the rest of the codebase adds 513bbd3f365d [PR][BOLT] Add aarch64 backend code owner adds ccc4d4397fd2 [BOLT][DOCS] Link to README instead of the github page in Doxygen adds 1c2f4bbe9923 [BOLT] Rewrite of .debug_info section adds 6bb26fcb2015 [BOLT] removeAllSuccessors: handle multiple edges between [...] adds 9bf7a73787ac [BOLT][DWARF] Change convertToRanges to not use indirect adds 6b89327debf8 [BOLT][DWARF] Handling more data formats for DW_AT_high_pc adds df288e848741 [BOLT][NFC] Refactor if statements in RewriteInstance adds bc9032c7fa17 [BOLT][NFC] Use uniform DEBUG_TYPE for MCPlus builders adds e579f5c6e7c3 [BOLT][DWARF] Fix race conditions for debug fission in non [...] adds 330c8e42ab36 [BOLT][NFC] Refactor command line options in BinaryPassManager adds 4243b6582cf3 [BOLT][DWARF] Fix size mismatch error with jemalloc adds 1d3c15074823 [BOLT] Remove ineligible macro-fusion patterns adds 799cbbb7970a [BOLT][NFC] Reuse X86BaseInfo interfaces for macrofusion checks adds 82278a8f2991 [BOLT][NFC] Refactor X86MCPlusBuilder adds 8aab58ba6500 [BOLT][NFC] Refactor AArch64MCPlusBuilder adds b1a107db563c [BOLT][NFC] Format braced initializer lists adds 4c106cfdf7cf Merge BOLT into LLVM monorepo adds a81b0c978fd0 [NFC][MLGO] Remove the word "inliner" in a generic error message. adds 6bf20aa59030 [AIX] support xcoff for llvm-nm adds 75de92d3e25c [DSE] Seperate malloc+memset -> calloc transform from noop [...] adds 6bf590d6e86d [InstCombine] Pull out a helper function to simplify upcom [...] adds 0cf860ec1e3a AMDGPU/GlobalISel: Regenerate baseline checks to include -NEXT adds 5a434ceafbe7 GlobalISel: Use cloneVirtualRegister in localizer adds c0581f7df685 Revert D109159 : Revert "[amdgpu] Enable selection of `s_c [...] adds 4372e629a9a9 [AIX] add the xcoff symbol size for the llvm-nm. adds e7cb716ef955 [mlir][Linalg] Pattern to fuse pad operation with elementw [...] adds 85e6e748d426 [MCA] Switching from conservatively guessing which instruc [...] adds 6479f03daec1 [clang][#47272] Avoid suggesting deprecated version of a d [...] adds e3cf70502cae [libc++] Introduce __debug_db_insert_c() adds d5b5fc06b85a [libc++] Add Status page for P2321R2 (Zip) adds fcfc0e7ad34c [libc++] Introduce __fits_in_sso() adds 7ea175d1c6fa Add 'eager-checks' as a module parameter to MSAN. adds e9b5b815565b [NFC][llvm-libtool-darwin] Encapsulate the process of addi [...] adds 4993eff3e253 [llvm-libtool-darwin] Print a warning if object file names [...] adds c79d37279156 [sanitizer_common] Only use NT_GNU_BUILD_ID in sanitizer_l [...] adds 4614b93f5373 [TSan][Darwin] Mark test UNSUPPORTED for iOS simulator adds 9e634b35ff51 [libc++] Temporarily disable the in_out_result test on Fuchsia. adds ff11cd955019 [TSan][Darwin] Enable Trace/TraceAlloc unit tests adds 97567bde5baa [MLIR][SCF] Canonicalize while statement whose cmp conditi [...] adds 7acb68b80be6 [NFC] Fixup for comment adds 945aa520ef07 [LLDB][NativePDB] Add support for inlined functions adds b7f298f17416 [NFC][MLGO] Use ASSERT_TRUE in TFUtilsTest, where appropriate. adds b2715660ed0f [clang][CodeGen][UBSan] VLA size checking for unsigned int [...] adds 1f5dceb1d0d3 [MLGO] Add support for multiple training traces per module adds 97a5dccb7d3a [lld-macho] Rename LazySymbol to LazyArchive. NFC adds 0d1365e380b5 [libc++][test] Move iter_swap into iterator.cust.swap. NFC. adds f0b2a1a629da ASTMatchers: Avoid using SmallVector::set_size() adds d23fa4f2f131 [MLIR][SCF] Remove unused arguments to whileop adds 4d04526bf48d ADT: Avoid using SmallVector::set_size() in SmallString adds e976c457c5a3 [lld-macho] Initialize separate time trace profiler for ma [...] adds 3110060bc721 AST: Avoid using SmallVector::set_size() in UnresolvedSet adds 4d4439470eaf Support: Avoid SmallVector::set_size() in Windows code adds b0492d92adc5 Support: Avoid SmallVector::set_size() in Unix code adds 345223a7be3c Support: Extract sys::fs::readNativeFileToEOF() from MemoryBuffer adds 403772ff1ce5 [Coroutines] Enhance symmetric transfer for constant CmpInst adds bfd00ae31ea2 [lld-link] Change config and driver to unique_ptr adds bf95d5e33488 [gn build] (manually) port 85e6e748d426 (llvm/lib/Target/X86/MCA) adds 06c7bdc8f195 [lldb] Specify LLVM target requirements in TestLaunchProce [...] adds 37fc1a29cb41 [gn build] minor comment tweaks, no behavior change adds 248d55af3e44 [NFC][MLGO] Use LazyCallGraph::Node to track functions. adds 63b17eb9ec10 [RISCV] Add strictfp support for compares. adds 4a7890c67c42 [M68k][NFC] Add missing #endif comment adds 48fd67cff100 [M68k][NFC] Rename header guard of M68kSubtarget.h adds 171e4d1845a8 Update LLVM CMakeFiles to include BOLT adds 4ed8711520e5 [BOLT] README: address @apinski-cavium comment adds 876b5ea96bf5 [OpenMP][Clang] Allow passing target features in ISA trait [...] adds 65d39942dce1 [BOLT] Update README build instructions adds 96c66040125e Revert "[llvm-libtool-darwin] Print a warning if object fi [...] adds bbced7419991 [NFC] Remove invisible character in comments adds 8470bf2b0884 [AMDGPU] Do not reserve any VGPR for SGPR spills adds dc01fb1d726a [DAGCombiner][AArch64] precommit some tests for D116915 NFC adds aaa0c81683d8 [MLIR][LLVM] Add memoryeffect for alloca adds 2f8b956ab6e6 [MLIR][Math] Enable constant folding of ops adds d2c547342c6d Revert "[MLIR][Math] Enable constant folding of ops" adds 62790f366fbe [lld-macho] Try and fix map-file.s' flakiness adds 3fabda51a6d7 [JITLink] Use Section + Offset format for anon symbols in [...] adds c2ba53518f54 [ORC] Add an ostream operator for ExecutorAddrRange. adds 1f3d4525d87e [JITLink][AArch64] Use R-X permissions for the GOT. adds aad49c8eb984 [llvm-readobj][XCOFF] dump auxiliary symbols. adds fc61d07dc1e1 Add inliner interface for GPU dialect adds 99f7d55eeeec [clang][dataflow] Add transfer functions for data members [...] adds 22225cc5e665 [Coroutines] Handle lifetime markers, bitcast and unused i [...] adds c4db521cea32 [clang] Introduce support for disabling warnings in system macros adds f3e87176e1c5 [GlobalOpt] Support "stored once" optimization for differe [...] adds 47a47733f01f [GlobalStatus] Remove unused HasNonInstructionUser member (NFC) adds 5642ce5ac227 [GlobalOpt] Drop redundant setExternallyInitialized() call (NFC) adds 6c654b519835 [mlir][linalg][bufferize] Support std.select bufferization adds 42f90a28a32d [extract_symbols.py] Fix line-splitting of tool output. adds 95a436f8cca6 [X86][ABI] Pre-commit test for the f80 ABI alignment change. NFC adds 7e68061305a9 [IRBuilder] Migrate add-folding to value-based FoldAdd. adds 38e745b00623 [flang] Make the `flang` wrapper script check the Bash version adds 253ce92844f7 [JITLink][AArch64] Add support for splitting eh-frames on [...] adds 351edf1c477f [ARM] Remove FeaturePerfMon from armv7-m adds fe958b140ab3 [libc++] Quick fix to remove a narrowing conversion from t [...] adds 1bb0caf56168 [X86][MS] Change the alignment of f80 to 16 bytes on Windo [...] adds dfd9879d6f43 [Clang] Make Clang copy its CMake modules into the build dir adds 57e714bcc813 [mlir][linalg][bufferize] Add pass options for `createDeallocs` adds 612f5ed88231 [clang][CodeComplete] Perform approximate member search in bases adds 091e760cd398 [lldb] Don't print "Command Options Usage:" for an alias w [...] adds 776d0ed632d9 [flang] Fix overallocation by fir-to-llvm-ir pass adds eadb4cfeeff5 Revert (2) "[AST] Add RParen loc for decltype AutoTypeloc." adds 39385d4cd1c6 [CodeGen][Debuginfo][NFC] Refactor DIE values SizeOf metho [...] adds e3275cfa947b [BuildLibCalls] Add nounwind,willreturn to memset_pattern{ [...] adds 35cca45b09b8 Misleading bidirectional detection adds 9b43237128da [X86][LLD] Update datelayout in LLD tests. NFCI adds de05128eae69 [gn build] Port 35cca45b09b8 adds bf5f2354fa6e [NFC] [Coroutines] Add regression tests for symmetric tran [...] adds edb9175de63e [RISCV][llvm] Update CSRs adds 3fd9c90bdc04 [lldb][AArch64] Correct top nibble setting in memory tag r [...] adds 138fcc5f7619 [IRBuilder] Migrate icmp-folding to value-based FoldICmp. adds 13362abf3d66 [X86][XOP] Add tests for missing demanded elts handling fo [...] adds c2426fdcae62 [X86][XOP] Add SimplifyDemandedVectorElts handling for xop shifts adds 33efbc81842c [VP] llvm.vp.merge intrinsic and LangRef adds b5493ff571a9 [NFC] Run script to autogenerate CHECK lines for CodeGen/A [...] adds 23e8a4d16018 [UBSan] Relax test expectations in Misc/objc-cast.m test adds 6a605b97a200 [DebugInfo] Move flag for instr-ref to LLVM option, from T [...] adds 4b85800bfd6c [OpenCL] Set external linkage for block enqueue kernels adds 552eb372cb81 [LoopVectorize] Pass a vector type to isLegalMaskedGather/Scatter adds d4a8fc3a87a1 [VPlan] Introduce and use BranchOnCount VPInstruction. adds c8c3021e9fe6 Update Pietro Albini's employer adds 732ad8ea62ed [clang][auto-init] Provide __builtin_alloca*_uninitialized [...] adds 0f853930042f [MachO] Port call graph profile section and directive adds c490f8feb71e [clangd][StdSymbolMap] Prefer std::remove from algorithm adds 9a1ce35d7e7f [lldb] [Process/FreeBSD] Set current thread ID on events adds d3b90f41041c Revert "[llvm-readobj][XCOFF] dump auxiliary symbols." adds 0c8d30a30521 [X86][AVX2] Add tests for missing demanded elts handling f [...] adds de3808c8fc0e [X86][AVX2] Add SimplifyDemandedVectorElts handling for av [...] adds 6cbebfc7fb34 [clang-format] Fix comment. NFC. adds 968be05b8fdc [clang] Fix crash for sizeof on VLAs adds dcc20143e170 [clang-tidy] UseDefaultMemberInitCheck::checkDefaultInit - [...] adds 497a4b26c487 CGBuiltin - Use castAs<> instead of getAs<> to avoid deref [...] adds 6db04b97e6a2 [lld-macho] Port CallGraphSort from COFF/ELF adds d202c76441e1 [libc++] Start using `arc4random()` to implement `std::ran [...] adds d5be48c66d3e [Inline] Attempt to delete any discardable if unused functions adds 9f38a681cf25 GlobalIsel: Precommit fma combine tests with one operand f [...] adds c8c5dc766b25 GlobalIsel: Fix fma combine when one of the operands comes [...] adds 10bc3362a1a8 Revert "[LLDB][NativePDB] Add support for inlined functions" adds 3150bce0780c [NFC][MLGO] Prep a few files before the main ML Regalloc adviser adds 8fec756c0b54 [lldb] Disable one more watchpoint test on Windows adds 1773dddadf5d [MLIR][Math] Enable constant folding of ops adds 118f966b46cf [clang][#51931] Enable `-Wdeclaration-after-statement` for [...] adds 2d97f0f2efde [BOLT][TEST] Move exceptions-instrumentation.test to X86 adds f51b25a4b97a [AIX] demangle xcoff label symbol for llvm-nm adds b2d2e93138eb [NFC][MLGO] The regalloc reward is float, not int64_t adds 632c263eb302 [RISCV] Add RISCVProcFamilyEnum and add SiFive7. adds 3a32d2e74e5c [Clang][Sema] Use VersionMap from SDKSettings for remappin [...] adds fe827a93f69d [ModuleInliner] Properly delete dead functions adds c025fd8b0b79 [mlir] Update BUILD rule for MathDialect. adds a70fe03961dd [libc++] [ranges] SFINAE away ranges::cbegin(const T&&) fo [...] adds 6e77ad11ffab Add an assert in cpudispatch emit to try to track down an error. adds db08df0570b6 [ELF] Support discarding .relr.dyn adds 5014d6fc53d8 [ELF] -Map --why-extract=: print despite errors adds 8a16201a0b50 GlobalISel: Fix insert point in localizer adds bd2c01e9370e AMDGPU/GlobalISel: Do not use terminator copy before water [...] adds 22e6722632f5 AMDGPU/GlobalISel: Regenerate mir test checks adds f8476fd47b53 [llvm-ar][test] Test that --plugin is ignored adds 24e7371fef0d [llvm-ar] Enforce one-dash form for long options adds 33d008b169f3 [RISCV] Update recently ratified Zb{a,b,c,s} extensions to [...] adds 66b2ed477f90 Revert "[JITLink][AArch64] Add support for splitting eh-fr [...] adds d8b7ae947db0 [ELF][test] Temporarily remove .relr.dyn test which is not [...] adds c87e917fb23d [InstCombine] add tests for binop with phi operands; NFC adds b0a309dd7a59 [mlir][vector] Add folding for extract + extract/insert_strided adds f6fab68c3062 Fold arith.cmpf when at least one operand is known to be NaN. adds bf9c8636f2cd [ELF] Support discarding .relr.dyn adds be1aeb818cd9 Remove NaN constant from arith.minf, arith.maxf expansion adds 56f62fbf73a2 [mlir] Finish removing Identifier from the C++ API adds 6bd127b07916 [InstSimplify] use knownbits to fold more udiv/urem adds 15a78f9d09e2 [RISCV] Remove stale references to experimental-b. NFC adds ac5d32b1039b Add an example of integration test invoking MLIR source wi [...] adds 44bdcb889a14 Apply clang-tidy fixes for bugprone-macro-parentheses in I [...] adds 44bb5cd80d08 [mlir] Fix a warning adds 453a056df616 Add split-file to the MLIR test dependencies (Fix bot) adds 1f53dd1f2387 [CODE OWNERS] Add wallace as code owner adds b592cbf329ea [ELF][test] Improve discard-gnu-hash.s to check DT_HASH an [...] adds 43d927984c26 [ELF] Refactor how .gnu.hash and .hash are discarded adds fff59f48173d [clang-tidy] Improve modernize-redundant-void-arg to recog [...] adds 9dc4dea11064 Add llc to the list of build dependencies to test MLIR (Fi [...] adds a5249c2dd2bb [ELF] Change gnuHashTab/hashTab to unique_ptr. NFC adds 57092f87b233 Revert "[libc++] Temporarily disable the in_out_result tes [...] adds d1021978b8e7 Omit "clang" from CHECK lines. adds 963f40051a42 [clang][dataflow] Add transfer functions for initializers adds 7e29da875ca9 Add support for return values in bugprone-stringview-nullptr adds 669bfcf03652 [Demangle] Add minimal support for D simple basic types adds bec08795db0d [Demangle] Add support for D symbols back referencing adds b21ea1c2701d [Demangle] Add support for D types back referencing adds 6983968e833b [Demangle] Pass Ret parameter from decodeNumber by reference adds 81c330e23dd4 Filter string_view from the nullptr diagnosis of bugprone- [...] adds d4d016869d6c [mlir] Remove populateFuncOpTypeConversionPattern adds 2db4cf5962de clang support for Armv8.8/9.3 HBC adds aa1c533a4e44 [mlir][tosa] Expand tosa.apply_scale lowering for vectors adds a60e83fe7ceb [mlir][Interfaces] Add a extraSharedClassDeclaration field adds 676bfb2a226e [mlir] Refactor ShapedType into an interface adds 310e9636caeb [tosa][mlir] Support dynamic batch dimension for ops where [...] adds ba6a3972d74c [libc] add working ARM entrypoints adds e42eeb88d7b2 [NFC][libcxxabi] Rename GlobalLock to GlobalMutex adds 3601ee6cfd7f [libcxxabi] Make InitByteGlobalMutex check GetThreadID ins [...] adds 847ea7621989 [libcxxabi] Pulled guard byte code out of GuardObject adds 29be7c9c4f5d [libcxxabi] Re-organized inheritance structure to remove C [...] adds f011a53c148a [libcxxabi] Added convenience classes to cxa_guard adds 04e8c8f9973b [libc] fix strtold_test formatting on ARM adds 0998637e6fba [mlir] Add a parsePassPipeline overload that returns a new [...] adds b9499e14d24f [AArch64][GlobalISel] Re-generate checks for a test. adds 4163f61f29f4 [libc++] [ranges] Fix a missing auto(x) cast in ranges::data. adds 9be193bc58b3 [libc++] [ranges] Finish ADL-proofing ranges::data. adds 07ddfa95e3b5 GlobalISel: Add G_ASSERT_ALIGN hint instruction adds 3d2d208f6a0a IR: Make getRetAlign check callee function attributes adds ab593baa2dc1 AMDGPU: Add base test for future optimization patch adds 4515c24bbc32 AMDGPU/GlobalISel: Fix assertions on legalize queries with [...] adds 5f39a02ea950 RegScavenger: Remove used regs from scavenge candidates adds 5a16306c0944 GlobalISel: Always enable GISelKnownBits for InstructionSelect adds b9bc3c107c6c [libc++][ranges] Implement `construct_at` and `destroy{,_at}`. adds 0e811d3b66ff [flang] Fix handling of space between # and name in prepro [...] adds 4ff4e7ea3033 [CostModel] Use cost of target trunc type when only it is [...] adds 32d5634b1a2d [gn build] Port b9bc3c107c6c adds 1e36bd8516f2 [compiler-rt][darwin] check for strcmp to test interceptor [...] adds d043822daab9 [AMDGPU] Fixed physreg asm constraint parsing adds 1adeebc2cf3e AMDGPU: Fix assert on function argument as loop condition adds db57065b368a [Attributor] Use getAllocAlignment where possible [NFC] adds 8e76720cf2c0 [Attributor] Reuse object size evaluation code [NFC] adds d1f4c6a6112a [Attributor] Generalize calloc handling in heap-to-stack f [...] adds 71af8068ac12 [JITLink] Fix assert condition broken in 118e953b18ff0. adds a141e4713850 [NFC] Minimize noundef analysis when disabled adds d9b2983ea10e [bolt] Fix relative links in README adds aea27c310039 [flang] RESHAPE(PAD=) can be arbitrary array rank adds 997929970581 [Attributor] Simplify how we handle required alignment dur [...] adds 16877c5d2cd3 [RISCV] Add bfp and bfpw intrinsic in zbf extension adds 68c393c9dbe4 [BOLT] Update repo location in Dockerfile adds 55fcbf0a8489 Revert "[Inline] Attempt to delete any discardable if unus [...] adds 483f7f553652 [libc++] [ranges] Implement ranges::cdata. adds e00ac48df3a6 [ELF] Use tombstone values for discarded symbols in reloca [...] adds cd772844d8c6 [CSKY] Ensure a newline at the end of a file (NFC) adds 728c77dbb352 [Sema] Fix a bugprone argument comment (NFC) adds cb7f806a3a74 [clang] Remove redundant member initialization (NFC) adds d8716cd7d31c [CodeCompletion] (mostly) fix completion in incomplete C++ [...] adds 9c9119ab364b [clangd] Extend SymbolOrigin, stop serializing it adds cc1b9acf550d [NVPTX] Lower fp16 fminnum, fmaxnum to native on sm_80. adds bb13036483d2 [M68k][NFC] Use Register instead of unsigned int adds 7ee4236789bb [clang-format] clang-format eats space in front of attribu [...] adds 0ef5aa69e77f [JITLink] Add fixup value range check adds 159898d56827 [mlir] Add missing const to cloneWith method. adds ea9394c43c98 [NFC][AArch64][CodeGen] Add fixed-width vector tests for g [...] adds 6b22c370c823 RuntimeDyldELF: Don't abort on R_AARCH64_NONE relocation adds 54eb70886cda [clangd] Remove --inlay-hints flag adds ef1ca4d3e965 [AArch64] Fix incorrect use of MVT::getVectorNumElements i [...] adds ec0a880d5463 libclc: Add clspv64 target adds 7ce48be0fd83 [LV] Inline CreateSplatIV call for scalar VFs (NFC). adds 31009f0b5afb [CodeGen][AArch64] Ensure isSExtCheaperThanZExt returns tr [...] adds 821dd3b0e5b7 [FileCheck] Allow literal '['s before "[[var...]]" adds 97ef15ad7697 [WebAssembly] Fix reftype load/store match with idx from call adds 1cbb456123a9 [GlobalOpt] Fix global to select transform under opaque pointers adds 1e74e5e9e3b9 [lldb] [llgs] Implement qXfer:siginfo:read adds ea5ce2fc55b7 [flang][nfc] Update README.md adds 2eb7d8d74999 Simplify llvm/test/Transforms/Inline/inline_ssp.ll (NFC) adds 7c70f96a917f [ARM] fix bug causing shrinkwrapping not always being off [...] adds dca3321c73a4 [AArch64] Add a demand bits intrinsic test for instcombine [...] adds b65f21a4988d [mlir] Provide getMixedOffsets/sizes/strides as free functions adds f4139440f1cf [Docs] Fix IR and TableGen grammar inconsistencies adds 2bc57d85ebf2 Don't override __attribute__((no_stack_protector)) by inli [...] adds 37ebec68a828 [MIPS] Mips16DAGToDAGISel::selectAddr - Use cast<> instead [...] adds 4f414af6a77c Fix MSVC "32-bit shift implicitly converted to 64 bits" wa [...] adds a5507d2e253a Fix MSVC "32-bit shift implicitly converted to 64 bits" wa [...] adds 3f2fb767e33a [VPlan] Make IV operand explicit for VPWidenCanonicalIVRec [...] adds 36a549183228 [llvm-objdump][test] Add RISC-V objdump test case adds 7c5645861660 [mlir] Fix scalable type translation in splat element attr adds 4f19bb6f28d2 [X86][AVX] Add v8f32/v8i32 01289abc test case adds 61888d97f67d [AArch64] Basic demand elements for some intrinsics adds 971bd6f83440 Fix build failure with MSVC in C++20 mode adds 57a551a8dfa7 [X86][AVX] lowerShuffleAsLanePermuteAndShuffle - don't spl [...] adds a9bf32763d39 [clangd] Fix build after D115243 adds 2b2dbe6126f8 [clangd] Selection: Prune gtest TEST()s earlier adds b92102a6d79f [AArch64] Add native CPU detection for Neoverse-V1. adds 1919d2c93165 AMDGPU/GlobalISel: Regenerate fceil test (NFC) adds 235886e174d8 AMDGPU/GlobalISel: Fix custom legalizatation for fceil adds aba7c3c03386 [ConstantFold] Check uniform value in ConstantFoldLoadFromConst() adds 439560893941 [openmp] Mark used variables as retain as well adds fc7a9f36a923 [clangd] Ignore cvr-qualifiers in selection. adds 764e52f0d4b6 [DebugInfo][InstrRef] Short-circuit unnecessary preferred [...] adds cf7bfd6d059e [lldb][AArch64] Remove armv8.3-a flag from tagged memory r [...] adds edcac733dc40 [mlir] Fix reference to out of date CMake function adds a8a2ee633190 [mlir] Introduce C API for PDL dialect types adds 08edc8a74b49 [X86] Add tests showing failure to merge shuffles through [...] adds 0c6c588a9b9c [DAG] Add ISD::ROTL/ROTR to TargetLoweringBase::isBinOp adds b699e8b11aa9 Add another assert to cpu-dispatch emission to help track [...] adds 42185ad870cb [libc++] Add tests verifying alphabetical order for severa [...] adds ec5b63ba9689 [X86] Add tests showing failure to merge shuffles through [...] adds 01494c6a7318 [X86] Add tests showing failure to merge shuffles through [...] adds ccd7e7830f0c Revert "[clang][lex] Keep references to `DirectoryLookup` [...] adds fe17ce0fa662 [PowerPC] add RUN lines for both endians to test; NFC adds ba471ba8d2a3 Revert "[CodeGen][AArch64] Ensure isSExtCheaperThanZExt re [...] adds 1fa4778d03c1 [CMake] Output the error message when get_errc_messages fails adds 4eaf5846d0e7 [clang] Fix function pointer address space adds 7b9f5cbfa71f [LV] Extend check lines for pr34681.ll to cover foldable select. adds bf7d9970ba0a Support the *_WIDTH macros in limits.h and stdint.h adds 4746e38f67a9 [Libomptarget] Fix multiply defined symbol during linking adds c719a8596d01 [flang] Relax the Bash version check adds a6f49423c1ec AMDGPU: Optimize outgoing workitem ID based on reqd_work_g [...] adds 59994c25f9df AMDGPU: Select workitem ID intrinsics to 0 with req_work_g [...] adds 55029f017d80 [X86] canonicalizeShuffleWithBinOps - add X86ISD::PSHUFHW/ [...] adds 1e04923d21f8 [MachineValueType] Don't allow MVT::getVectorNumElements() [...] adds c7aa8b2962b3 [libc++][NFC] Remove duplication of distance_apriori_sentinel adds 3025c3ededf9 Replace PlatformKind with PlatformType. adds 67151d029bdb [libc++] [ranges] Implement P2415R2 owning_view. adds fc6af7e188cc [AMDGPU] Fix error handling in asm constraint syntax adds e2c78f99c419 [gn build] Port 67151d029bdb adds 08212dbc449b [X86] Add xop/avx2 shifts to X86TargetLowering::isBinOp adds fced2744d38b Fix MSVC "not all control paths return a value" warnings. NFC. adds 499703e9c08a Enable ReassociatingReshapeOpConversion with "non-identity [...] adds c0671e2c9b5c [libc++] Move assignable_sentinel to a common header where [...] adds 529f098789d3 [NFC][DFSan] Update DataFlowSanitizer user docs for -dfsan [...] adds b77d4d54f96a mlir: Avoid SmallVector::set_size in SerializeToHsacoPass: [...] adds 173fce42052d [mlir][tosa] Update default tosa-to-linalg passes adds 7690c2c76c91 [RISCV] Add tests for fixed vector mul reduction intrinsics. NFC adds cce650776722 [libc] Add rounding mode support for MPFR testing macros. adds 53cb3a7bb4a0 Revert "[compiler-rt][darwin] check for strcmp to test int [...] adds 9b85d7e166ac MC: Use SmallVector::clear() instead of set_size(0) adds bb59b38e87f8 [flang] Any type can appear in a structure constructor for [...] adds f7c589d3e74f Clarify that fold() can't "erase" an operation in the MLIR [...] adds 8cd81274ff61 [libc] Add multithreading support for exhaustive testing a [...] adds bc9c1ae1c55d ADT: Make SmallVector::set_size() private adds 52b8fe9b6e01 [mlir] Fix attaching side effects on `FlatSymbolRefAttr` adds b476039e8b90 [libc++] Refactor the tests for ranges::{advance,next,prev} adds cb5ea132d2ee [lldb] Add long help to `crashlog` adds efb8d4cff3f5 [NVPTX] Add fmin/fmax.NaN lowering for sm_80+. adds 0f6f6284d733 [lit] Make sure our test temp directory is actually used by tests adds ffee3b2f7a8e [NVPTX] Add version test for sm_75, sm_80, sm_86. adds 64da6eb06570 [Driver][Gnu] -r: imply -nostdlib like GCC adds e7b07a65388f [libc++][NFC] Add missing 'return 0' in main() functions adds 355e56f5b2c4 [libc][trivial] Make LlvmLibcExhaustiveTest::check method [...] adds 0fac3891ecd9 [X86] Fix mistake in comment on LowerFROUND. NFC adds 3d4050816905 [libc++][NFC] Fix placement of some XFAILs adds 82c8aca93488 [SimplifyCFG] Be more aggressive when sinking into block f [...] adds cd36b29ec754 [MemoryBuiltins] (Slightly) clean up abuse of MallocLike b [...] adds f14b57519427 [NFC][SCEV] Add test for umin_seq complexity ordering adds 993792bd1aff [SCEV] Don't consider umin_seq scev expr to be more comple [...] adds 71a082f72674 [clangd] Implement textDocument/typeDefinition adds c14cf92b5a1c [flang] Implement semantics for DEC STRUCTURE/RECORD adds 004acbb47d61 [clangd] Suppress warning about system_header pragma when [...] adds 07f9fb8b5141 [clangd] Elide even more checks in SelectionTree. adds bef3eb83442a [Clang][NVPTX]Add NVPTX intrinsics and builtins for CUDA P [...] adds 0bcd9f60cd0d [AMDGPU] Ensure return address is save/restored around the [...] adds 213193c184d5 [test] precommit coverage for D117249 adds 37e34b74e906 [LoopInterchange] Enable interchange with multiple outer l [...] adds f00cd23caed5 Revert "Revert "[LLDB][NativePDB] Add support for inlined [...] adds 2c0c61954173 [NFC][SCEV] Add test where it's the innermost umin_seq tha [...] adds cb6b9d3ae2cb [LoopNest] Add new utilites adds 00e0de05723a [flang] Extension: initialization of LOGICAL with INTEGER [...] adds 757e044dce51 [Inliner] Don't removeDeadConstantUsers() when checking if [...] adds d53b97959653 [openmp][devicertl] Handle missing clang_tool adds 9a0fe1b0fc23 [Inline] Attempt to delete any discardable if unused functions adds 778a264da9eb Upstream MLIR PyTACO implementation. adds bfd0cbd4eb9f Reapply 253ce92844f "[JITLink][AArch64] Add support for sp [...] adds 63a2987d5111 [flang] Allow initialization in blank COMMON adds e52f530c36e4 [mlir][sparse] fix two typos adds 8f23296bccec Apply clang-tidy fixes for llvm-header-guard in MLIR (NFC) adds 4e08ce7adb57 Revert "Upstream MLIR PyTACO implementation." adds 68874d8b5f78 [MemoryBuiltins] [NFC] Remove unused overload of isAligned [...] adds ac7a2742b2c6 Apply clang-tidy fixes for llvm-else-after-return in Commo [...] adds e4f5d4729605 Apply clang-tidy fixes for llvm-namespace-comment in Memor [...] adds 63edb563a1a1 Apply clang-tidy fixes for llvm-namespace-comment in GPUTo [...] adds b0aea1981358 Apply clang-tidy fixes for llvm-namespace-comment in Paral [...] adds ba37c3b1528d Apply clang-tidy fixes for llvm-namespace-comment in ToolU [...] adds 049ae93097c0 [lldb] Fix that the embedded Python REPL crashes if it rec [...] adds cf66f01ec138 [Attributor] Share code for abstract interpretation of all [...] adds 5d5d4d94f0c4 [Attributor] Generalize heap to stack to any allocator wit [...] adds 1661c8cfcd6b [CMake] Don't use -fno-semantic-interposition with Clang<=13 adds e289561205e8 [Driver][Fuchsia] -r: imply -nostdlib like GCC adds ee02cf079771 [MemoryBuiltins] Demote isCallocLikeFn and isAlignedAllocL [...] adds 073c27b5e585 Revert "[LV] Inline CreateSplatIV call for scalar VFs (NFC)." adds 0f500d3dae70 [flang] Downgrade benign error message to a warning adds bc56097817be [GlobalValue] Make dso_local function work with comdat nod [...] adds 1441ffe6a6da [lldb] Use __lldb_init_module instead of "if lldb.debugger" idiom adds d393ce3b3e8a [flang] Support extension intrinsic function variations on ABS adds cb71d77cc8cf [libcxx][test] Add missing includes and suppress warnings adds 83338d503242 [MemoryBuiltins] [NFC] Add missing section comments adds f52805539b29 [OMPIRBuilder] Fix store inst alignment for ordered depend [...] adds d3729bb38475 [libc++][ranges] Add ranges::in_in_result adds b8367518e795 [gn build] Port d3729bb38475 adds 4f8916cfdd94 [C++20] [Modules] Exit early if export decl is not valid adds d19f89b5d2a9 Apply clang-tidy fixes for llvm-qualified-auto to MLIR (NFC) adds 59d8740f2f76 Apply clang-tidy fixes for modernize-use-default-member-in [...] adds 9940dcfa4ac5 Apply clang-tidy fixes for modernize-use-equals-default to [...] adds bd87241c44b2 Apply clang-tidy fixes for modernize-use-override to MLIR (NFC) adds 2071e7204dda Apply clang-tidy fixes for modernize-use-using to MLIR (NFC) adds a68c8d3009b4 Apply clang-tidy fixes for performance-for-range-copy to M [...] adds 8e5f112c05a8 Apply clang-tidy fixes for performance-move-const-arg to M [...] adds e8d073951b4c Apply clang-tidy fixes for performance-unnecessary-value-p [...] adds d1b63c603aad Apply clang-tidy fixes for readability-avoid-const-params- [...] adds cac7aabbd823 Apply clang-tidy fixes for readability-identifier-naming t [...] adds 58ec17cb4ea4 Apply clang-tidy fixes for readability-simplify-boolean-ex [...] adds c386d6eb2d32 [libc] Fix precision constants for long double in MPFRUtils.cpp. adds 2291413554ff [NFC] Apply the fix for different signedness warning in Op [...] adds cf3582538872 [mlir][sparse] Moving the sort from factory method to the [...] adds b6d87773feef [libc++] LWG3171: implement operator<< for filesystem::dir [...] adds a97e20a3a8a5 Revert "GlobalISel: Add G_ASSERT_ALIGN hint instruction" adds 11067d711bca [mlir] Optimize OperationName construction and usage adds 072e2a7c67b7 [MS] Implement on-demand TLS initialization for Microsoft CXX ABI adds e68215c0c119 [Polly][CMake] Make PollyConfig.cmake relocatable like oth [...] adds 36138d825251 [NFC][msan] Declare some getShadow vars later adds 0c391133c920 Fix registers for Windows on ARM64 adds 317452551683 [RISCV] Add inline asm f32 test cases with D extension. NFC adds d72ebafda001 [RISCV] Add basic Zfh inline assembly tests. NFC adds 71a4fde39721 [NFC][msan] Init few vars later adds 7b7210291a07 [RISCV] Remove unused check prefixes. NFC adds 3e241353e1c6 [RISCV] Add more i64 splat vector test. adds 88c0e0806b36 [RISCV] Improve i64 splat vector lowering in RV32. adds b93eded7b945 [bazel] Separate capi_deps from deps in mlir_c_api_cc_library. adds dc9f18da8679 Partially revert cac7aabbd82: some APIs don't have in-tree [...] adds 18bc405a0990 [BOLT][NFC] Remove uses of `std::vector<bool>` adds d914486a9aac [BOLT][NFC] Refactor reset-release to move assignment adds 28b6e2cb3df6 [Attributor] [NFC] Use canonical variable name adds 5a68a85d859a Mark some MLIR tests as requiring the native target to be [...] adds 436d17a8e9e9 [mlir] Expose a function to get vector::CombiningKind from [...] adds 46b1e8371698 Do not build llc and mlir-cpu-runner to run MLIR tests wit [...] adds 8d20d83dd78e Fix a comment in CMake (NFC) adds 4f4340ee2af3 [NFC] [Coroutines] Refactor implementation in checkFinalSu [...] adds 47a9eb2117aa [clang-format] Fix break being added to macro define with [...] adds 3cf86c36112f Revert unrelated change from: [clang-format] Fix break bei [...] adds a0458b531cfc Add -fsanitize-address-param-retval to clang. adds 263d1986e32e [NFC][CSKY] Remove duplicate setOperationAction in CSKYTar [...] adds bba729af3ef8 [clang-check] Adjust argument adjusters for clang-check to [...] adds 8dbc6a23bb1b [CMake] Do not override user specified CMAKE_{C,CXX}_ARCHI [...] adds be219323a2fe [GlobalOpt] Add test for SRA with i8 array type (NFC) adds e7ce6acc83e1 [InstSimplify] Add test for load from undef (NFC) adds 20d9c51dc0d1 [ConstantFold] Check for uniform value before reinterpret load adds 8e5a5b619d34 [InstCombine] Fold for masked scatters to a uniform address adds 1ef9bfa0136c [InstSimplify] Pass pointer and indices separately to Simp [...] adds 717cd16e85fa [clang-format] Fix namespace end comments fixer with anony [...] adds 3dc858f9847d [LLDB] Skip TestIOHandlerPythonREPLSigint.py on Arm/Linux adds 013116cd7077 Use {LITERAL} instead of regex escaping in some lit tests. NFC. adds 350bc5683da5 [llvm-dwp] Simplify FileCheck patterns. NFC. adds cc79d603c90e [mlir] Use .empty() instead of checking size() == 0. adds ed30a968b5d6 [Verifier] Avoid asserting on invalid cleanuppad chain adds daf06590dc8f [IRBuilder] Migrate gep-folding to value-based FoldGEP. adds bea16e72a757 [mlir] Fix invalid assertion in ModuleTranslation.cpp adds 4a4a652f34d0 [RISCV][NFC] Use TableGen 'foreach' to simplify repetitive [...] adds cd3ab156a74b [clang-format] Fix typos in test. NFC. adds c86a982d7dad [SCEV] `getSequentialMinMaxExpr()`: rewrite deduplication [...] adds 96acdfa0de3e [mlir][memref] Fold copy of cast adds 713c2b47a07d [DebugInfo][DWARF][NFC] Refactor DWARFTypePrinter usages. [...] adds ab95ba704da4 [mlir][memref] Implement fast lowering of memref.copy adds 40f5f3d62dcd [mlir][linalg][bufferize] Use memref.copy instead of linalg.copy adds 1093b9f2e984 Revert "[clangd] Elide even more checks in SelectionTree." adds f3c664e5de4e [LoopVersioning] Add test case with foldable icmp in runti [...] adds 6a4957cbdff5 [clang-format] Add missing test for loops formatting. NFC. adds e58e401b7988 [mlir][memref] Fold self copies adds 1eeffcdb7a11 [mlir][linalg][bufferize] Support custom insertion point f [...] adds 1dab5f6c83a7 [LLDB][NFC] Fix a typo in comment adds 8de0c1feca28 [Clang] Add __builtin_reduce_or and __builtin_reduce_and adds 05f6e93938b7 [MLIR] NFC. affine data copy generate utility return value [...] adds f34742d7c1e7 [NFC][SCEV] Add test with umin_seq w/ 1op and constant adds 8dcba2067416 [SCEV] `getSequentialMinMaxExpr()`: relax 2-op umin_seq w/ [...] adds b32077234b1a [NFCI][SCEV] `computeExitLimitFromCondFromBinOp()`: rely o [...] adds 0af1808f9b99 [AArch64][SVE] Fix VLS mulh tests to use literal vectors adds 86bbf01d896c [llvm-profgen] CSProfileGenerator::generateLineNumBasedPro [...] adds 92ba979c2835 [llvm-profgen] Pass iteration value by reference in for-ra [...] adds 7d0ea3f41aa7 [X86] combineConcatVectorOps - fold concat(movddup(x),movd [...] adds bb3d4fa10f45 [X86] Add tests showing failure to concatenate vmovsldup o [...] adds 92f8a0f1f73b [msan] Fix typo in test from rGf6875c434ec2 adds 5726e5598104 [libc++] Modularize <chrono> adds 7d941d6d21e9 [clang][dataflow] Add transfer functions for constructors adds 765dd8b8a44c [CGBuiltin] Simplify code. NFCI. adds 538ffd4a24b4 [gn build] Port 5726e5598104 adds aa3cabe3cbe8 [mlir][memref] Fix memref.copy of scalar memref adds a8f1a715f00d [libc++] _Uglify some template parameter names. NFCI. adds 7500b4c7e418 [X86] combineConcatVectorOps - fold concat(movs*dup(x),mov [...] adds 9b72e0f9a2b9 [X86] combineConcatVectorOps - fold concat(permilpd(x),per [...] adds f4aa2a42edac [llvm-profgen] ProfiledBinary::load - use cast<> instead o [...] adds 5e4966cbae7b [LV] Add test with an integer induction based on a ptr one. adds ad643550a529 [flang] Fix a bug in the `flang` wrapper script adds e11e973e68f8 [libc] Update exhaustive testing documentations. adds 0e65d5021aa0 [LTO] runNewPMPasses - remove check for TM != nullptr as w [...] adds dac82b53e22d Revert "[MemoryBuiltins] [NFC] Add missing section comments" adds a1da73961d29 [SystemZ][z/OS] ASCII/EBCDIC support with no coexistence adds 3bbf7f5ed86f [Docs] Update opaque pointer docs (NFC) adds f417f5f4633e [InstCombine] add test for limitation of knownbits with ov [...] adds 0b2c21999571 [InstCombine] add more tests for binop with phi operands; NFC adds fc7af123ddba [AMDGPU] Pre-commit test for D116469. NFC adds 454256ef4f89 [AMDGPU] Correct the known bits calculation for MUL_I24. adds a2261e399adb [Docs] Use anonymous reference (NFC) adds ac6b4896ea91 [RISCV] Honor the VT when converting float point register [...] adds 2baa1dffd1fb [RISCV] Add basic support for matching shuffles to vslidedown.vi. adds 67076ebb606e [X86][AVX] lowerShuffleAsLanePermuteAndShuffle - don't spl [...] adds 8067ced144a2 [MLIR] Introduce generic visitors. adds 2a11fbb827c8 [libc++] [NFC] Remove a hard tab from __config. adds 63d2df003e9c [libc] Implement correctly rounded log2f based on RLIBM library. adds fa244345e1ac [libc++] [test] ASSERT_WITH_LIBRARY_INTERNAL_ALLOCATIONS i [...] adds d4cf8537489c [InstCombine] add tests for icmp with exact shift; NFC adds 02455bea6b9d [InstCombine] remove unnecessary use check on X >>exact == 0 fold adds 597b90ebacaf [libc++] Fix __simple_view concept in std::ranges adds 254302021b02 [X86] Fix -Wunused-lambda-capture adds 813156eaa96d Apply clang-tidy fixes for performance-unnecessary-value-p [...] adds 3b6943e66cf1 Apply clang-tidy fixes for performance-for-range-copy in P [...] adds 1c173c9442cf Apply clang-tidy fixes for readability-identifier-naming i [...] adds fd6ba1d2c036 Apply clang-tidy fixes for readability-container-size-empt [...] adds bdd5b9483712 [libc++][NFC] Remove clang-diagnostic-c++98-compat-extra-s [...] adds 2bcba21c8ba9 [CPU-Dispatch] Make sure Dispatch names get updated if pre [...] adds dc65c3f2ffee [flang] Allow pointers to non-sequence types in sequence types adds 8e47ccd5c26d Add new tests that check the icmp-ashr baseline. adds 42b34facfdfe Recommit "[LV] Inline CreateSplatIV call for scalar VFs." adds e43b2e4f480b [flang] "CFI" types for Fortran REAL and COMPLEX kinds 2, [...] adds 3d5b9fb3e3cd [OpenMP] Fix problems with the declare variant append_args clause adds acb8de565eaa [JumpThreading] Change asserts for WantInteger into actual checks adds f21473752bd6 [InstrProf][NFC] Do not assume size of counter type adds 0c6f76262277 [jitlink] add R_RISCV_BRANCH to jitlink adds ecd64c4e1546 [libcxx][test] Properly qualify uses of std::size_t adds cd97aaee5fef [libc++] Add missing `<cstddef>` include in span test adds 1f2cfc4fdc1e [BasicAliasAnalysis] Remove isMallocOrCallocLikeFn adds 9542c9c599d2 [libc++] Rename __i to __current_ in move_iterator. NFC. adds c09692a64420 [libc++] s/_LIBCPP_INLINE_VISIBILITY/_LIBCPP_HIDE_FROM_ABI [...] adds 0ab54c28f8b5 [libc++] Further small cleanups of move_iterator.h. NFC. adds 6ea3d9efc536 [clang-format] Fix CompactNamespaces corner case when Allo [...] adds 6cc305764f62 [libc++] [test] Add a test for proper _Uglification of tem [...] adds e0841f692017 [SelectionDAGBuilder] Remove unneeded vector bitcast from [...] adds 7af11989be21 [clang-format] Fix short functions being considered as inl [...] adds 9551fc57b7e9 Fold ashr-exact into a icmp-ugt. adds 6cacd420a1d7 Document several clang-supported builtins adds 7c269db779ff [lld-macho] Simplify DeduplicatedCStringSection::finalizeC [...] adds 69bc334be569 [mlir] Remove getNumberOfExecutions from RegionBranchOpInterface adds 3bd1ff9a2327 Fix NDEBUG unused-variable warning after 05f6e93938b73d833 [...] adds 355217722960 [NFC][msan] Reorder branches in complex if adds fa6a2876c7e4 [LoopInterchange] Enable interchange with multiple inner l [...] adds 0b442db9f62e [libc] move strdup out of requiring SCUDO adds bd0a970f5341 Comment parsing: Simplify Lexer::skipLineStartingDecoratio [...] adds 9f0fa6544012 Comment parsing: Don't recognize commands in single-line d [...] adds 650fc40b6d8d [NFC][SCEV] Introduce `getCastExpr()` QoL helper adds fb3b86fedc99 [BOLT][DWARF] Fix high pc patching adds cadc07f01f49 [flang] Legacy extension: non-character formats adds df13239c1177 [LLDB] Skip TestIOHandlerPythonREPLSigint.py on AArch64/Linux adds dc6404615d56 [NFC][msan] Add byvals tests with known issues adds dd13744bfb0a Revert "[BasicAliasAnalysis] Remove isMallocOrCallocLikeFn" adds ac4202fe9daf [flang] Signal runtime error on WRITE after ENDFILE adds 636a1cfdcdb8 [scudo] Make Scudo compile for C++20 adds c3a68c5d63c6 [SROA] Bail out on PHIs in catchswitch BBs adds ca88becc614f Regenerate some autogenerated test files ahead of modifying them. adds a4e255f9c6d4 Skip exception cleanups when the innermost scope is EHTerm [...] adds 533fbae8d8d8 [clang-format] Add experimental option to remove LLVM braces adds b77fd01a8f44 [flang] Don't blank-fill remaining lines in internal output adds 8dff860c220c [NFC] Add additional tests for icmp predicate. adds bed947f70813 [flang] Accept ENTRY names in generic interfaces adds 33315ef3216b clang/AMDGPU: Don't set implicit arg attribute to default size adds bde1032588f7 [Hexagon] Fix optimize address mode pass only handle BaseI [...] adds c34adaa3ca3a [BOLT][CMAKE] Use IN_LIST check adds 29fe14c78d04 [BOLT][NFC] Remove redundant dependent template type adds 0d3f2fd26940 Revert "Skip exception cleanups when the innermost scope i [...] adds 8faca2ed6ade [lldb] Fix platform selection on Apple Silicon adds bd859cb4def4 [flasg] Debug folding of substring references adds a10692c734fa [lldb] Only promote -Wignored-attributes to an error adds e383eaa647da [mlir][sparse] parameterize MTTKRP kernel adds 258cd02c6a7a [lldb/doc] Rephrase tutorial paragraph (NFC) adds ca2353ce5a77 Teach llvm-jitlink to support archives in inputs files and [...] adds 18e4369e195d [NFC][msan] Don't setOrigin for byval pointer adds 49597085022e [NFC][msan] Consolidate clean shadow handling adds efeb50197091 [cmake] Use `GNUInstallDirs` to support custom installation dirs.
No new revisions were added by this update.
Summary of changes: CONTRIBUTING.md | 3 +- bolt/CMakeLists.txt | 84 + bolt/CODE_OWNERS.TXT | 22 + {llvm => bolt}/LICENSE.TXT | 0 bolt/README.md | 206 + bolt/docs/CMakeLists.txt | 105 + bolt/docs/Heatmap.png | Bin 0 -> 30850 bytes bolt/docs/Heatmaps.md | 50 + bolt/docs/OptimizingClang.md | 288 ++ bolt/docs/RuntimeLibrary.md | 37 + bolt/docs/doxygen-mainpage.dox | 15 + bolt/docs/doxygen.cfg.in | 2310 +++++++++ bolt/include/bolt/Core/BinaryBasicBlock.h | 1013 ++++ bolt/include/bolt/Core/BinaryContext.h | 1230 +++++ bolt/include/bolt/Core/BinaryData.h | 241 + bolt/include/bolt/Core/BinaryEmitter.h | 42 + bolt/include/bolt/Core/BinaryFunction.h | 2456 +++++++++ bolt/include/bolt/Core/BinaryLoop.h | 96 + bolt/include/bolt/Core/BinarySection.h | 485 ++ bolt/include/bolt/Core/DebugData.h | 853 ++++ bolt/include/bolt/Core/DynoStats.h | 186 + bolt/include/bolt/Core/Exceptions.h | 113 + bolt/include/bolt/Core/JumpTable.h | 130 + bolt/include/bolt/Core/MCPlus.h | 120 + bolt/include/bolt/Core/MCPlusBuilder.h | 1892 +++++++ bolt/include/bolt/Core/ParallelUtilities.h | 81 + bolt/include/bolt/Core/Relocation.h | 126 + bolt/include/bolt/Passes/ADRRelaxationPass.h | 40 + bolt/include/bolt/Passes/Aligner.h | 47 + bolt/include/bolt/Passes/AllocCombiner.h | 43 + bolt/include/bolt/Passes/AsmDump.h | 37 + bolt/include/bolt/Passes/BinaryFunctionCallGraph.h | 74 + bolt/include/bolt/Passes/BinaryPasses.h | 465 ++ bolt/include/bolt/Passes/CacheMetrics.h | 40 + bolt/include/bolt/Passes/CallGraph.h | 193 + bolt/include/bolt/Passes/CallGraphWalker.h | 56 + bolt/include/bolt/Passes/DataflowAnalysis.h | 562 +++ bolt/include/bolt/Passes/DataflowInfoManager.h | 92 + bolt/include/bolt/Passes/DominatorAnalysis.h | 154 + bolt/include/bolt/Passes/FrameAnalysis.h | 228 + bolt/include/bolt/Passes/FrameOptimizer.h | 119 + bolt/include/bolt/Passes/HFSort.h | 102 + bolt/include/bolt/Passes/IdenticalCodeFolding.h | 44 + bolt/include/bolt/Passes/IndirectCallPromotion.h | 226 + bolt/include/bolt/Passes/Inliner.h | 96 + bolt/include/bolt/Passes/Instrumentation.h | 130 + bolt/include/bolt/Passes/InstrumentationSummary.h | 146 + bolt/include/bolt/Passes/JTFootprintReduction.h | 77 + bolt/include/bolt/Passes/LivenessAnalysis.h | 165 + bolt/include/bolt/Passes/LongJmp.h | 156 + bolt/include/bolt/Passes/LoopInversionPass.h | 59 + bolt/include/bolt/Passes/MCF.h | 48 + bolt/include/bolt/Passes/PLTCall.h | 39 + bolt/include/bolt/Passes/PatchEntries.h | 43 + bolt/include/bolt/Passes/ReachingDefOrUse.h | 155 + bolt/include/bolt/Passes/ReachingInsns.h | 92 + bolt/include/bolt/Passes/RegAnalysis.h | 89 + bolt/include/bolt/Passes/RegReAssign.h | 62 + bolt/include/bolt/Passes/ReorderAlgorithm.h | 257 + bolt/include/bolt/Passes/ReorderData.h | 60 + bolt/include/bolt/Passes/ReorderFunctions.h | 47 + bolt/include/bolt/Passes/ReorderUtils.h | 155 + bolt/include/bolt/Passes/RetpolineInsertion.h | 78 + bolt/include/bolt/Passes/ShrinkWrapping.h | 525 ++ bolt/include/bolt/Passes/SplitFunctions.h | 51 + bolt/include/bolt/Passes/StackAllocationAnalysis.h | 66 + .../bolt/Passes/StackAvailableExpressions.h | 57 + bolt/include/bolt/Passes/StackPointerTracking.h | 209 + bolt/include/bolt/Passes/StackReachingUses.h | 80 + bolt/include/bolt/Passes/StokeInfo.h | 129 + bolt/include/bolt/Passes/TailDuplication.h | 119 + bolt/include/bolt/Passes/ThreeWayBranch.h | 41 + bolt/include/bolt/Passes/ValidateInternalCalls.h | 96 + bolt/include/bolt/Passes/VeneerElimination.h | 31 + bolt/include/bolt/Profile/BoltAddressTranslation.h | 133 + bolt/include/bolt/Profile/DataAggregator.h | 480 ++ bolt/include/bolt/Profile/DataReader.h | 531 ++ bolt/include/bolt/Profile/Heatmap.h | 74 + bolt/include/bolt/Profile/ProfileReaderBase.h | 112 + bolt/include/bolt/Profile/ProfileYAMLMapping.h | 228 + bolt/include/bolt/Profile/YAMLProfileReader.h | 96 + bolt/include/bolt/Profile/YAMLProfileWriter.h | 37 + bolt/include/bolt/Rewrite/BinaryPassManager.h | 58 + bolt/include/bolt/Rewrite/DWARFRewriter.h | 240 + .../bolt/Rewrite/ExecutableFileMemoryManager.h | 78 + bolt/include/bolt/Rewrite/MachORewriteInstance.h | 80 + bolt/include/bolt/Rewrite/RewriteInstance.h | 551 ++ .../bolt/RuntimeLibs/HugifyRuntimeLibrary.h | 40 + .../RuntimeLibs/InstrumentationRuntimeLibrary.h | 55 + bolt/include/bolt/RuntimeLibs/RuntimeLibrary.h | 72 + bolt/include/bolt/Utils/BoltRevision.inc.in | 1 + bolt/include/bolt/Utils/CommandLineOpts.h | 83 + bolt/include/bolt/Utils/NameResolver.h | 56 + bolt/include/bolt/Utils/NameShortener.h | 34 + bolt/include/bolt/Utils/Utils.h | 55 + bolt/lib/CMakeLists.txt | 7 + bolt/lib/Core/BinaryBasicBlock.cpp | 620 +++ bolt/lib/Core/BinaryContext.cpp | 2106 ++++++++ bolt/lib/Core/BinaryData.cpp | 139 + bolt/lib/Core/BinaryEmitter.cpp | 1149 +++++ bolt/lib/Core/BinaryFunction.cpp | 4496 +++++++++++++++++ bolt/lib/Core/BinaryFunctionProfile.cpp | 366 ++ bolt/lib/Core/BinarySection.cpp | 279 ++ bolt/lib/Core/CMakeLists.txt | 28 + bolt/lib/Core/DebugData.cpp | 1105 +++++ bolt/lib/Core/DynoStats.cpp | 330 ++ bolt/lib/Core/Exceptions.cpp | 891 ++++ bolt/lib/Core/JumpTable.cpp | 128 + bolt/lib/Core/MCPlusBuilder.cpp | 511 ++ bolt/lib/Core/ParallelUtilities.cpp | 241 + bolt/lib/Core/Relocation.cpp | 635 +++ bolt/lib/Passes/ADRRelaxationPass.cpp | 76 + bolt/lib/Passes/Aligner.cpp | 200 + bolt/lib/Passes/AllocCombiner.cpp | 125 + bolt/lib/Passes/AsmDump.cpp | 283 ++ bolt/lib/Passes/BinaryFunctionCallGraph.cpp | 277 ++ bolt/lib/Passes/BinaryPasses.cpp | 1854 +++++++ bolt/lib/Passes/CMakeLists.txt | 57 + bolt/lib/Passes/CacheMetrics.cpp | 311 ++ bolt/lib/Passes/CallGraph.cpp | 126 + bolt/lib/Passes/CallGraphWalker.cpp | 67 + bolt/lib/Passes/DataflowAnalysis.cpp | 94 + bolt/lib/Passes/DataflowInfoManager.cpp | 161 + bolt/lib/Passes/ExtTSPReorderAlgorithm.cpp | 901 ++++ bolt/lib/Passes/FrameAnalysis.cpp | 642 +++ bolt/lib/Passes/FrameOptimizer.cpp | 360 ++ bolt/lib/Passes/HFSort.cpp | 289 ++ bolt/lib/Passes/HFSortPlus.cpp | 628 +++ bolt/lib/Passes/IdenticalCodeFolding.cpp | 583 +++ bolt/lib/Passes/IndirectCallPromotion.cpp | 1442 ++++++ bolt/lib/Passes/Inliner.cpp | 579 +++ bolt/lib/Passes/Instrumentation.cpp | 711 +++ bolt/lib/Passes/JTFootprintReduction.cpp | 295 ++ bolt/lib/Passes/LivenessAnalysis.cpp | 17 + bolt/lib/Passes/LongJmp.cpp | 629 +++ bolt/lib/Passes/LoopInversionPass.cpp | 105 + bolt/lib/Passes/MCF.cpp | 486 ++ bolt/lib/Passes/PLTCall.cpp | 89 + bolt/lib/Passes/PatchEntries.cpp | 139 + bolt/lib/Passes/PettisAndHansen.cpp | 216 + bolt/lib/Passes/RegAnalysis.cpp | 245 + bolt/lib/Passes/RegReAssign.cpp | 447 ++ bolt/lib/Passes/ReorderAlgorithm.cpp | 734 +++ bolt/lib/Passes/ReorderData.cpp | 539 ++ bolt/lib/Passes/ReorderFunctions.cpp | 472 ++ bolt/lib/Passes/RetpolineInsertion.cpp | 337 ++ bolt/lib/Passes/ShrinkWrapping.cpp | 2076 ++++++++ bolt/lib/Passes/SplitFunctions.cpp | 247 + bolt/lib/Passes/StackAllocationAnalysis.cpp | 153 + bolt/lib/Passes/StackAvailableExpressions.cpp | 132 + bolt/lib/Passes/StackPointerTracking.cpp | 29 + bolt/lib/Passes/StackReachingUses.cpp | 127 + bolt/lib/Passes/StokeInfo.cpp | 188 + bolt/lib/Passes/TailDuplication.cpp | 475 ++ bolt/lib/Passes/ThreeWayBranch.cpp | 167 + bolt/lib/Passes/ValidateInternalCalls.cpp | 343 ++ bolt/lib/Passes/VeneerElimination.cpp | 105 + bolt/lib/Profile/BoltAddressTranslation.cpp | 293 ++ bolt/lib/Profile/CMakeLists.txt | 15 + bolt/lib/Profile/DataAggregator.cpp | 2220 +++++++++ bolt/lib/Profile/DataReader.cpp | 1432 ++++++ bolt/lib/Profile/Heatmap.cpp | 255 + bolt/lib/Profile/ProfileReaderBase.cpp | 23 + bolt/lib/Profile/YAMLProfileReader.cpp | 422 ++ bolt/lib/Profile/YAMLProfileWriter.cpp | 206 + bolt/lib/Rewrite/BinaryPassManager.cpp | 486 ++ bolt/lib/Rewrite/BoltDiff.cpp | 715 +++ bolt/lib/Rewrite/CMakeLists.txt | 43 + bolt/lib/Rewrite/DWARFRewriter.cpp | 1566 ++++++ bolt/lib/Rewrite/ExecutableFileMemoryManager.cpp | 93 + bolt/lib/Rewrite/MachORewriteInstance.cpp | 631 +++ bolt/lib/Rewrite/RewriteInstance.cpp | 5247 ++++++++++++++++++++ bolt/lib/RuntimeLibs/CMakeLists.txt | 16 + bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp | 113 + .../RuntimeLibs/InstrumentationRuntimeLibrary.cpp | 333 ++ bolt/lib/RuntimeLibs/RuntimeLibrary.cpp | 72 + bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp | 1090 ++++ bolt/lib/Target/AArch64/CMakeLists.txt | 17 + bolt/lib/Target/CMakeLists.txt | 9 + bolt/lib/Target/X86/CMakeLists.txt | 17 + bolt/lib/Target/X86/X86MCPlusBuilder.cpp | 3965 +++++++++++++++ bolt/lib/Utils/CMakeLists.txt | 10 + bolt/lib/Utils/CommandLineOpts.cpp | 231 + bolt/lib/Utils/Utils.cpp | 118 + bolt/runtime/CMakeLists.txt | 46 + bolt/runtime/common.h | 527 ++ bolt/runtime/config.h.in | 1 + bolt/runtime/hugify.cpp | 129 + bolt/runtime/instr.cpp | 1672 +++++++ bolt/test/AArch64/asm-func-debug.test | 26 + bolt/test/AArch64/lit.local.cfg | 2 + bolt/test/AArch64/tls.c | 36 + bolt/test/AArch64/update-debug-reloc.test | 9 + bolt/test/CMakeLists.txt | 53 + bolt/test/Inputs/asm_foo.s | 15 + bolt/test/Inputs/asm_main.c | 4 + bolt/test/Inputs/bolt_icf.cpp | 27 + bolt/test/Inputs/hello.c | 7 + bolt/test/Inputs/icf_baz.c | 6 + bolt/test/Inputs/icf_main.c | 14 + bolt/test/Inputs/vararg.s | 8 + bolt/test/X86/Inputs/asm_main.c | 4 + bolt/test/X86/Inputs/avx512.c | 15 + bolt/test/X86/Inputs/blarge.fdata | 19 + bolt/test/X86/Inputs/blarge.yaml | 137 + bolt/test/X86/Inputs/ctc_and_unreachable.s | 44 + bolt/test/X86/Inputs/debug-fission-script.txt | 7 + bolt/test/X86/Inputs/debug-fission-simple.s | 446 ++ bolt/test/X86/Inputs/double_jump.cpp | 37 + bolt/test/X86/Inputs/entry.s | 51 + bolt/test/X86/Inputs/exc4sw.S | 493 ++ bolt/test/X86/Inputs/exc4sw.fdata | 2 + bolt/test/X86/Inputs/exc_args.s | 456 ++ bolt/test/X86/Inputs/ft_to_noop.s | 60 + bolt/test/X86/Inputs/icf-jump-tables.c | 29 + bolt/test/X86/Inputs/indirect_goto.c | 18 + bolt/test/X86/Inputs/inline-foo.c | 5 + bolt/test/X86/Inputs/inline-main.c | 5 + bolt/test/X86/Inputs/inlined.cpp | 23 + bolt/test/X86/Inputs/inlinee.cpp | 3 + bolt/test/X86/Inputs/issue20.yaml | 57 + bolt/test/X86/Inputs/issue26.yaml | 78 + bolt/test/X86/Inputs/jmp_opt.cpp | 7 + bolt/test/X86/Inputs/jmp_opt2.cpp | 3 + bolt/test/X86/Inputs/jmp_opt3.cpp | 3 + bolt/test/X86/Inputs/jmpjmp.s | 36 + .../X86/Inputs/jump_table_footprint_reduction.s | 120 + bolt/test/X86/Inputs/jump_table_icp.cpp | 38 + bolt/test/X86/Inputs/jump_table_icp.s | 307 ++ bolt/test/X86/Inputs/jump_table_reference.s | 35 + bolt/test/X86/Inputs/linenumber.cpp | 25 + bolt/test/X86/Inputs/loop_nest.s | 27 + bolt/test/X86/Inputs/order.txt | 5 + bolt/test/X86/Inputs/plt-got-sec.yaml | 819 +++ bolt/test/X86/Inputs/plt-sec-8-byte.yaml | 1437 ++++++ bolt/test/X86/Inputs/plt-sec.yaml | 819 +++ bolt/test/X86/Inputs/pre-aggregated.txt | 8 + bolt/test/X86/Inputs/relaxed_tc.s | 21 + bolt/test/X86/Inputs/rodata_simpl_loads.s | 23 + bolt/test/X86/Inputs/sctc_bug.s | 25 + bolt/test/X86/Inputs/sctc_bug2.s | 33 + bolt/test/X86/Inputs/sctc_bug3.s | 21 + bolt/test/X86/Inputs/sctc_bug4.s | 66 + bolt/test/X86/Inputs/shorten_mov.s | 12 + bolt/test/X86/Inputs/srol-bug-input.yaml | 62 + bolt/test/X86/Inputs/static_exe.s | 10 + bolt/test/X86/Inputs/tailcall.s | 29 + bolt/test/X86/Inputs/tailcall_traps.s | 18 + bolt/test/X86/Inputs/unreachable.s | 85 + bolt/test/X86/Inputs/user-order.S | 44 + bolt/test/X86/R_X86_64_64.pic.lld.cpp | 15 + bolt/test/X86/asm-dump.c | 79 + bolt/test/X86/asm-func-debug.test | 26 + bolt/test/X86/avx512-trap.test | 19 + bolt/test/X86/bad-exe.test | 7 + bolt/test/X86/bb-with-two-tail-calls.s | 34 + bolt/test/X86/block-reordering.test | 49 + bolt/test/X86/bolt-info.test | 7 + bolt/test/X86/branch-data.test | 55 + bolt/test/X86/bug-reorder-bb-jrcxz.s | 640 +++ bolt/test/X86/call-zero.s | 38 + bolt/test/X86/cfi-expr-rewrite.s | 695 +++ bolt/test/X86/cfi-instrs-count.s | 116 + bolt/test/X86/cfi-instrs-reordered.s | 1010 ++++ bolt/test/X86/ctc-and-unreachable.test | 13 + bolt/test/X86/debug-fission-single.s | 74 + bolt/test/X86/double-jump.test | 26 + bolt/test/X86/exceptions-args.test | 10 + bolt/test/X86/fallthrough-to-noop.test | 30 + bolt/test/X86/false-jump-table.s | 132 + bolt/test/X86/icf-jump-tables.test | 13 + bolt/test/X86/indirect-goto.test | 8 + bolt/test/X86/inline-debug-info.test | 19 + bolt/test/X86/inlined-function-mixed.test | 11 + bolt/test/X86/internal-call-instrument.s | 43 + bolt/test/X86/interprocedural-ref-entry-point.s | 51 + bolt/test/X86/invalid-profile.test | 6 + bolt/test/X86/issue20.s | 53 + bolt/test/X86/issue20.test | 15 + bolt/test/X86/issue26.s | 56 + bolt/test/X86/issue26.test | 12 + bolt/test/X86/jmp-optimization.test | 10 + bolt/test/X86/jmpjmp.test | 26 + bolt/test/X86/jump-table-footprint-reduction.test | 16 + bolt/test/X86/jump-table-icp.test | 113 + bolt/test/X86/jump-table-reference.test | 6 + bolt/test/X86/layout-heuristic.test | 26 + bolt/test/X86/line-number.test | 17 + bolt/test/X86/lit.local.cfg | 2 + bolt/test/X86/loop-inversion-pass.s | 38 + bolt/test/X86/loop-nest.test | 22 + bolt/test/X86/no-entry-reordering.test | 11 + bolt/test/X86/no-output.test | 29 + bolt/test/X86/no-relocs.test | 6 + bolt/test/X86/pie.test | 6 + bolt/test/X86/plt-sec-8-byte.test | 6 + bolt/test/X86/plt-sec.test | 11 + bolt/test/X86/pre-aggregated-perf.test | 44 + bolt/test/X86/re-optimize.test | 7 + bolt/test/X86/reader.test | 10 + bolt/test/X86/relaxed-tailcall.test | 7 + bolt/test/X86/remove-unused.test | 13 + bolt/test/X86/rodata-simpl-loads.test | 44 + bolt/test/X86/sctc-bug.test | 9 + bolt/test/X86/sctc-bug2.test | 8 + bolt/test/X86/sctc-bug3.test | 15 + bolt/test/X86/sctc-bug4.test | 25 + bolt/test/X86/shared-object.test | 5 + bolt/test/X86/shorten-mov.test | 14 + bolt/test/X86/shrinkwrapping-critedge.s | 35 + bolt/test/X86/shrinkwrapping-insertcfi.s | 41 + bolt/test/X86/shrinkwrapping-pop-order.s | 45 + bolt/test/X86/shrinkwrapping-popf.s | 31 + bolt/test/X86/shrinkwrapping.test | 45 + bolt/test/X86/split-func-icf.s | 100 + .../X86/split-func-jump-table-fragment-noparent.s | 59 + .../X86/split-func-jump-table-fragment-reverse.s | 59 + bolt/test/X86/split-func-jump-table-fragment.s | 57 + bolt/test/X86/srol-bug.test | 43 + bolt/test/X86/static-exe.test | 6 + bolt/test/X86/symtab-secondary-entries.test | 17 + bolt/test/X86/tail-duplication-cacheline.s | 31 + bolt/test/X86/tail-duplication-complex.s | 59 + bolt/test/X86/tail-duplication-jt.s | 78 + bolt/test/X86/tail-duplication-pass.s | 26 + bolt/test/X86/tail-duplication-prop-bug.s | 40 + bolt/test/X86/tailcall-traps.test | 14 + bolt/test/X86/tailcall.test | 13 + bolt/test/X86/unreachable.test | 46 + bolt/test/X86/vararg.test | 12 + bolt/test/X86/zero-sized-object.s | 137 + bolt/test/bolt-icf.test | 17 + bolt/test/keep-aranges.test | 11 + bolt/test/link_fdata.py | 113 + bolt/test/lit.cfg.py | 98 + bolt/test/lit.site.cfg.py.in | 38 + bolt/test/non-empty-debug-line.test | 21 + bolt/test/runtime/AArch64/adrrelaxationpass.s | 49 + .../runtime/AArch64/constant-island-relocations.s | 29 + bolt/test/runtime/AArch64/controlflow.s | 114 + bolt/test/runtime/AArch64/issue177.s | 28 + bolt/test/runtime/AArch64/lit.local.cfg | 2 + bolt/test/runtime/Inputs/fptr.c | 19 + .../runtime/X86/Inputs/basic-instrumentation.s | 9 + bolt/test/runtime/X86/Inputs/exception3.cpp | 55 + bolt/test/runtime/X86/Inputs/exception4.cpp | 59 + bolt/test/runtime/X86/Inputs/exceptions_split.cpp | 45 + .../runtime/X86/Inputs/fdata-escape-chars-syms.txt | 3 + .../test/runtime/X86/Inputs/fdata-escape-chars.txt | 6 + bolt/test/runtime/X86/Inputs/indirect_goto.c | 18 + bolt/test/runtime/X86/Inputs/internalcall-main.c | 16 + bolt/test/runtime/X86/Inputs/internalcall.S | 101 + .../runtime/X86/Inputs/retpoline_synthetic.cpp | 46 + bolt/test/runtime/X86/Inputs/user_func_order.txt | 2 + bolt/test/runtime/X86/basic-instrumentation.test | 22 + .../runtime/X86/exceptions-instrumentation.test | 21 + bolt/test/runtime/X86/exceptions-pic.test | 13 + bolt/test/runtime/X86/exceptions-run.test | 15 + bolt/test/runtime/X86/fdata-escape-chars.ll | 101 + bolt/test/runtime/X86/fix-branches-jrcxz.s | 64 + bolt/test/runtime/X86/hot-end-symbol.s | 80 + bolt/test/runtime/X86/indirect-goto-pie.test | 10 + bolt/test/runtime/X86/instrumentation-dup-jts.s | 153 + bolt/test/runtime/X86/instrumentation-ind-calls.s | 66 + bolt/test/runtime/X86/instrumentation-indirect.c | 66 + bolt/test/runtime/X86/instrumentation-pie.c | 39 + bolt/test/runtime/X86/instrumentation-shlib.c | 69 + .../test/runtime/X86/internal-call-instrument.test | 13 + bolt/test/runtime/X86/internal-call.test | 14 + bolt/test/runtime/X86/interp-overwrite-bug.s | 59 + bolt/test/runtime/X86/lit.local.cfg | 2 + bolt/test/runtime/X86/retpoline-synthetic.test | 24 + bolt/test/runtime/X86/section-reloc-with-addend.s | 50 + bolt/test/runtime/X86/shrinkwrapping-alignment.s | 88 + bolt/test/runtime/X86/shrinkwrapping-lock.s | 64 + bolt/test/runtime/X86/shrinkwrapping-pushpop.s | 60 + .../runtime/X86/tail-duplication-constant-prop.s | 43 + bolt/test/runtime/X86/three-way-branch-pass.s | 36 + bolt/test/runtime/X86/user-func-reorder.c | 44 + bolt/test/runtime/fptr.test | 9 + bolt/test/runtime/lit.local.cfg | 3 + bolt/test/runtime/meta-merge-fdata.test | 50 + bolt/tools/CMakeLists.txt | 2 + bolt/tools/driver/CMakeLists.txt | 48 + bolt/tools/driver/llvm-bolt.cpp | 325 ++ bolt/tools/merge-fdata/CMakeLists.txt | 14 + bolt/tools/merge-fdata/merge-fdata.cpp | 393 ++ bolt/utils/bughunter.sh | 266 + bolt/utils/docker/Dockerfile | 31 + clang-tools-extra/CMakeLists.txt | 1 + clang-tools-extra/clang-doc/tool/CMakeLists.txt | 4 +- .../find-all-symbols/tool/CMakeLists.txt | 2 +- .../clang-include-fixer/tool/CMakeLists.txt | 4 +- clang-tools-extra/clang-tidy/CMakeLists.txt | 2 +- .../clang-tidy/bugprone/StringConstructorCheck.cpp | 33 +- .../clang-tidy/bugprone/StringConstructorCheck.h | 1 + .../clang-tidy/bugprone/StringviewNullptrCheck.cpp | 295 +- .../ProBoundsArrayToPointerDecayCheck.cpp | 18 +- clang-tools-extra/clang-tidy/misc/CMakeLists.txt | 1 + .../clang-tidy/misc/MiscTidyModule.cpp | 3 + .../clang-tidy/misc/MisleadingBidirectional.cpp | 139 + .../clang-tidy/misc/MisleadingBidirectional.h | 38 + .../clang-tidy/modernize/RedundantVoidArgCheck.cpp | 164 +- .../modernize/UseDefaultMemberInitCheck.cpp | 2 +- clang-tools-extra/clang-tidy/tool/CMakeLists.txt | 4 +- .../clang-tidy/utils/RenamerClangTidyCheck.cpp | 3 + clang-tools-extra/clangd/ClangdLSPServer.cpp | 22 +- clang-tools-extra/clangd/ClangdLSPServer.h | 5 +- clang-tools-extra/clangd/ClangdServer.cpp | 11 + clang-tools-extra/clangd/ClangdServer.h | 4 + clang-tools-extra/clangd/CompileCommands.cpp | 13 +- clang-tools-extra/clangd/Diagnostics.cpp | 11 +- clang-tools-extra/clangd/Diagnostics.h | 3 +- clang-tools-extra/clangd/ParsedAST.cpp | 3 +- clang-tools-extra/clangd/Preamble.cpp | 3 +- clang-tools-extra/clangd/Selection.cpp | 82 +- clang-tools-extra/clangd/StdSymbolMap.inc | 1 - clang-tools-extra/clangd/XRefs.cpp | 180 + clang-tools-extra/clangd/XRefs.h | 6 + .../clangd/benchmarks/IndexBenchmark.cpp | 6 +- .../clangd/include-mapping/cppreference_parser.py | 20 +- .../clangd/index/BackgroundIndexStorage.cpp | 3 +- clang-tools-extra/clangd/index/FileIndex.cpp | 5 +- clang-tools-extra/clangd/index/Serialization.cpp | 26 +- clang-tools-extra/clangd/index/Serialization.h | 10 +- clang-tools-extra/clangd/index/SymbolOrigin.cpp | 4 +- clang-tools-extra/clangd/index/SymbolOrigin.h | 18 +- .../clangd/index/YAMLSerialization.cpp | 42 +- clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp | 5 +- clang-tools-extra/clangd/index/remote/Index.proto | 2 +- .../index/remote/marshalling/Marshalling.cpp | 1 - .../clangd/index/remote/server/Server.cpp | 6 +- .../test/index-serialization/Inputs/sample.idx | Bin 476 -> 476 bytes .../clangd/test/initialize-params.test | 1 + clang-tools-extra/clangd/test/type-definition.test | 32 + clang-tools-extra/clangd/tool/ClangdMain.cpp | 14 +- .../clangd/unittests/BackgroundIndexTests.cpp | 3 +- .../clangd/unittests/CodeCompleteTests.cpp | 59 +- .../clangd/unittests/ConfigCompileTests.cpp | 23 +- .../clangd/unittests/DiagnosticsTests.cpp | 11 + clang-tools-extra/clangd/unittests/IndexTests.cpp | 6 +- .../clangd/unittests/SelectionTests.cpp | 10 +- .../clangd/unittests/SerializationTests.cpp | 7 +- clang-tools-extra/clangd/unittests/XRefsTests.cpp | 65 + clang-tools-extra/docs/ReleaseNotes.rst | 8 + clang-tools-extra/docs/clang-tidy/checks/list.rst | 3 +- .../checks/misc-misleading-bidirectional.rst | 21 + clang-tools-extra/modularize/CMakeLists.txt | 2 +- .../test/clang-tidy/check_clang_tidy.py | 340 +- .../checkers/bugprone-reserved-identifier.cpp | 5 + .../checkers/bugprone-stringview-nullptr.cpp | 1242 +++-- ...uidelines-pro-bounds-array-to-pointer-decay.cpp | 11 + .../checkers/misc-misleading-bidirectional.cpp | Bin 0 -> 1479 bytes .../checkers/modernize-redundant-void-arg.cpp | 38 +- clang/CMakeLists.txt | 8 +- clang/cmake/modules/AddClang.cmake | 5 +- clang/cmake/modules/CMakeLists.txt | 8 + clang/docs/ClangCommandLineReference.rst | 8 + clang/docs/ClangFormatStyleOptions.rst | 56 + clang/docs/DataFlowSanitizer.rst | 19 + clang/docs/LanguageExtensions.rst | 218 +- clang/docs/ReleaseNotes.rst | 15 +- clang/docs/UsersManual.rst | 7 + clang/include/clang/AST/ASTConcept.h | 3 +- clang/include/clang/AST/ASTContext.h | 8 +- clang/include/clang/AST/CommentLexer.h | 3 + clang/include/clang/AST/DeclObjC.h | 3 + clang/include/clang/AST/UnresolvedSet.h | 2 +- .../clang/ASTMatchers/Dynamic/Diagnostics.h | 2 +- .../FlowSensitive/DataflowAnalysisContext.h | 38 +- .../Analysis/FlowSensitive/DataflowEnvironment.h | 85 +- clang/include/clang/Basic/Attr.td | 2 + clang/include/clang/Basic/Builtins.def | 4 + clang/include/clang/Basic/BuiltinsNVPTX.def | 17 + clang/include/clang/Basic/BuiltinsRISCV.def | 14 +- clang/include/clang/Basic/CodeGenOptions.def | 3 + clang/include/clang/Basic/DarwinSDKInfo.h | 14 + clang/include/clang/Basic/Diagnostic.td | 10 +- clang/include/clang/Basic/DiagnosticAST.h | 2 +- clang/include/clang/Basic/DiagnosticAnalysis.h | 2 +- clang/include/clang/Basic/DiagnosticComment.h | 2 +- clang/include/clang/Basic/DiagnosticCrossTU.h | 2 +- clang/include/clang/Basic/DiagnosticDriver.h | 2 +- clang/include/clang/Basic/DiagnosticDriverKinds.td | 4 - clang/include/clang/Basic/DiagnosticFrontend.h | 2 +- clang/include/clang/Basic/DiagnosticGroups.td | 1 + clang/include/clang/Basic/DiagnosticIDs.h | 2 +- clang/include/clang/Basic/DiagnosticLex.h | 2 +- clang/include/clang/Basic/DiagnosticParse.h | 2 +- clang/include/clang/Basic/DiagnosticParseKinds.td | 8 +- clang/include/clang/Basic/DiagnosticRefactoring.h | 2 +- clang/include/clang/Basic/DiagnosticSema.h | 2 +- clang/include/clang/Basic/DiagnosticSemaKinds.td | 20 +- .../include/clang/Basic/DiagnosticSerialization.h | 2 +- clang/include/clang/Basic/LangOptions.h | 1 + clang/include/clang/Basic/TargetInfo.h | 4 + clang/include/clang/Driver/Options.td | 11 + clang/include/clang/Driver/SanitizerArgs.h | 1 + clang/include/clang/Format/Format.h | 55 + clang/include/clang/Frontend/Utils.h | 15 - clang/include/clang/Lex/HeaderSearch.h | 12 + clang/include/clang/Parse/Parser.h | 8 +- clang/include/clang/Sema/ParsedAttr.h | 2 +- clang/include/clang/Sema/ParsedTemplate.h | 3 +- clang/include/clang/Sema/Sema.h | 11 +- clang/include/clang/Tooling/CompilationDatabase.h | 2 + clang/include/clang/Tooling/Syntax/Tree.h | 13 +- clang/lib/AST/ASTContext.cpp | 9 + clang/lib/AST/AttrImpl.cpp | 7 + clang/lib/AST/CommentLexer.cpp | 65 +- clang/lib/AST/DeclBase.cpp | 9 +- clang/lib/AST/DeclObjC.cpp | 12 + clang/lib/AST/MicrosoftCXXABI.cpp | 4 +- clang/lib/AST/Stmt.cpp | 13 +- clang/lib/ASTMatchers/Dynamic/Marshallers.h | 5 +- .../Analysis/FlowSensitive/ControlFlowContext.cpp | 1 + .../Analysis/FlowSensitive/DataflowEnvironment.cpp | 155 +- clang/lib/Analysis/FlowSensitive/Transfer.cpp | 324 +- .../FlowSensitive/TypeErasedDataflowAnalysis.cpp | 82 +- clang/lib/Basic/Diagnostic.cpp | 6 + clang/lib/Basic/DiagnosticIDs.cpp | 17 +- clang/lib/Basic/TargetInfo.cpp | 1 + clang/lib/Basic/Targets/AArch64.cpp | 3 + clang/lib/Basic/Targets/AArch64.h | 1 + clang/lib/Basic/Targets/AVR.h | 1 + clang/lib/Basic/Targets/X86.h | 11 +- clang/lib/CodeGen/BackendUtil.cpp | 11 +- clang/lib/CodeGen/CGBlocks.cpp | 335 +- clang/lib/CodeGen/CGBlocks.h | 62 +- clang/lib/CodeGen/CGBuiltin.cpp | 34 +- clang/lib/CodeGen/CGCXXABI.cpp | 45 + clang/lib/CodeGen/CGCXXABI.h | 12 + clang/lib/CodeGen/CGCall.cpp | 5 +- clang/lib/CodeGen/CGDebugInfo.cpp | 10 +- clang/lib/CodeGen/CGDecl.cpp | 7 +- clang/lib/CodeGen/CGDeclCXX.cpp | 1 + clang/lib/CodeGen/CGObjCMac.cpp | 3 +- clang/lib/CodeGen/CGStmt.cpp | 18 +- clang/lib/CodeGen/CGStmtOpenMP.cpp | 1 + clang/lib/CodeGen/CodeGenFunction.cpp | 29 +- clang/lib/CodeGen/CodeGenModule.cpp | 17 +- clang/lib/CodeGen/CodeGenModule.h | 3 +- clang/lib/CodeGen/CodeGenTypes.cpp | 14 +- clang/lib/CodeGen/ItaniumCXXABI.cpp | 53 - clang/lib/CodeGen/MicrosoftCXXABI.cpp | 94 +- .../CodeGen/ObjectFilePCHContainerOperations.cpp | 1 + clang/lib/CodeGen/TargetInfo.cpp | 9 +- clang/lib/Driver/Driver.cpp | 80 +- clang/lib/Driver/SanitizerArgs.cpp | 7 + clang/lib/Driver/ToolChains/CommonArgs.cpp | 4 + clang/lib/Driver/ToolChains/Fuchsia.cpp | 6 +- clang/lib/Driver/ToolChains/Gnu.cpp | 8 +- clang/lib/Driver/ToolChains/SPIRV.cpp | 21 + clang/lib/Driver/ToolChains/SPIRV.h | 12 + clang/lib/Format/ContinuationIndenter.cpp | 3 +- clang/lib/Format/DefinitionBlockSeparator.cpp | 81 +- clang/lib/Format/Format.cpp | 46 + clang/lib/Format/FormatToken.h | 3 + clang/lib/Format/NamespaceEndCommentsFixer.cpp | 3 +- clang/lib/Format/TokenAnnotator.cpp | 8 + clang/lib/Format/UnwrappedLineFormatter.cpp | 60 +- clang/lib/Format/UnwrappedLineParser.cpp | 249 +- clang/lib/Format/UnwrappedLineParser.h | 27 +- clang/lib/Frontend/CMakeLists.txt | 1 - clang/lib/Frontend/InitHeaderSearch.cpp | 687 --- clang/lib/Frontend/InitPreprocessor.cpp | 71 +- clang/lib/Headers/__clang_hip_runtime_wrapper.h | 21 +- clang/lib/Headers/limits.h | 18 + clang/lib/Headers/stdint.h | 168 + clang/lib/Lex/CMakeLists.txt | 1 + clang/lib/Lex/InitHeaderSearch.cpp | 686 +++ clang/lib/Parse/ParseCXXInlineMethods.cpp | 18 +- clang/lib/Parse/ParseOpenMP.cpp | 101 +- clang/lib/Sema/Sema.cpp | 14 +- clang/lib/Sema/SemaChecking.cpp | 8 +- clang/lib/Sema/SemaCodeComplete.cpp | 24 +- clang/lib/Sema/SemaCoroutine.cpp | 60 +- clang/lib/Sema/SemaDecl.cpp | 6 +- clang/lib/Sema/SemaDeclAttr.cpp | 50 +- clang/lib/Sema/SemaExpr.cpp | 17 +- clang/lib/Sema/SemaExprCXX.cpp | 2 +- clang/lib/Sema/SemaLookup.cpp | 43 +- clang/lib/Sema/SemaModule.cpp | 15 +- clang/lib/Sema/SemaObjCProperty.cpp | 8 +- clang/lib/Sema/SemaOpenMP.cpp | 42 +- clang/lib/Sema/SemaOverload.cpp | 8 +- clang/lib/Sema/SemaStmt.cpp | 10 +- clang/lib/Sema/SemaTemplateDeduction.cpp | 2 +- clang/lib/Sema/SemaTemplateInstantiate.cpp | 7 +- clang/lib/Serialization/ASTReaderDecl.cpp | 6 +- .../Tooling/InterpolatingCompilationDatabase.cpp | 3 +- clang/test/CodeCompletion/ctor-initializer.cpp | 20 + clang/test/CodeCompletion/desig-init.cpp | 8 + clang/test/CodeCompletion/member-access.cpp | 15 + .../RISCV/rvb-intrinsics/riscv32-zbb-error.c | 2 +- .../CodeGen/RISCV/rvb-intrinsics/riscv32-zbb.c | 2 +- .../CodeGen/RISCV/rvb-intrinsics/riscv32-zbc.c | 2 +- .../CodeGen/RISCV/rvb-intrinsics/riscv32-zbf.c | 18 + .../CodeGen/RISCV/rvb-intrinsics/riscv64-zbb.c | 2 +- .../CodeGen/RISCV/rvb-intrinsics/riscv64-zbc.c | 2 +- .../CodeGen/RISCV/rvb-intrinsics/riscv64-zbf.c | 33 + clang/test/CodeGen/asm-goto.c | 40 +- clang/test/CodeGen/asm.c | 2 +- clang/test/CodeGen/attr-cpuspecific-renaming.cpp | 43 + clang/test/CodeGen/avr/functionptr-addrspace.c | 8 + clang/test/CodeGen/builtins-nvptx.c | 38 +- clang/test/CodeGen/builtins-reduction-math.c | 22 + ...tr-and-nonzero-offset-when-nullptr-is-defined.c | 3 +- .../CodeGen/catch-nullptr-and-nonzero-offset.c | 12 +- .../test/CodeGen/catch-pointer-overflow-volatile.c | 3 +- clang/test/CodeGen/catch-pointer-overflow.c | 12 +- clang/test/CodeGen/catch-undef-behavior.c | 11 + clang/test/CodeGen/math-builtins.c | 6 - clang/test/CodeGen/msan-param-retval.c | 19 + clang/test/CodeGen/target-data.c | 2 +- clang/test/CodeGen/ubsan-pointer-overflow.c | 1 + .../CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu | 8 - clang/test/CodeGenCXX/global-array-destruction.cpp | 6 +- clang/test/CodeGenCXX/ms-thread_local.cpp | 37 +- clang/test/CodeGenCXX/trivial-auto-var-init.cpp | 28 + clang/test/CodeGenCoroutines/Inputs/coroutine.h | 55 +- clang/test/CodeGenCoroutines/coro-elide.cpp | 63 + .../coro-symmetric-transfer-03.cpp | 68 + clang/test/CodeGenObjC/arc-blocks.m | 19 + clang/test/CodeGenObjC/blocks.m | 27 + clang/test/CodeGenOpenCL/amdgpu-attrs.cl | 51 +- .../test/CodeGenOpenCL/cl20-device-side-enqueue.cl | 30 +- clang/test/CodeGenSYCL/functionptr-addrspace.cpp | 25 + clang/test/Driver/aarch64-hbc.c | 6 + clang/test/Driver/aarch64-perfmon.c | 13 - clang/test/Driver/arm-perfmon.c | 13 - clang/test/Driver/diagnostics.c | 56 +- clang/test/Driver/fsanitize-memory-param-retval.c | 12 + clang/test/Driver/fuchsia.c | 2 + clang/test/Driver/hip-phases.hip | 36 +- clang/test/Driver/hip-toolchain-rdc-separate.hip | 71 +- clang/test/Driver/linux-cross.cpp | 11 + clang/test/Driver/riscv-arch.c | 21 +- clang/test/Driver/sanitizer-ld.c | 2 +- clang/test/Driver/spirv-toolchain.cl | 12 +- clang/test/Headers/hip-header.hip | 19 +- clang/test/Headers/limits.cpp | 45 +- clang/test/Headers/stdint.c | 253 + clang/test/Lexer/pragma-message.c | 2 +- .../Modules/Inputs/template_name_lookup/foo.cppm | 3 + clang/test/Modules/ModuleDebugInfo.cpp | 2 +- clang/test/Modules/asm-goto.c | 2 +- clang/test/Modules/export-in-non-modules.cpp | 4 + clang/test/Modules/template_name_lookup.cpp | 11 + clang/test/OpenMP/amdgcn-attributes.cpp | 8 +- clang/test/OpenMP/declare_target_ast_print.cpp | 45 + clang/test/OpenMP/declare_target_messages.cpp | 47 +- .../OpenMP/declare_variant_clauses_ast_print.c | 51 + .../OpenMP/declare_variant_clauses_messages.cpp | 11 +- ...ibute_parallel_for_simd_num_threads_codegen.cpp | 1984 ++++---- clang/test/OpenMP/for_lastprivate_codegen.cpp | 73 +- clang/test/OpenMP/for_linear_codegen.cpp | 12 +- .../OpenMP/metadirective_device_isa_codegen.cpp | 32 + .../metadirective_device_isa_codegen_amdgcn.cpp | 53 + clang/test/OpenMP/metadirective_messages.cpp | 2 + .../test/OpenMP/parallel_firstprivate_codegen.cpp | 25 +- clang/test/OpenMP/parallel_private_codegen.cpp | 13 +- clang/test/OpenMP/parallel_reduction_codegen.cpp | 33 +- clang/test/OpenMP/single_codegen.cpp | 1132 +++-- clang/test/OpenMP/taskgroup_codegen.cpp | 84 +- clang/test/OpenMP/teams_private_codegen.cpp | 25 +- clang/test/Preprocessor/init-aarch64.c | 13 + clang/test/Preprocessor/init.c | 14 + clang/test/Preprocessor/riscv-target-features.c | 40 +- .../Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json | 67 + .../Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json | 57 + clang/test/Sema/attr-availability-tvos.c | 87 +- clang/test/Sema/attr-availability-watchos.c | 19 +- clang/test/Sema/builtins-reduction-math.c | 34 + clang/test/Sema/warn-alloca.c | 14 + .../Sema/warn-documentation-unknown-command.cpp | 9 + clang/test/Sema/warn-documentation.cpp | 10 + clang/test/Sema/warn-mixed-decls.c | 28 + ...outine-final-suspend-noexcept-exp-namespace.cpp | 67 +- .../SemaCXX/coroutine-final-suspend-noexcept.cpp | 63 +- .../SemaCXX/lookup-template-name-extern-CXX.cpp | 12 + clang/test/SemaCXX/lookup-through-export.cpp | 31 + clang/test/SemaCXX/pr31042.cpp | 10 + clang/test/SemaCXX/typo-correction.cpp | 31 + clang/test/SemaCXX/warn-sysheader-macro.cpp | 14 +- clang/test/SemaObjC/class-property-inheritance.m | 39 + clang/test/TableGen/DiagnosticBase.inc | 9 + clang/test/TableGen/deferred-diag.td | 12 +- .../Tooling/clang-check-analyze-save-temps.cpp | 19 + clang/tools/c-index-test/CMakeLists.txt | 2 +- clang/tools/clang-check/ClangCheck.cpp | 52 +- clang/tools/clang-format/CMakeLists.txt | 12 +- clang/tools/clang-nvlink-wrapper/CMakeLists.txt | 2 +- clang/tools/clang-rename/CMakeLists.txt | 4 +- clang/tools/diagtool/DiagnosticNames.cpp | 6 +- clang/tools/libclang/CMakeLists.txt | 2 +- clang/tools/scan-build-py/CMakeLists.txt | 6 +- clang/tools/scan-build/CMakeLists.txt | 6 +- clang/tools/scan-view/CMakeLists.txt | 4 +- .../Analysis/FlowSensitive/TestingSupport.h | 2 +- .../Analysis/FlowSensitive/TransferTest.cpp | 1248 ++++- .../Format/DefinitionBlockSeparatorTest.cpp | 209 +- clang/unittests/Format/FormatTest.cpp | 479 +- clang/unittests/Format/FormatTestCSharp.cpp | 27 + clang/unittests/Format/FormatTestJava.cpp | 11 + .../Format/NamespaceEndCommentsFixerTest.cpp | 14 + clang/unittests/Lex/HeaderSearchTest.cpp | 1 - .../unittests/Tooling/CompilationDatabaseTest.cpp | 17 +- clang/utils/TableGen/ClangDiagnosticsEmitter.cpp | 5 + clang/utils/TableGen/MveEmitter.cpp | 3 +- clang/utils/hmaptool/CMakeLists.txt | 2 +- clang/www/c_status.html | 6 +- cmake/README.md | 53 - cmake/README.rst | 59 + compiler-rt/cmake/base-config-ix.cmake | 6 +- compiler-rt/cmake/config-ix.cmake | 3 + compiler-rt/include/profile/InstrProfData.inc | 4 +- compiler-rt/lib/asan/CMakeLists.txt | 3 + compiler-rt/lib/asan/asan_win_dll_thunk.cpp | 11 + compiler-rt/lib/builtins/cpu_model.c | 8 +- compiler-rt/lib/builtins/emutls.c | 2 +- compiler-rt/lib/builtins/udivmoddi4.c | 2 +- compiler-rt/lib/interception/CMakeLists.txt | 3 + compiler-rt/lib/profile/CMakeLists.txt | 5 +- compiler-rt/lib/profile/InstrProfiling.c | 6 +- compiler-rt/lib/profile/InstrProfiling.h | 21 +- compiler-rt/lib/profile/InstrProfilingBuffer.c | 56 +- compiler-rt/lib/profile/InstrProfilingFile.c | 28 +- compiler-rt/lib/profile/InstrProfilingInternal.h | 11 +- compiler-rt/lib/profile/InstrProfilingMerge.c | 59 +- .../lib/profile/InstrProfilingPlatformDarwin.c | 9 +- .../lib/profile/InstrProfilingPlatformFuchsia.c | 10 +- .../lib/profile/InstrProfilingPlatformLinux.c | 8 +- .../lib/profile/InstrProfilingPlatformOther.c | 22 +- .../lib/profile/InstrProfilingPlatformWindows.c | 8 +- compiler-rt/lib/profile/InstrProfilingWriter.c | 20 +- .../sanitizer_common/sanitizer_linux_libcdep.cpp | 2 + .../lib/sanitizer_common/sanitizer_stack_store.cpp | 8 + .../lib/sanitizer_common/sanitizer_unwind_win.cpp | 27 +- compiler-rt/lib/sanitizer_common/sanitizer_win.cpp | 11 +- .../lib/scudo/standalone/tests/mutex_test.cpp | 2 +- .../lib/tsan/tests/unit/tsan_trace_test.cpp | 8 +- compiler-rt/lib/ubsan/CMakeLists.txt | 3 + .../test/profile/instrprof-write-buffer-internal.c | 20 +- compiler-rt/test/tsan/Darwin/mach_vm_allocate.c | 3 + .../test/tsan/libdispatch/dispatch_once_deadlock.c | 11 +- compiler-rt/test/ubsan/TestCases/Misc/objc-cast.m | 2 +- .../llvm-prettyprinters/gdb/mlir-support.cpp | 3 +- flang/README.md | 177 +- flang/docs/Extensions.md | 21 +- flang/include/flang/Common/Fortran-features.h | 2 +- flang/include/flang/Common/unwrap.h | 2 +- flang/include/flang/Evaluate/constant.h | 3 + flang/include/flang/Evaluate/logical.h | 12 +- flang/include/flang/Evaluate/shape.h | 13 + flang/include/flang/Evaluate/tools.h | 5 + flang/include/flang/ISO_Fortran_binding.h | 39 +- flang/include/flang/Parser/dump-parse-tree.h | 2 + flang/include/flang/Parser/parse-tree.h | 17 +- flang/include/flang/Parser/tools.h | 2 +- flang/include/flang/Parser/user-state.h | 5 + flang/include/flang/Runtime/iostat.h | 1 + flang/include/flang/Runtime/type-code.h | 6 +- flang/include/flang/Semantics/expression.h | 4 +- flang/include/flang/Semantics/semantics.h | 9 +- flang/include/flang/Semantics/symbol.h | 15 +- flang/lib/Evaluate/check-expression.cpp | 17 +- flang/lib/Evaluate/constant.cpp | 22 + flang/lib/Evaluate/fold-designator.cpp | 34 +- flang/lib/Evaluate/fold-implementation.h | 4 +- flang/lib/Evaluate/fold-integer.cpp | 8 +- flang/lib/Evaluate/fold-real.cpp | 2 +- flang/lib/Evaluate/formatting.cpp | 10 +- flang/lib/Evaluate/intrinsics-library.cpp | 3 +- flang/lib/Evaluate/intrinsics.cpp | 25 +- flang/lib/Evaluate/shape.cpp | 17 +- flang/lib/Evaluate/tools.cpp | 65 + flang/lib/Evaluate/variable.cpp | 122 +- flang/lib/Lower/FIRBuilder.cpp | 6 +- flang/lib/Optimizer/Builder/FIRBuilder.cpp | 6 +- flang/lib/Optimizer/CodeGen/CodeGen.cpp | 19 +- flang/lib/Parser/Fortran-parsers.cpp | 33 +- flang/lib/Parser/preprocessor.cpp | 3 +- flang/lib/Parser/unparse.cpp | 46 +- flang/lib/Parser/user-state.cpp | 23 +- flang/lib/Semantics/check-data.cpp | 32 +- flang/lib/Semantics/check-data.h | 4 + flang/lib/Semantics/check-io.cpp | 40 +- flang/lib/Semantics/check-omp-structure.cpp | 1 + flang/lib/Semantics/data-to-inits.cpp | 101 +- flang/lib/Semantics/data-to-inits.h | 6 + flang/lib/Semantics/expression.cpp | 5 +- flang/lib/Semantics/mod-file.cpp | 126 +- flang/lib/Semantics/mod-file.h | 15 +- flang/lib/Semantics/program-tree.cpp | 39 +- flang/lib/Semantics/program-tree.h | 8 + flang/lib/Semantics/resolve-names.cpp | 194 +- flang/lib/Semantics/runtime-type-info.cpp | 5 +- flang/lib/Semantics/semantics.cpp | 14 +- flang/lib/Semantics/type.cpp | 9 +- flang/runtime/ISO_Fortran_binding.cpp | 24 + flang/runtime/connection.cpp | 4 + flang/runtime/connection.h | 1 + flang/runtime/edit-input.cpp | 12 +- flang/runtime/internal-unit.cpp | 28 +- flang/runtime/internal-unit.h | 2 + flang/runtime/iostat.cpp | 2 + flang/runtime/type-code.cpp | 26 +- flang/runtime/unit.cpp | 16 +- flang/test/Evaluate/fold-substr.f90 | 17 + flang/test/Evaluate/folding02.f90 | 14 + flang/test/Evaluate/rewrite01.f90 | 52 + flang/test/Fir/convert-to-llvm.fir | 70 +- flang/test/Fir/types-to-llvm.fir | 35 +- flang/test/Preprocessing/pp045.F | 9 + flang/test/Preprocessing/pp131.F90 | 9 + flang/test/Semantics/assign06.f90 | 14 +- flang/test/Semantics/data04.f90 | 14 - flang/test/Semantics/data06.f90 | 2 - flang/test/Semantics/data14.f90 | 16 + flang/test/Semantics/data15.f90 | 15 + flang/test/Semantics/entry01.f90 | 24 +- flang/test/Semantics/modfile42.f90 | 48 + flang/test/Semantics/resolve107.f90 | 13 + flang/test/Semantics/resolve31.f90 | 2 + flang/test/Semantics/resolve45.f90 | 11 - flang/test/Semantics/struct01.f90 | 19 + flang/test/Semantics/structconst01.f90 | 13 + flang/test/Semantics/symbol15.f90 | 24 +- flang/tools/f18/flang | 23 + .../unittests/Optimizer/Builder/FIRBuilderTest.cpp | 4 +- flang/unittests/Runtime/ExternalIOTest.cpp | 59 + flang/unittests/Runtime/NumericalFormatTest.cpp | 5 +- libc/CMakeLists.txt | 2 + libc/cmake/modules/LLVMLibCTestRules.cmake | 24 +- libc/config/linux/aarch64/entrypoints.txt | 18 +- libc/config/linux/x86_64/entrypoints.txt | 13 +- libc/config/windows/entrypoints.txt | 1 + libc/loader/linux/x86_64/CMakeLists.txt | 1 - libc/loader/linux/x86_64/start.cpp | 1 - libc/spec/stdc.td | 2 + libc/src/CMakeLists.txt | 6 +- libc/src/__support/FPUtil/PolyEval.h | 4 +- libc/src/__support/OSUtil/linux/CMakeLists.txt | 2 + .../__support/OSUtil/linux/aarch64/CMakeLists.txt | 7 + libc/src/__support/OSUtil/linux/aarch64/syscall.h | 114 + libc/src/__support/OSUtil/linux/syscall.h | 12 + libc/src/__support/OSUtil/linux/x86_64/syscall.h | 6 - libc/src/math/CMakeLists.txt | 2 + libc/src/math/docs/add_math_function.md | 6 + libc/src/math/generic/CMakeLists.txt | 25 + libc/src/math/generic/common_constants.cpp | 59 + libc/src/math/generic/common_constants.h | 19 + libc/src/math/generic/log2f.cpp | 154 + libc/src/math/generic/logf.cpp | 47 +- libc/src/math/log2f.h | 18 + libc/src/sys/mman/linux/mmap.cpp | 6 +- libc/src/sys/mman/linux/munmap.cpp | 7 +- libc/src/sys/mman/mmap.h | 2 +- libc/src/sys/mman/munmap.h | 2 +- libc/src/unistd/linux/write.cpp | 5 +- libc/test/ErrnoSetterMatcher.h | 7 +- libc/test/src/CMakeLists.txt | 5 +- libc/test/src/math/CMakeLists.txt | 13 + libc/test/src/math/SqrtTest.h | 39 +- .../src/math/differential_testing/CMakeLists.txt | 22 + .../src/math/differential_testing/log2f_diff.cpp | 16 + .../src/math/differential_testing/log2f_perf.cpp | 16 + libc/test/src/math/exhaustive/CMakeLists.txt | 31 + libc/test/src/math/exhaustive/exhaustive_test.cpp | 58 + libc/test/src/math/exhaustive/exhaustive_test.h | 26 + libc/test/src/math/exhaustive/log2f_test.cpp | 51 + libc/test/src/math/exhaustive/logf_test.cpp | 41 +- libc/test/src/math/log2f_test.cpp | 64 + libc/test/src/stdlib/strtold_test.cpp | 8 +- libc/test/src/sys/mman/linux/mmap_test.cpp | 12 +- libc/test/src/unistd/write_test.cpp | 3 +- libc/utils/MPFRWrapper/MPFRUtils.cpp | 579 ++- libc/utils/MPFRWrapper/MPFRUtils.h | 199 +- libc/utils/UnitTest/FPMatcher.cpp | 25 +- libc/utils/UnitTest/FPMatcher.h | 5 +- libclc/CMakeLists.txt | 13 +- libclc/clspv64 | 1 + libcxx/CMakeLists.txt | 42 +- libcxx/cmake/Modules/HandleLibCXXABI.cmake | 5 +- libcxx/docs/ReleaseNotes.rst | 5 + libcxx/docs/Status/Cxx20Papers.csv | 2 +- libcxx/docs/Status/Cxx2bIssues.csv | 2 +- libcxx/docs/Status/RangesAlgorithms.csv | 16 +- libcxx/docs/Status/RangesIssues.csv | 2 +- libcxx/docs/Status/RangesPaper.csv | 22 +- libcxx/docs/Status/Zip.rst | 29 + libcxx/docs/Status/ZipProjects.csv | 27 + libcxx/docs/index.rst | 1 + libcxx/include/CMakeLists.txt | 83 +- libcxx/include/__algorithm/adjacent_find.h | 2 +- libcxx/include/__algorithm/binary_search.h | 2 +- libcxx/include/__algorithm/clamp.h | 2 +- libcxx/include/__algorithm/copy.h | 2 +- libcxx/include/__algorithm/copy_backward.h | 2 +- libcxx/include/__algorithm/copy_if.h | 4 - libcxx/include/__algorithm/copy_n.h | 4 +- libcxx/include/__algorithm/equal.h | 2 +- libcxx/include/__algorithm/equal_range.h | 2 +- libcxx/include/__algorithm/fill.h | 2 +- libcxx/include/__algorithm/find_end.h | 2 +- libcxx/include/__algorithm/find_first_of.h | 2 +- libcxx/include/__algorithm/in_in_result.h | 43 + libcxx/include/__algorithm/in_out_result.h | 52 + libcxx/include/__algorithm/includes.h | 2 +- libcxx/include/__algorithm/inplace_merge.h | 4 +- libcxx/include/__algorithm/is_heap.h | 2 +- libcxx/include/__algorithm/is_heap_until.h | 2 +- libcxx/include/__algorithm/is_sorted_until.h | 2 +- .../include/__algorithm/lexicographical_compare.h | 2 +- libcxx/include/__algorithm/lower_bound.h | 2 +- libcxx/include/__algorithm/make_heap.h | 2 +- libcxx/include/__algorithm/max.h | 2 +- libcxx/include/__algorithm/max_element.h | 2 +- libcxx/include/__algorithm/merge.h | 2 +- libcxx/include/__algorithm/min.h | 2 +- libcxx/include/__algorithm/min_element.h | 2 +- libcxx/include/__algorithm/minmax.h | 3 +- libcxx/include/__algorithm/minmax_element.h | 2 +- libcxx/include/__algorithm/mismatch.h | 2 +- libcxx/include/__algorithm/move.h | 4 +- libcxx/include/__algorithm/move_backward.h | 4 +- libcxx/include/__algorithm/next_permutation.h | 2 +- libcxx/include/__algorithm/nth_element.h | 2 +- libcxx/include/__algorithm/partial_sort.h | 2 +- libcxx/include/__algorithm/partial_sort_copy.h | 3 +- libcxx/include/__algorithm/partition.h | 1 - libcxx/include/__algorithm/partition_point.h | 2 +- libcxx/include/__algorithm/pop_heap.h | 2 +- libcxx/include/__algorithm/prev_permutation.h | 2 +- libcxx/include/__algorithm/push_heap.h | 2 +- libcxx/include/__algorithm/remove.h | 2 +- libcxx/include/__algorithm/remove_if.h | 2 +- libcxx/include/__algorithm/reverse.h | 2 +- libcxx/include/__algorithm/rotate_copy.h | 4 +- libcxx/include/__algorithm/search_n.h | 2 +- libcxx/include/__algorithm/set_difference.h | 2 +- libcxx/include/__algorithm/set_intersection.h | 2 +- .../include/__algorithm/set_symmetric_difference.h | 2 +- libcxx/include/__algorithm/set_union.h | 2 +- libcxx/include/__algorithm/shift_left.h | 4 +- libcxx/include/__algorithm/shift_right.h | 5 +- libcxx/include/__algorithm/sort.h | 2 +- libcxx/include/__algorithm/sort_heap.h | 2 +- libcxx/include/__algorithm/stable_partition.h | 2 +- libcxx/include/__algorithm/stable_sort.h | 4 +- libcxx/include/__algorithm/unique.h | 4 +- libcxx/include/__algorithm/unique_copy.h | 2 +- libcxx/include/__algorithm/unwrap_iter.h | 2 +- libcxx/include/__algorithm/upper_bound.h | 2 +- libcxx/include/__bit_reference | 2 +- libcxx/include/__chrono/calendar.h | 1277 +++++ libcxx/include/__chrono/duration.h | 615 +++ libcxx/include/__chrono/file_clock.h | 85 + libcxx/include/__chrono/high_resolution_clock.h | 36 + libcxx/include/__chrono/steady_clock.h | 44 + libcxx/include/__chrono/system_clock.h | 54 + libcxx/include/__chrono/time_point.h | 249 + libcxx/include/__compare/compare_three_way.h | 2 +- libcxx/include/__compare/synth_three_way.h | 2 +- libcxx/include/__config | 19 +- libcxx/include/__debug | 15 +- libcxx/include/__filesystem/directory_entry.h | 15 +- libcxx/include/__filesystem/directory_iterator.h | 2 +- libcxx/include/__filesystem/filesystem_error.h | 2 +- libcxx/include/__filesystem/path.h | 6 +- libcxx/include/__filesystem/path_iterator.h | 2 +- libcxx/include/__format/formatter_integral.h | 8 +- libcxx/include/__functional/bind.h | 2 +- libcxx/include/__functional/bind_front.h | 2 +- libcxx/include/__functional/hash.h | 2 +- libcxx/include/__functional/mem_fn.h | 2 +- libcxx/include/__functional/mem_fun_ref.h | 2 +- libcxx/include/__functional/not_fn.h | 2 +- libcxx/include/__iterator/advance.h | 2 +- libcxx/include/__iterator/counted_iterator.h | 2 +- libcxx/include/__iterator/move_iterator.h | 144 +- libcxx/include/__iterator/reverse_iterator.h | 2 +- libcxx/include/__locale | 42 +- libcxx/include/__memory/construct_at.h | 12 +- libcxx/include/__memory/ranges_construct_at.h | 144 + .../__memory/ranges_uninitialized_algorithms.h | 186 +- libcxx/include/__memory/shared_ptr.h | 6 +- libcxx/include/__memory/uninitialized_algorithms.h | 177 +- libcxx/include/__memory/unique_ptr.h | 2 +- libcxx/include/__mutex_base | 1 + libcxx/include/__random/chi_squared_distribution.h | 2 +- libcxx/include/__random/gamma_distribution.h | 2 +- libcxx/include/__random/random_device.h | 19 + libcxx/include/__ranges/access.h | 18 +- libcxx/include/__ranges/all.h | 8 +- libcxx/include/__ranges/concepts.h | 27 +- libcxx/include/__ranges/data.h | 51 +- libcxx/include/__ranges/owning_view.h | 81 + libcxx/include/__ranges/single_view.h | 2 +- libcxx/include/__string | 8 +- libcxx/include/__thread/poll_with_backoff.h | 1 + libcxx/include/__utility/swap.h | 2 +- libcxx/include/algorithm | 19 +- libcxx/include/bitset | 2 +- libcxx/include/chrono | 2140 +------- libcxx/include/cmath | 2 +- libcxx/include/coroutine | 2 +- libcxx/include/experimental/__memory | 2 +- libcxx/include/experimental/algorithm | 5 +- libcxx/include/experimental/coroutine | 8 +- libcxx/include/experimental/deque | 2 +- libcxx/include/experimental/forward_list | 2 +- libcxx/include/experimental/functional | 10 +- libcxx/include/experimental/iterator | 2 +- libcxx/include/experimental/list | 2 +- libcxx/include/experimental/map | 2 +- libcxx/include/experimental/memory_resource | 8 +- libcxx/include/experimental/propagate_const | 9 +- libcxx/include/experimental/regex | 4 +- libcxx/include/experimental/set | 2 +- libcxx/include/experimental/simd | 10 +- libcxx/include/experimental/string | 2 +- libcxx/include/experimental/unordered_map | 2 +- libcxx/include/experimental/unordered_set | 2 +- libcxx/include/experimental/vector | 2 +- libcxx/include/ext/__hash | 2 +- libcxx/include/ext/hash_map | 2 +- libcxx/include/ext/hash_set | 2 +- libcxx/include/filesystem | 2 +- libcxx/include/functional | 2 +- libcxx/include/iterator | 8 +- libcxx/include/list | 206 +- libcxx/include/math.h | 2 +- libcxx/include/memory | 126 +- libcxx/include/module.modulemap | 23 +- libcxx/include/numbers | 60 +- libcxx/include/optional | 4 +- libcxx/include/ranges | 9 +- libcxx/include/regex | 38 +- libcxx/include/stdexcept | 2 +- libcxx/include/streambuf | 1 + libcxx/include/string | 135 +- libcxx/include/type_traits | 2 +- libcxx/include/unordered_map | 118 +- libcxx/include/unordered_set | 116 +- libcxx/include/vector | 68 +- libcxx/src/chrono.cpp | 23 +- libcxx/src/filesystem/filesystem_common.h | 1 + libcxx/src/locale.cpp | 43 +- libcxx/src/random.cpp | 4 +- libcxx/src/regex.cpp | 120 + libcxx/test/configs/apple-libc++-shared.cfg.in | 2 +- libcxx/test/configs/ibm-libc++-shared.cfg.in | 2 +- libcxx/test/configs/llvm-libc++-shared-gcc.cfg.in | 2 +- libcxx/test/configs/llvm-libc++-shared.cfg.in | 2 +- libcxx/test/configs/llvm-libc++-static.cfg.in | 2 +- libcxx/test/libcxx/debug/extern-templates.sh.cpp | 4 +- .../algorithm/in_in_result.module.verify.cpp | 15 + .../algorithm/in_out_result.module.verify.cpp | 15 + .../chrono/calendar.module.verify.cpp | 15 + .../chrono/duration.module.verify.cpp | 15 + .../chrono/file_clock.module.verify.cpp | 15 + .../chrono/high_resolution_clock.module.verify.cpp | 15 + .../chrono/steady_clock.module.verify.cpp | 15 + .../chrono/system_clock.module.verify.cpp | 15 + .../chrono/time_point.module.verify.cpp | 15 + .../memory/ranges_construct_at.module.verify.cpp | 15 + .../ranges/owning_view.module.verify.cpp | 15 + .../support.dynamic/libcpp_deallocate.sh.cpp | 4 +- libcxx/test/libcxx/lint/lint_cmakelists.sh.py | 31 + libcxx/test/libcxx/lint/lint_headers.sh.py | 52 + libcxx/test/libcxx/lint/lint_modulemap.sh.py | 29 + libcxx/test/libcxx/lint/lit.local.cfg | 3 + .../memory/trivial_abi/weak_ptr_ret.pass.cpp | 3 +- libcxx/test/libcxx/nasty_macros.compile.pass.cpp | 354 ++ .../simple_view.compile.pass.cpp | 9 +- .../alg.sorting/alg.sort/sort/sort.pass.cpp | 1 + .../algorithms.results/in_in_result.pass.cpp | 84 + .../in_out_result.compile.pass.cpp | 28 + .../algorithms.results/in_out_result.pass.cpp | 133 + .../no_unique_address.compile.pass.cpp | 27 + .../concept.swappable/swappable.pass.cpp | 93 +- .../map/range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../set/range_concept_conformance.compile.pass.cpp | 2 +- .../queue/queue.cons.alloc/ctor_iterators.pass.cpp | 2 + .../queue/queue.cons/ctor_iterators.pass.cpp | 2 + .../stack/stack.cons.alloc/ctor_iterators.pass.cpp | 2 + .../stack/stack.cons/ctor_iterators.pass.cpp | 2 + .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../sequences/vector.bool/reserve.pass.cpp | 1 + .../containers/sequences/vector/access.pass.cpp | 5 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../vector/vector.capacity/reserve.pass.cpp | 1 + .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../views/span.cons/initializer_list.pass.cpp | 8 +- .../syserr.errcat.objects/system_category.pass.cpp | 3 +- .../ostream_joiner.op.assign.pass.cpp | 2 + .../directory_entry.io/directory_entry.io.pass.cpp | 54 + .../directory_entry.mods/refresh.pass.cpp | 1 + .../directory_entry.obs/last_write_time.pass.cpp | 1 + .../directory_iterator.members/increment.pass.cpp | 1 + .../path.member/path.assign/move.pass.cpp | 2 - .../path.member/path.construct/move.pass.cpp | 1 - .../class.path/path.nonmember/path.io.pass.cpp | 2 + .../range_concept_conformance.compile.pass.cpp | 2 +- .../rec.dir.itr.members/move.pass.cpp | 1 + .../rec.dir.itr.members/move_assign.pass.cpp | 1 + .../file_time_type_resolution.compile.pass.cpp | 1 + .../fs.op.funcs/fs.op.exists/exists.pass.cpp | 1 + .../fs.op.is_char_file/is_character_file.pass.cpp | 1 + .../fs.op.last_write_time/last_write_time.pass.cpp | 1 + .../range.iter.ops.advance/iterator_count.pass.cpp | 87 +- .../iterator_count_sentinel.pass.cpp | 203 +- .../iterator_sentinel.pass.cpp | 189 +- .../range.iter.ops.next/iterator.pass.cpp | 35 +- .../range.iter.ops.next/iterator_count.pass.cpp | 62 +- .../iterator_count_sentinel.pass.cpp | 60 +- .../range.iter.ops.next/iterator_sentinel.pass.cpp | 160 +- .../range.iter.ops.prev/iterator.pass.cpp | 25 +- .../range.iter.ops.prev/iterator_count.pass.cpp | 43 +- .../iterator_count_sentinel.pass.cpp | 56 +- .../iterator.primitives/range.iter.ops/types.h | 57 + .../iterator.cust/iterator.cust.swap.pass.cpp | 206 - .../iterator.cust.swap/iter_swap.pass.cpp | 206 + .../insert.iterator/cxx20_iter_member.pass.cpp | 16 +- .../coroutine.handle.export/from_address.pass.cpp | 6 +- .../coroutine.handle.hash/hash.pass.cpp | 8 +- .../coroutine.handle.noop/noop_coroutine.pass.cpp | 2 +- .../ctime.timespec.compile.pass.cpp | 2 + .../cpo.compile.pass.cpp | 2 +- .../locale.collate.byname/compare.pass.cpp | 3 +- .../facet.ctype.char.dtor/dtor.pass.cpp | 2 - .../facet.num.put.members/put_double.pass.cpp | 3 +- .../facet.num.put.members/put_long_double.pass.cpp | 3 +- libcxx/test/std/numerics/bit/byteswap.pass.cpp | 10 +- .../numeric.ops.midpoint/midpoint.float.pass.cpp | 2 + .../std/numerics/rand/rand.device/ctor.pass.cpp | 52 +- .../std/numerics/rand/rand.device/eval.pass.cpp | 19 +- libcxx/test/std/ranges/range.access/begin.pass.cpp | 4 +- libcxx/test/std/ranges/range.access/data.pass.cpp | 123 +- libcxx/test/std/ranges/range.access/empty.pass.cpp | 1 + libcxx/test/std/ranges/range.access/end.pass.cpp | 13 +- libcxx/test/std/ranges/range.access/size.pass.cpp | 1 + libcxx/test/std/ranges/range.access/ssize.pass.cpp | 1 + .../ranges/range.adaptors/range.all/all.pass.cpp | 46 +- .../range.all/all_t.compile.pass.cpp | 45 +- .../range.all/range.owning.view/base.pass.cpp | 61 + .../range.all/range.owning.view/begin_end.pass.cpp | 133 + .../range.owning.view/borrowing.compile.pass.cpp | 33 + .../range.owning.view/constructor.pass.cpp | 140 + .../range.all/range.owning.view/data.pass.cpp | 78 + .../range.all/range.owning.view/empty.pass.cpp | 105 + .../range.all/range.owning.view/size.pass.cpp | 99 + .../range.common.view/ctad.compile.pass.cpp | 13 +- .../range.adaptors/range.drop/begin.pass.cpp | 51 + .../range.drop/ctad.compile.pass.cpp | 58 +- .../range.adaptors/range.join.view/begin.pass.cpp | 25 + .../range.join.view/ctad.compile.pass.cpp | 55 +- .../range.reverse/ctad.compile.pass.cpp | 69 + .../range.adaptors/range.reverse/ctad.pass.cpp | 72 - .../range.adaptors/range.take/begin.pass.cpp | 15 + .../range.take/ctad.compile.pass.cpp | 34 +- .../range.transform/ctad.compile.pass.cpp | 63 +- .../range_concept_conformance.compile.pass.cpp | 12 +- .../range.factories/range.iota.view/size.pass.cpp | 3 +- .../contiguous_range.compile.pass.cpp | 6 +- .../viewable_range.compile.pass.cpp | 99 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../range_concept_conformance.compile.pass.cpp | 2 +- .../string.capacity/resize_and_overwrite.pass.cpp | 1 + .../thread.thread.constr/F.pass.cpp | 4 +- .../format.arg.store/class.pass.cpp | 8 +- .../format.arg.store/make_format_args.pass.cpp | 4 +- .../format.arg.store/make_wformat_args.pass.cpp | 4 +- .../format.parse.ctx/check_arg_id.pass.cpp | 4 +- .../format.parse.ctx/next_arg_id.pass.cpp | 4 +- .../format/format.functions/format.pass.cpp | 3 +- .../format/format.functions/format_tests.h | 12 +- .../format.functions/locale-specific_form.pass.cpp | 8 +- .../format.functions/vformat.locale.pass.cpp | 9 +- .../format/format.functions/vformat.pass.cpp | 7 +- .../format.functions/vformat_to.locale.pass.cpp | 5 +- .../format/format.functions/vformat_to.pass.cpp | 5 +- .../bind/func.bind/func.bind.bind/copy.pass.cpp | 1 + .../memory/specialized.algorithms/counted.h | 23 + .../specialized.construct/construct_at.pass.cpp | 28 +- .../ranges_construct_at.pass.cpp | 139 + .../specialized.destroy/destroy.pass.cpp | 2 +- .../specialized.destroy/destroy_at.pass.cpp | 5 +- .../specialized.destroy/destroy_n.pass.cpp | 2 +- .../specialized.destroy/ranges_destroy.pass.cpp | 222 + .../specialized.destroy/ranges_destroy_at.pass.cpp | 160 + .../specialized.destroy/ranges_destroy_n.pass.cpp | 144 + ...ranges_uninitialized_default_construct.pass.cpp | 4 +- ...nges_uninitialized_default_construct_n.pass.cpp | 1 + .../uninitialized_default_construct_n.pass.cpp | 2 +- .../ranges_uninitialized_value_construct.pass.cpp | 4 +- ...ranges_uninitialized_value_construct_n.pass.cpp | 1 + .../ranges_uninitialized_copy.pass.cpp | 374 ++ .../ranges_uninitialized_copy_n.pass.cpp | 152 + .../ranges_uninitialized_fill_n.pass.cpp | 4 +- .../ranges_uninitialized_fill.pass.cpp | 4 +- .../ranges_uninitialized_move.pass.cpp | 428 ++ .../ranges_uninitialized_move_n.pass.cpp | 204 + .../explicit_const_optional_U.pass.cpp | 4 +- libcxx/test/std/utilities/time/days.pass.cpp | 3 +- libcxx/test/std/utilities/time/hours.pass.cpp | 3 +- .../test/std/utilities/time/microseconds.pass.cpp | 3 +- .../test/std/utilities/time/milliseconds.pass.cpp | 3 +- libcxx/test/std/utilities/time/minutes.pass.cpp | 3 +- libcxx/test/std/utilities/time/months.pass.cpp | 4 +- .../test/std/utilities/time/nanoseconds.pass.cpp | 3 +- libcxx/test/std/utilities/time/seconds.pass.cpp | 3 +- .../time.clock.file/consistency.pass.cpp | 1 + .../time.clock/time.clock.file/rep_signed.pass.cpp | 1 + .../time.clock.hires/consistency.pass.cpp | 1 + .../time.clock.steady/consistency.pass.cpp | 1 + .../time.clock.system/consistency.pass.cpp | 1 + .../time/time.duration/default_ratio.pass.cpp | 1 + .../time.duration/time.duration.alg/abs.pass.cpp | 3 +- .../time.duration.arithmetic/op_+.pass.cpp | 2 + .../time.duration.arithmetic/op_-.pass.cpp | 2 + .../time.duration.cast/duration_cast.pass.cpp | 3 +- .../time.duration.comparisons/op_equal.pass.cpp | 1 + .../time.duration.comparisons/op_less.pass.cpp | 1 + .../time.duration.cons/convert_inexact.pass.cpp | 1 + .../convert_int_to_float.pass.cpp | 1 + .../time.duration.cons/convert_overflow.pass.cpp | 1 + .../time.duration/time.duration.cons/rep.pass.cpp | 1 + .../time.duration.nonmember/op_+.pass.cpp | 1 + .../time.duration.nonmember/op_-.pass.cpp | 1 + .../op_divide_duration.pass.cpp | 1 + .../op_mod_duration.pass.cpp | 1 + .../utilities/time/time.duration/types.pass.cpp | 1 + .../std/utilities/time/time.hms/hhmmss.fail.cpp | 8 +- .../utilities/time/time.hms/time.12/is_am.pass.cpp | 1 + .../utilities/time/time.hms/time.12/is_pm.pass.cpp | 1 + .../time/time.hms/time.12/make12.pass.cpp | 1 + .../time/time.hms/time.12/make24.pass.cpp | 1 + .../time/time.hms/time.hms.members/hours.pass.cpp | 2 + .../time.hms/time.hms.members/is_negative.pass.cpp | 2 + .../time.hms/time.hms.members/minutes.pass.cpp | 2 + .../time.hms/time.hms.members/precision.pass.cpp | 2 + .../time.hms/time.hms.members/seconds.pass.cpp | 2 + .../time.hms/time.hms.members/subseconds.pass.cpp | 2 + .../time.hms/time.hms.members/to_duration.pass.cpp | 2 + .../time/time.hms/time.hms.members/width.pass.cpp | 1 + .../time.point.cast/time_point_cast.pass.cpp | 3 +- .../time.point/time.point.cons/default.pass.cpp | 1 + .../time.point.nonmember/op_-duration.pass.cpp | 5 +- .../time.traits.specializations/duration.pass.cpp | 2 + .../time_point.pass.cpp | 2 + libcxx/test/std/utilities/time/weeks.pass.cpp | 3 +- libcxx/test/std/utilities/time/years.pass.cpp | 3 +- .../utilities/variant/variant.visit/visit.pass.cpp | 2 +- .../variant.visit/visit_return_type.pass.cpp | 2 +- libcxx/test/support/charconv_test_helpers.h | 2 +- libcxx/test/support/nasty_macros.h | 76 - libcxx/test/support/test_constexpr_container.h | 2 +- libcxx/test/support/test_macros.h | 19 +- libcxx/utils/generate_header_tests.py | 7 +- libcxx/utils/libcxx/test/config.py | 5 - libcxxabi/CMakeLists.txt | 28 +- libcxxabi/src/cxa_guard_impl.h | 321 +- libcxxabi/test/guard_test_basic.pass.cpp | 36 +- libcxxabi/test/guard_threaded_test.pass.cpp | 2 +- libunwind/CMakeLists.txt | 23 +- libunwind/include/CMakeLists.txt | 2 +- lld/COFF/Config.h | 2 +- lld/COFF/Driver.cpp | 8 +- lld/COFF/Driver.h | 3 +- lld/ELF/InputSection.cpp | 96 +- lld/ELF/LinkerScript.cpp | 10 +- lld/ELF/Relocations.cpp | 210 +- lld/ELF/Symbols.h | 4 + lld/ELF/SyntheticSections.cpp | 22 +- lld/ELF/SyntheticSections.h | 7 +- lld/ELF/Writer.cpp | 16 +- lld/MachO/CMakeLists.txt | 1 + lld/MachO/CallGraphSort.cpp | 252 + lld/MachO/CallGraphSort.h | 22 + lld/MachO/Config.h | 12 +- lld/MachO/Driver.cpp | 108 +- lld/MachO/Driver.h | 12 +- lld/MachO/InputFiles.cpp | 33 +- lld/MachO/InputFiles.h | 11 + lld/MachO/InputSection.h | 4 + lld/MachO/Options.td | 9 + lld/MachO/SymbolTable.cpp | 12 +- lld/MachO/SymbolTable.h | 6 +- lld/MachO/Symbols.cpp | 2 +- lld/MachO/Symbols.h | 12 +- lld/MachO/SyntheticSections.cpp | 23 +- lld/MachO/UnwindInfoSection.cpp | 2 +- lld/MachO/Writer.cpp | 41 +- lld/test/COFF/libcall-archive.ll | 2 +- lld/test/COFF/lto-lazy-reference.ll | 2 +- lld/test/COFF/lto-reloc-model.ll | 2 +- lld/test/ELF/debug-dead-reloc-relocatable.s | 36 + lld/test/ELF/linkerscript/discard-gnu-hash.s | 27 +- lld/test/ELF/linkerscript/discard-section-err.s | 5 +- lld/test/ELF/linkerscript/plugin.test | 9 + lld/test/ELF/map-file.s | 10 + lld/test/ELF/mips-64.s | 22 +- lld/test/ELF/why-extract.s | 8 + lld/test/ELF/x86-64-tlsdesc-gd-mixed.s | 6 +- lld/test/MachO/cgprofile-icf.s | 46 + lld/test/MachO/cgprofile-obj.s | 42 + lld/test/MachO/cgprofile-print.s | 34 + lld/test/MachO/map-file.s | 5 +- lld/test/MachO/weak-definition-direct-fetch.s | 2 + lldb/CODE_OWNERS.txt | 9 +- lldb/docs/use/python-reference.rst | 33 +- lldb/docs/use/tutorial.rst | 6 +- lldb/examples/darwin/heap_find/heap.py | 53 +- lldb/examples/python/crashlog.py | 39 +- lldb/examples/python/delta.py | 7 +- lldb/examples/python/diagnose_unwind.py | 9 +- lldb/examples/python/gdb_disassemble.py | 7 +- lldb/examples/python/gdbremote.py | 18 +- lldb/examples/python/jump.py | 4 +- lldb/examples/python/memory.py | 5 +- lldb/examples/python/stacks.py | 7 +- lldb/examples/python/types.py | 4 +- lldb/examples/synthetic/gnu_libstdcpp.py | 2 +- lldb/include/lldb/Host/XML.h | 4 +- .../lldb/Host/common/NativeProcessProtocol.h | 5 +- .../lldb/Host/common/NativeThreadProtocol.h | 9 + lldb/include/lldb/Symbol/LineTable.h | 2 +- .../lldb/Utility/ReproducerInstrumentation.h | 19 - .../test/tools/lldb-server/gdbremote_testcase.py | 1 + lldb/source/API/SBBreakpoint.cpp | 4 +- lldb/source/API/SBBreakpointName.cpp | 4 +- lldb/source/API/SBCommandInterpreter.cpp | 6 +- lldb/source/API/SBCommandReturnObject.cpp | 20 +- lldb/source/API/SBCommunication.cpp | 18 +- lldb/source/API/SBData.cpp | 12 +- lldb/source/API/SBDebugger.cpp | 34 +- lldb/source/API/SBExpressionOptions.cpp | 4 +- lldb/source/API/SBFileSpec.cpp | 4 +- lldb/source/API/SBHostOS.cpp | 12 +- lldb/source/API/SBProcess.cpp | 30 +- lldb/source/API/SBStructuredData.cpp | 4 +- lldb/source/API/SBThread.cpp | 4 +- lldb/source/API/SBTypeSummary.cpp | 2 +- lldb/source/Commands/CommandObjectMemory.cpp | 8 + lldb/source/Host/common/XML.cpp | 29 +- lldb/source/Interpreter/Options.cpp | 15 +- .../Plugins/Platform/MacOSX/PlatformDarwin.cpp | 6 +- .../Plugins/Platform/MacOSX/PlatformDarwin.h | 6 +- .../Plugins/Platform/MacOSX/PlatformMacOSX.cpp | 4 +- .../Platform/MacOSX/PlatformRemoteMacOSX.cpp | 2 +- .../Plugins/Platform/MacOSX/PlatformRemoteiOS.cpp | 9 +- .../Plugins/Platform/MacOSX/PlatformRemoteiOS.h | 2 + .../Plugins/Platform/QemuUser/PlatformQemuUser.h | 8 + .../Process/FreeBSD/NativeProcessFreeBSD.cpp | 15 +- .../Process/FreeBSD/NativeThreadFreeBSD.cpp | 24 + .../Plugins/Process/FreeBSD/NativeThreadFreeBSD.h | 3 + .../Plugins/Process/Linux/NativeProcessLinux.cpp | 5 +- .../Plugins/Process/Linux/NativeProcessLinux.h | 8 +- .../Plugins/Process/Linux/NativeThreadLinux.cpp | 15 + .../Plugins/Process/Linux/NativeThreadLinux.h | 5 + .../GDBRemoteCommunicationServerLLGS.cpp | 14 + .../Process/gdb-remote/ProcessGDBRemote.cpp | 16 +- .../Python/ScriptInterpreterPython.cpp | 68 + .../SymbolFile/NativePDB/CompileUnitIndex.cpp | 19 + .../SymbolFile/NativePDB/CompileUnitIndex.h | 13 + .../SymbolFile/NativePDB/SymbolFileNativePDB.cpp | 525 +- .../SymbolFile/NativePDB/SymbolFileNativePDB.h | 33 + lldb/source/Target/TraceInstructionDumper.cpp | 5 +- .../commands/platform/basic/TestPlatformCommand.py | 8 +- .../hello_watchlocation/TestWatchLocation.py | 1 + .../TestWatchpointMultipleThreads.py | 2 + .../TestWatchLocationWithWatchSet.py | 1 + .../sigint/TestIOHandlerPythonREPLSigint.py | 76 + .../calling-conventions/TestCCallingConventions.py | 2 +- .../TestAArch64LinuxMTEMemoryTagAccess.py | 9 +- lldb/test/API/linux/aarch64/mte_tag_access/main.c | 16 +- .../aarch64/tagged_memory_read}/Makefile | 0 .../TestAArch64LinuxTaggedMemoryRead.py | 55 + .../API/linux/aarch64/tagged_memory_read/main.c | 15 + .../posix_spawn/TestLaunchProcessPosixSpawn.py | 4 + .../watchlocation/TestSetWatchlocation.py | 1 + .../API/tools/lldb-server/TestLldbGdbServer.py | 88 + lldb/test/CMakeLists.txt | 4 - .../NativePDB/Inputs/inline_sites.lldbinit | 17 + .../test/Shell/SymbolFile/NativePDB/inline_sites.s | 667 +++ lldb/test/Shell/helper/toolchain.py | 1 - lldb/tools/CMakeLists.txt | 1 - lldb/tools/lldb-instr/CMakeLists.txt | 16 - lldb/tools/lldb-instr/Instrument.cpp | 361 -- llvm/CMakeLists.txt | 2 +- llvm/cmake/modules/GetErrcMessages.cmake | 1 + llvm/cmake/modules/HandleLLVMOptions.cmake | 17 +- llvm/cmake/modules/LLVMInstallSymlink.cmake | 3 +- llvm/docs/CommandGuide/llvm-mca.rst | 24 +- llvm/docs/Contributing.rst | 11 +- llvm/docs/HowToSubmitABug.rst | 7 +- llvm/docs/LangRef.rst | 120 +- llvm/docs/OpaquePointers.rst | 180 +- llvm/docs/ReleaseNotes.rst | 3 + llvm/docs/Security.rst | 4 +- llvm/docs/TableGen/ProgRef.rst | 15 +- llvm/include/llvm/ADT/SmallString.h | 12 +- llvm/include/llvm/ADT/SmallVector.h | 9 +- llvm/include/llvm/ADT/StringExtras.h | 36 +- llvm/include/llvm/Analysis/InlineAdvisor.h | 21 +- llvm/include/llvm/Analysis/InstSimplifyFolder.h | 255 + llvm/include/llvm/Analysis/InstructionSimplify.h | 4 +- llvm/include/llvm/Analysis/LoopNestAnalysis.h | 23 + llvm/include/llvm/Analysis/MLInlineAdvisor.h | 12 +- llvm/include/llvm/Analysis/MemoryBuiltins.h | 36 +- llvm/include/llvm/Analysis/ScalarEvolution.h | 1 + .../llvm/Analysis/ScalarEvolutionExpressions.h | 16 +- llvm/include/llvm/Analysis/TargetFolder.h | 92 +- llvm/include/llvm/Analysis/TargetTransformInfo.h | 18 + .../llvm/Analysis/TargetTransformInfoImpl.h | 24 +- llvm/include/llvm/Analysis/Utils/TFUtils.h | 6 + llvm/include/llvm/BinaryFormat/Dwarf.h | 3 + llvm/include/llvm/BinaryFormat/MachO.h | 1 + llvm/include/llvm/CodeGen/AsmPrinter.h | 4 + llvm/include/llvm/CodeGen/DIE.h | 42 +- llvm/include/llvm/CodeGen/GlobalISel/Utils.h | 5 +- llvm/include/llvm/CodeGen/ISDOpcodes.h | 4 + llvm/include/llvm/CodeGen/TargetLowering.h | 2 + llvm/include/llvm/CodeGen/TargetRegisterInfo.h | 7 + llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h | 4 + .../ExecutionEngine/JITLink/JITLinkMemoryManager.h | 3 +- llvm/include/llvm/ExecutionEngine/JITLink/riscv.h | 7 + .../ExecutionEngine/Orc/Shared/ExecutorAddress.h | 4 + llvm/include/llvm/Frontend/OpenMP/OMP.td | 5 +- llvm/include/llvm/IR/Constant.h | 8 + llvm/include/llvm/IR/ConstantFolder.h | 101 +- llvm/include/llvm/IR/IRBuilder.h | 83 +- llvm/include/llvm/IR/IRBuilderFolder.h | 44 +- llvm/include/llvm/IR/Intrinsics.td | 6 + llvm/include/llvm/IR/IntrinsicsNVVM.td | 30 + llvm/include/llvm/IR/IntrinsicsRISCV.td | 3 + llvm/include/llvm/IR/NoFolder.h | 78 +- llvm/include/llvm/IR/VPIntrinsics.def | 4 + llvm/include/llvm/MCA/CustomBehaviour.h | 4 + llvm/include/llvm/MCA/Instruction.h | 11 +- llvm/include/llvm/ProfileData/InstrProfData.inc | 4 +- llvm/include/llvm/ProfileData/InstrProfReader.h | 25 +- llvm/include/llvm/Support/AArch64TargetParser.def | 82 +- llvm/include/llvm/Support/AArch64TargetParser.h | 2 +- llvm/include/llvm/Support/ARMTargetParser.def | 1 - llvm/include/llvm/Support/ARMTargetParser.h | 1 - llvm/include/llvm/Support/FileSystem.h | 19 + llvm/include/llvm/Support/MD5.h | 2 +- llvm/include/llvm/Support/MachineValueType.h | 6 +- llvm/include/llvm/TextAPI/Platform.h | 27 +- llvm/include/llvm/TextAPI/Target.h | 6 +- .../Transforms/Instrumentation/MemorySanitizer.h | 8 +- llvm/include/llvm/Transforms/Utils/GlobalStatus.h | 4 - .../Transforms/Utils/ScalarEvolutionExpander.h | 5 +- llvm/include/llvm/module.modulemap | 1 + llvm/lib/Analysis/ConstantFolding.cpp | 14 +- llvm/lib/Analysis/DevelopmentModeInlineAdvisor.cpp | 2 - llvm/lib/Analysis/GlobalsModRef.cpp | 8 +- llvm/lib/Analysis/InlineAdvisor.cpp | 15 - llvm/lib/Analysis/InlineCost.cpp | 9 - llvm/lib/Analysis/InstructionSimplify.cpp | 125 +- llvm/lib/Analysis/LazyCallGraph.cpp | 9 +- llvm/lib/Analysis/MLInlineAdvisor.cpp | 19 +- llvm/lib/Analysis/MemoryBuiltins.cpp | 181 +- llvm/lib/Analysis/ModelUnderTrainingRunner.cpp | 2 +- llvm/lib/Analysis/PHITransAddr.cpp | 3 +- llvm/lib/Analysis/ScalarEvolution.cpp | 203 +- llvm/lib/Analysis/TFUtils.cpp | 48 +- llvm/lib/Analysis/TargetTransformInfo.cpp | 10 + llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 6 + llvm/lib/CodeGen/AsmPrinter/DIE.cpp | 128 +- llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp | 4 +- llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp | 3 +- llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp | 6 +- llvm/lib/CodeGen/CommandFlags.cpp | 18 - llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp | 172 +- llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp | 8 +- llvm/lib/CodeGen/GlobalISel/Localizer.cpp | 10 +- llvm/lib/CodeGen/GlobalISel/Utils.cpp | 3 +- .../CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp | 5 + .../CodeGen/LiveDebugValues/LiveDebugValues.cpp | 14 + llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.h | 4 + llvm/lib/CodeGen/MIRParser/MIParser.cpp | 6 +- llvm/lib/CodeGen/MLRegallocEvictAdvisor.cpp | 10 +- llvm/lib/CodeGen/MachineFunction.cpp | 4 +- llvm/lib/CodeGen/RegAllocEvictionAdvisor.cpp | 22 +- llvm/lib/CodeGen/RegAllocEvictionAdvisor.h | 114 +- llvm/lib/CodeGen/RegAllocGreedy.cpp | 84 +- llvm/lib/CodeGen/RegAllocGreedy.h | 87 + llvm/lib/CodeGen/RegisterScavenging.cpp | 22 + llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 4 + llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | 13 +- .../CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 36 +- llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp | 51 +- llvm/lib/CodeGen/ShrinkWrap.cpp | 12 +- llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | 1 + llvm/lib/DebugInfo/DWARF/DWARFDie.cpp | 17 +- llvm/lib/Demangle/DLangDemangle.cpp | 238 +- llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp | 62 +- llvm/lib/ExecutionEngine/JITLink/JITLink.cpp | 11 +- llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp | 9 +- llvm/lib/ExecutionEngine/JITLink/riscv.cpp | 2 + .../ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp | 2 + llvm/lib/FileCheck/FileCheck.cpp | 11 +- llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp | 7 +- llvm/lib/IR/Attributes.cpp | 6 + llvm/lib/IR/AutoUpgrade.cpp | 19 +- llvm/lib/IR/Constants.cpp | 14 +- llvm/lib/IR/Globals.cpp | 9 +- llvm/lib/IR/IntrinsicInst.cpp | 1 + llvm/lib/IR/Verifier.cpp | 23 + llvm/lib/LTO/LTOBackend.cpp | 3 +- llvm/lib/MC/MCAsmStreamer.cpp | 2 + llvm/lib/MC/MCMachOStreamer.cpp | 42 +- llvm/lib/MC/MCParser/DarwinAsmParser.cpp | 10 + llvm/lib/MC/MachObjectWriter.cpp | 17 + llvm/lib/MCA/HardwareUnits/LSUnit.cpp | 13 +- llvm/lib/Object/TapiFile.cpp | 3 +- llvm/lib/Passes/PassBuilder.cpp | 2 + llvm/lib/Passes/PassRegistry.def | 2 +- llvm/lib/ProfileData/InstrProfReader.cpp | 98 +- llvm/lib/Support/AArch64TargetParser.cpp | 4 +- llvm/lib/Support/Host.cpp | 1 + llvm/lib/Support/LowLevelType.cpp | 2 +- llvm/lib/Support/MD5.cpp | 11 +- llvm/lib/Support/MemoryBuffer.cpp | 20 +- llvm/lib/Support/Path.cpp | 20 + llvm/lib/Support/RISCVISAInfo.cpp | 9 +- llvm/lib/Support/Unix/Path.inc | 12 +- llvm/lib/Support/Windows/Path.inc | 36 +- llvm/lib/Support/Windows/Process.inc | 8 +- llvm/lib/Support/Windows/Program.inc | 8 +- llvm/lib/Target/AArch64/AArch64ISelLowering.cpp | 45 +- .../Target/AArch64/AArch64TargetTransformInfo.cpp | 35 +- .../Target/AArch64/AArch64TargetTransformInfo.h | 6 + .../AArch64/GISel/AArch64InstructionSelector.cpp | 4 +- llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h | 14 +- llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp | 14 +- llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp | 21 +- .../Target/AMDGPU/AMDGPUInstructionSelector.cpp | 19 +- llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp | 101 +- llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp | 19 +- .../Target/AMDGPU/AMDGPUTargetTransformInfo.cpp | 11 +- llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp | 6 + llvm/lib/Target/AMDGPU/SIFrameLowering.cpp | 10 +- llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 150 +- llvm/lib/Target/AMDGPU/SIInstrInfo.cpp | 98 +- llvm/lib/Target/AMDGPU/SIInstrInfo.h | 7 +- llvm/lib/Target/AMDGPU/SIInstructions.td | 17 + llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp | 53 - llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp | 47 +- llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h | 3 - llvm/lib/Target/AMDGPU/SOPInstructions.td | 5 +- llvm/lib/Target/ARM/ARM.td | 17 +- llvm/lib/Target/ARM/ARMCallLowering.cpp | 2 +- llvm/lib/Target/ARM/ARMFastISel.cpp | 2 +- llvm/lib/Target/ARM/ARMFrameLowering.cpp | 2 +- llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp | 12 - llvm/lib/Target/ARM/ARMTargetTransformInfo.h | 12 + llvm/lib/Target/CSKY/CMakeLists.txt | 1 + llvm/lib/Target/CSKY/CSKY.h | 3 + llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp | 43 + llvm/lib/Target/CSKY/CSKYAsmPrinter.h | 13 + llvm/lib/Target/CSKY/CSKYConstantIslandPass.cpp | 1371 +++++ llvm/lib/Target/CSKY/CSKYConstantPoolValue.cpp | 2 +- llvm/lib/Target/CSKY/CSKYISelLowering.cpp | 43 - llvm/lib/Target/CSKY/CSKYInstrInfo.cpp | 19 + llvm/lib/Target/CSKY/CSKYInstrInfo.h | 2 + llvm/lib/Target/CSKY/CSKYTargetMachine.cpp | 8 + llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp | 9 +- llvm/lib/Target/Hexagon/HexagonPatternsV65.td | 18 +- llvm/lib/Target/M68k/GISel/M68kRegisterBankInfo.h | 2 +- llvm/lib/Target/M68k/M68k.h | 2 +- llvm/lib/Target/M68k/M68kAsmPrinter.h | 2 +- llvm/lib/Target/M68k/M68kCallingConv.h | 2 +- llvm/lib/Target/M68k/M68kFrameLowering.cpp | 16 +- llvm/lib/Target/M68k/M68kFrameLowering.h | 2 +- llvm/lib/Target/M68k/M68kISelLowering.cpp | 16 +- llvm/lib/Target/M68k/M68kInstrInfo.cpp | 12 +- llvm/lib/Target/M68k/M68kInstrInfo.h | 2 +- llvm/lib/Target/M68k/M68kMCInstLower.h | 2 +- llvm/lib/Target/M68k/M68kRegisterInfo.h | 2 +- llvm/lib/Target/M68k/M68kSubtarget.h | 6 +- llvm/lib/Target/M68k/M68kTargetMachine.h | 2 +- llvm/lib/Target/M68k/M68kTargetObjectFile.h | 2 +- llvm/lib/Target/M68k/MCTargetDesc/M68kBaseInfo.h | 2 +- llvm/lib/Target/M68k/MCTargetDesc/M68kFixupKinds.h | 2 +- .../lib/Target/M68k/MCTargetDesc/M68kInstPrinter.h | 2 +- llvm/lib/Target/M68k/MCTargetDesc/M68kMCAsmInfo.h | 2 +- .../Target/M68k/MCTargetDesc/M68kMCCodeEmitter.h | 2 +- .../Target/M68k/MCTargetDesc/M68kMCTargetDesc.h | 2 +- llvm/lib/Target/Mips/Mips16ISelDAGToDAG.cpp | 2 +- llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp | 2 +- .../Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp | 7 + llvm/lib/Target/NVPTX/NVPTX.h | 4 +- llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp | 25 +- llvm/lib/Target/NVPTX/NVPTXInstrInfo.td | 56 + llvm/lib/Target/NVPTX/NVPTXIntrinsics.td | 32 + llvm/lib/Target/PowerPC/PPCRegisterInfo.h | 4 + llvm/lib/Target/RISCV/RISCV.td | 26 +- llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp | 147 +- llvm/lib/Target/RISCV/RISCVISelLowering.cpp | 289 +- llvm/lib/Target/RISCV/RISCVISelLowering.h | 17 + llvm/lib/Target/RISCV/RISCVInstrFormats.td | 7 + llvm/lib/Target/RISCV/RISCVInstrInfo.td | 23 + llvm/lib/Target/RISCV/RISCVInstrInfoD.td | 39 +- llvm/lib/Target/RISCV/RISCVInstrInfoF.td | 42 +- llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td | 23 - llvm/lib/Target/RISCV/RISCVInstrInfoZb.td | 14 +- llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td | 39 +- llvm/lib/Target/RISCV/RISCVSubtarget.h | 17 + llvm/lib/Target/RISCV/RISCVSystemOperands.td | 352 +- llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp | 5 +- .../Target/WebAssembly/WebAssemblyISelLowering.cpp | 3 +- llvm/lib/Target/X86/CMakeLists.txt | 1 + llvm/lib/Target/X86/MCA/CMakeLists.txt | 14 + llvm/lib/Target/X86/MCA/X86CustomBehaviour.cpp | 64 + llvm/lib/Target/X86/MCA/X86CustomBehaviour.h | 47 + llvm/lib/Target/X86/X86ISelLowering.cpp | 75 +- llvm/lib/Target/X86/X86InstrInfo.cpp | 92 +- llvm/lib/Target/X86/X86InstrInfo.h | 3 +- llvm/lib/Target/X86/X86TargetMachine.cpp | 2 +- llvm/lib/Target/X86/X86TargetTransformInfo.cpp | 54 +- llvm/lib/Target/X86/X86TargetTransformInfo.h | 4 + llvm/lib/TextAPI/Platform.cpp | 116 +- llvm/lib/TextAPI/Target.cpp | 30 +- llvm/lib/TextAPI/TextStub.cpp | 27 +- llvm/lib/TextAPI/TextStubCommon.cpp | 53 +- llvm/lib/Transforms/Coroutines/CoroSplit.cpp | 121 +- llvm/lib/Transforms/IPO/AttributorAttributes.cpp | 131 +- llvm/lib/Transforms/IPO/GlobalOpt.cpp | 28 +- llvm/lib/Transforms/IPO/Inliner.cpp | 41 +- llvm/lib/Transforms/IPO/ModuleInliner.cpp | 9 +- .../Transforms/InstCombine/InstCombineCalls.cpp | 32 +- .../Transforms/InstCombine/InstCombineCompares.cpp | 9 +- .../InstCombine/InstructionCombining.cpp | 106 +- .../Transforms/Instrumentation/MemorySanitizer.cpp | 78 +- .../lib/Transforms/Scalar/DeadStoreElimination.cpp | 193 +- llvm/lib/Transforms/Scalar/JumpThreading.cpp | 11 +- llvm/lib/Transforms/Scalar/LoopInterchange.cpp | 190 +- .../Transforms/Scalar/LowerMatrixIntrinsics.cpp | 3 +- llvm/lib/Transforms/Scalar/NewGVN.cpp | 7 +- llvm/lib/Transforms/Scalar/SROA.cpp | 7 + .../Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp | 7 +- llvm/lib/Transforms/Utils/BuildLibCalls.cpp | 4 +- llvm/lib/Transforms/Utils/GlobalStatus.cpp | 8 +- llvm/lib/Transforms/Utils/Local.cpp | 2 +- .../Transforms/Utils/ScalarEvolutionExpander.cpp | 4 +- llvm/lib/Transforms/Utils/SimplifyCFG.cpp | 184 +- llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 133 +- llvm/lib/Transforms/Vectorize/VPlan.cpp | 70 +- llvm/lib/Transforms/Vectorize/VPlan.h | 6 +- llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp | 13 + .../Analysis/CostModel/AArch64/load-to-trunc.ll | 27 + .../CostModel/AArch64/sve-insert-extract.ll | 57 + .../Analysis/CostModel/AArch64/sve-intrinsics.ll | 4 +- .../Analysis/CostModel/AMDGPU/load-to-trunc.ll | 27 + llvm/test/Analysis/CostModel/ARM/load-to-trunc.ll | 28 + .../Analysis/CostModel/PowerPC/load-to-trunc.ll | 26 + .../test/Analysis/CostModel/RISCV/load-to-trunc.ll | 27 + .../Analysis/CostModel/SystemZ/load-to-trunc.ll | 27 + llvm/test/Analysis/CostModel/X86/load-to-trunc.ll | 28 + .../test/Analysis/GlobalsModRef/indirect-global.ll | 97 +- .../ScalarEvolution/exit-count-select-safe.ll | 424 ++ llvm/test/Assembler/call-arg-is-callee.ll | 2 +- llvm/test/Bitcode/callbr.ll | 6 +- llvm/test/Bitcode/callbr.ll.bc | Bin 1036 -> 1272 bytes llvm/test/Bitcode/upgrade-datalayout3.ll | 2 +- .../AArch64/GlobalISel/gisel-commandline-option.ll | 2 +- llvm/test/CodeGen/AArch64/O0-pipeline.ll | 1 + .../CodeGen/AArch64/aarch64-isel-csinc-type.ll | 71 + llvm/test/CodeGen/AArch64/aarch64-isel-csinc.ll | 71 + llvm/test/CodeGen/AArch64/active_lane_mask.ll | 277 ++ llvm/test/CodeGen/AArch64/arm64-ccmp.ll | 535 ++ llvm/test/CodeGen/AArch64/callbr-asm-label.ll | 6 +- llvm/test/CodeGen/AArch64/callbr-asm-obj-file.ll | 6 +- llvm/test/CodeGen/AArch64/fast-isel-cmp-vec.ll | 69 +- .../test/CodeGen/AArch64/inlineasm-X-constraint.ll | 10 +- .../CodeGen/AArch64/named-vector-shuffles-neon.ll | 18 - .../CodeGen/AArch64/named-vector-shuffles-sve.ll | 702 +-- .../CodeGen/AArch64/speculation-hardening-sls.ll | 2 +- .../CodeGen/AArch64/sve-fixed-length-int-mulh.ll | 670 +-- .../combine-fma-add-mul-post-legalize.mir | 4206 ++++++++-------- .../AMDGPU/GlobalISel/combine-fma-add-mul.ll | 164 + .../GlobalISel/combine-fma-unmerge-values.mir | 413 ++ .../AMDGPU/GlobalISel/crash-stack-address-O0.ll | 25 + .../AMDGPU/GlobalISel/dropped_debug_info_assert.ll | 92 + .../GlobalISel/extractelement-stack-lower.ll | 188 +- .../AMDGPU/GlobalISel/image-waterfall-loop-O0.ll | 165 + .../inst-select-amdgpu-atomic-cmpxchg-flat.mir | 401 +- .../inst-select-amdgpu-atomic-cmpxchg-global.mir | 1102 ++-- .../inst-select-atomic-cmpxchg-local.mir | 152 +- .../inst-select-atomic-cmpxchg-region.mir | 152 +- .../GlobalISel/inst-select-atomicrmw-add-flat.mir | 776 +-- .../inst-select-atomicrmw-add-global.mir | 1048 ++-- .../inst-select-atomicrmw-fadd-local.mir | 91 +- .../inst-select-atomicrmw-fadd-region.mir | 91 +- .../inst-select-atomicrmw-xchg-local.mir | 66 +- .../inst-select-atomicrmw-xchg-region.mir | 66 +- .../GlobalISel/inst-select-load-atomic-flat.mir | 310 +- .../GlobalISel/inst-select-load-atomic-local.mir | 229 +- .../GlobalISel/inst-select-load-constant.mir | 914 ++-- .../AMDGPU/GlobalISel/inst-select-load-flat.mir | 1744 ++++--- .../GlobalISel/inst-select-load-global-saddr.mir | 648 +-- .../AMDGPU/GlobalISel/inst-select-load-global.mir | 2528 +++++----- .../GlobalISel/inst-select-load-global.s96.mir | 115 +- .../GlobalISel/inst-select-load-local-128.mir | 136 +- .../AMDGPU/GlobalISel/inst-select-load-local.mir | 581 ++- .../AMDGPU/GlobalISel/inst-select-load-private.mir | 415 +- .../GlobalISel/inst-select-sextload-local.mir | 67 +- .../GlobalISel/inst-select-store-atomic-flat.mir | 140 +- .../GlobalISel/inst-select-store-atomic-local.mir | 250 +- .../AMDGPU/GlobalISel/inst-select-store-flat.mir | 648 +-- .../AMDGPU/GlobalISel/inst-select-store-global.mir | 916 ++-- .../GlobalISel/inst-select-store-global.s96.mir | 115 +- .../AMDGPU/GlobalISel/inst-select-store-local.mir | 471 +- .../GlobalISel/inst-select-store-private.mir | 221 +- .../GlobalISel/inst-select-zextload-local.mir | 67 +- .../GlobalISel/irtranslator-call-implicit-args.ll | 792 ++- .../AMDGPU/GlobalISel/legalize-addrspacecast.mir | 121 +- .../CodeGen/AMDGPU/GlobalISel/legalize-fceil.mir | 407 +- .../legalize-llvm.amdgcn.image.load.2d.d16.ll | 192 +- .../legalize-llvm.amdgcn.image.store.2d.d16.ll | 32 +- .../AMDGPU/GlobalISel/legalize-load-flat.mir | 24 + .../AMDGPU/GlobalISel/legalize-load-global.mir | 37 + .../GlobalISel/llvm.amdgcn.image.store.2d.ll | 49 + .../llvm.amdgcn.raw.buffer.atomic.add.ll | 332 +- .../llvm.amdgcn.raw.buffer.atomic.cmpswap.ll | 277 +- .../llvm.amdgcn.raw.buffer.atomic.fadd.ll | 684 +-- .../llvm.amdgcn.raw.buffer.load.format.f16.ll | 466 +- .../llvm.amdgcn.raw.buffer.load.format.ll | 241 +- .../GlobalISel/llvm.amdgcn.raw.buffer.load.ll | 1137 +++-- .../llvm.amdgcn.raw.buffer.store.format.f16.ll | 832 ++-- .../llvm.amdgcn.raw.buffer.store.format.f32.ll | 442 +- .../GlobalISel/llvm.amdgcn.raw.buffer.store.ll | 1101 ++-- .../GlobalISel/llvm.amdgcn.raw.tbuffer.load.f16.ll | 556 ++- .../GlobalISel/llvm.amdgcn.raw.tbuffer.load.ll | 296 +- .../llvm.amdgcn.raw.tbuffer.store.f16.ll | 820 +-- .../GlobalISel/llvm.amdgcn.raw.tbuffer.store.i8.ll | 518 +- .../GlobalISel/llvm.amdgcn.raw.tbuffer.store.ll | 890 ++-- .../AMDGPU/GlobalISel/llvm.amdgcn.s.buffer.load.ll | 144 +- .../llvm.amdgcn.struct.buffer.atomic.add.ll | 339 +- .../llvm.amdgcn.struct.buffer.atomic.cmpswap.ll | 301 +- .../llvm.amdgcn.struct.buffer.atomic.fadd.ll | 748 +-- .../llvm.amdgcn.struct.buffer.load.format.f16.ll | 564 ++- .../llvm.amdgcn.struct.buffer.load.format.ll | 296 +- .../GlobalISel/llvm.amdgcn.struct.buffer.load.ll | 535 +- .../llvm.amdgcn.struct.buffer.store.format.f16.ll | 422 +- .../llvm.amdgcn.struct.buffer.store.format.f32.ll | 243 +- .../GlobalISel/llvm.amdgcn.struct.buffer.store.ll | 363 +- .../llvm.amdgcn.struct.tbuffer.load.f16.ll | 568 ++- .../GlobalISel/llvm.amdgcn.struct.tbuffer.load.ll | 296 +- .../AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll | 82 +- .../GlobalISel/localizer-wrong-insert-point.mir | 32 + llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll | 36 + .../regbankselect-amdgcn-s-buffer-load.mir | 148 +- .../regbankselect-amdgcn.image.load.1d.ll | 564 ++- .../regbankselect-amdgcn.image.sample.1d.ll | 860 ++-- .../regbankselect-amdgcn.raw.buffer.load.ll | 284 +- .../regbankselect-amdgcn.s.buffer.load.ll | 96 +- .../regbankselect-amdgcn.struct.buffer.load.ll | 276 +- .../regbankselect-amdgcn.struct.buffer.store.ll | 278 +- .../GlobalISel/regbankselect-waterfall-agpr.mir | 138 +- .../CodeGen/AMDGPU/addrspacecast-known-non-null.ll | 75 + llvm/test/CodeGen/AMDGPU/addrspacecast.ll | 28 +- .../CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll | 4384 ++-------------- llvm/test/CodeGen/AMDGPU/amdgpu-mul24-knownbits.ll | 17 + llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll | 133 + llvm/test/CodeGen/AMDGPU/dagcombine-select.ll | 8 +- llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll | 69 +- llvm/test/CodeGen/AMDGPU/extract_vector_elt-f64.ll | 64 +- llvm/test/CodeGen/AMDGPU/extract_vector_elt-i64.ll | 78 +- llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll | 16 +- .../CodeGen/AMDGPU/indirect-call-known-callees.ll | 62 +- llvm/test/CodeGen/AMDGPU/indirect-call.ll | 2 +- llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll | 20 +- llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll | 135 +- llvm/test/CodeGen/AMDGPU/ipra.ll | 26 + .../test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id.ll | 82 +- llvm/test/CodeGen/AMDGPU/llvm.mulo.ll | 126 +- llvm/test/CodeGen/AMDGPU/load-select-ptr.ll | 6 +- .../CodeGen/AMDGPU/loop-on-function-argument.ll | 46 + .../CodeGen/AMDGPU/reserve-vgpr-for-sgpr-spill.ll | 237 - llvm/test/CodeGen/AMDGPU/select64.ll | 263 +- llvm/test/CodeGen/AMDGPU/selectcc.ll | 9 +- .../CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll | 341 ++ llvm/test/CodeGen/AMDGPU/sint_to_fp.f64.ll | 8 +- llvm/test/CodeGen/AMDGPU/uint_to_fp.f64.ll | 10 +- .../CodeGen/ARM/GlobalISel/arm-call-lowering.ll | 16 +- .../CodeGen/ARM/GlobalISel/arm-param-lowering.ll | 26 +- .../GlobalISel/irtranslator-varargs-lowering.ll | 8 +- llvm/test/CodeGen/ARM/fast-call-frame-restore.ll | 19 + llvm/test/CodeGen/ARM/readcyclecounter.ll | 1 + llvm/test/CodeGen/ARM/speculation-hardening-sls.ll | 2 +- llvm/test/CodeGen/CSKY/br.ll | 200 +- llvm/test/CodeGen/CSKY/indirectbr.ll | 31 +- llvm/test/CodeGen/CSKY/switch.ll | 77 +- llvm/test/CodeGen/Hexagon/addrmode-opt-assert.mir | 24 + .../CodeGen/Hexagon/store-widen-aliased-load.ll | 2 +- llvm/test/CodeGen/Mips/msa/3r-s.ll | 8 +- .../CodeGen/Mips/msa/basic_operations_float.ll | 12 +- llvm/test/CodeGen/NVPTX/convert-sm80.ll | 136 + llvm/test/CodeGen/NVPTX/fminimum-fmaximum.ll | 92 + llvm/test/CodeGen/NVPTX/math-intrins.ll | 42 +- llvm/test/CodeGen/NVPTX/sm-version-20.ll | 6 - llvm/test/CodeGen/NVPTX/sm-version-21.ll | 6 - llvm/test/CodeGen/NVPTX/sm-version-30.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-32.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-35.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-37.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-50.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-52.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-53.ll | 7 - llvm/test/CodeGen/NVPTX/sm-version-60.ll | 5 - llvm/test/CodeGen/NVPTX/sm-version-61.ll | 5 - llvm/test/CodeGen/NVPTX/sm-version-62.ll | 5 - llvm/test/CodeGen/NVPTX/sm-version-70.ll | 5 - llvm/test/CodeGen/NVPTX/sm-version.ll | 65 + llvm/test/CodeGen/PowerPC/lbz-from-ld-shift.ll | 30 +- llvm/test/CodeGen/PowerPC/mma-acc-memops.ll | 64 +- .../CodeGen/PowerPC/ppc64-inlineasm-clobber.ll | 38 +- llvm/test/CodeGen/RISCV/addimm-mulimm.ll | 4 +- llvm/test/CodeGen/RISCV/alu16.ll | 20 +- llvm/test/CodeGen/RISCV/and.ll | 72 + llvm/test/CodeGen/RISCV/atomic-rmw.ll | 100 +- llvm/test/CodeGen/RISCV/atomic-signext.ll | 20 +- llvm/test/CodeGen/RISCV/attributes.ll | 16 +- llvm/test/CodeGen/RISCV/bswap-ctlz-cttz-ctpop.ll | 10 +- llvm/test/CodeGen/RISCV/calling-conv-half.ll | 20 +- .../calling-conv-ilp32-ilp32f-ilp32d-common.ll | 18 +- .../RISCV/calling-conv-lp64-lp64f-lp64d-common.ll | 9 +- llvm/test/CodeGen/RISCV/copysign-casts.ll | 160 +- llvm/test/CodeGen/RISCV/div-by-constant.ll | 4 +- llvm/test/CodeGen/RISCV/div-pow2.ll | 809 +++ llvm/test/CodeGen/RISCV/div.ll | 30 +- llvm/test/CodeGen/RISCV/double-arith.ll | 36 +- .../CodeGen/RISCV/double-bitmanip-dagcombines.ll | 32 +- llvm/test/CodeGen/RISCV/double-fcmp-strict.ll | 1281 +++++ llvm/test/CodeGen/RISCV/double-intrinsics.ll | 26 +- llvm/test/CodeGen/RISCV/double-round-conv.ll | 681 +++ llvm/test/CodeGen/RISCV/float-arith.ll | 30 +- .../RISCV/float-bit-preserving-dagcombines.ll | 10 +- .../CodeGen/RISCV/float-bitmanip-dagcombines.ll | 28 +- llvm/test/CodeGen/RISCV/float-fcmp-strict.ll | 1249 +++++ llvm/test/CodeGen/RISCV/float-intrinsics.ll | 18 +- llvm/test/CodeGen/RISCV/float-round-conv.ll | 681 +++ llvm/test/CodeGen/RISCV/half-arith.ll | 40 +- .../CodeGen/RISCV/half-bitmanip-dagcombines.ll | 30 +- llvm/test/CodeGen/RISCV/half-convert-strict.ll | 20 +- llvm/test/CodeGen/RISCV/half-convert.ll | 240 +- llvm/test/CodeGen/RISCV/half-fcmp-strict.ll | 573 +++ llvm/test/CodeGen/RISCV/half-intrinsics.ll | 180 +- llvm/test/CodeGen/RISCV/half-round-conv.ll | 701 +++ llvm/test/CodeGen/RISCV/imm.ll | 6 +- .../CodeGen/RISCV/inline-asm-f-constraint-f.ll | 4 + .../CodeGen/RISCV/inline-asm-zfh-constraint-f.ll | 113 + llvm/test/CodeGen/RISCV/jumptable.ll | 4 +- llvm/test/CodeGen/RISCV/rem.ll | 20 +- llvm/test/CodeGen/RISCV/rv32zba.ll | 2 +- llvm/test/CodeGen/RISCV/rv32zbb-intrinsic.ll | 2 +- llvm/test/CodeGen/RISCV/rv32zbb-zbp.ll | 10 +- llvm/test/CodeGen/RISCV/rv32zbb.ll | 28 +- llvm/test/CodeGen/RISCV/rv32zbc-intrinsic.ll | 2 +- llvm/test/CodeGen/RISCV/rv32zbf-intrinsic.ll | 14 + llvm/test/CodeGen/RISCV/rv32zbp.ll | 28 +- llvm/test/CodeGen/RISCV/rv32zbs.ll | 19 +- llvm/test/CodeGen/RISCV/rv32zbt.ll | 8 +- .../test/CodeGen/RISCV/rv64i-exhaustive-w-insts.ll | 2 +- llvm/test/CodeGen/RISCV/rv64zba.ll | 2 +- llvm/test/CodeGen/RISCV/rv64zbb-intrinsic.ll | 2 +- llvm/test/CodeGen/RISCV/rv64zbb-zbp.ll | 2 +- llvm/test/CodeGen/RISCV/rv64zbb.ll | 12 +- llvm/test/CodeGen/RISCV/rv64zbc-intrinsic.ll | 2 +- llvm/test/CodeGen/RISCV/rv64zbf-intrinsic.ll | 25 + llvm/test/CodeGen/RISCV/rv64zbp.ll | 20 +- llvm/test/CodeGen/RISCV/rv64zbs.ll | 17 +- llvm/test/CodeGen/RISCV/rv64zfh-half-convert.ll | 5 +- .../CodeGen/RISCV/rvv/fixed-vectors-fp-shuffles.ll | 20 + .../RISCV/rvv/fixed-vectors-int-shuffles.ll | 20 + .../RISCV/rvv/fixed-vectors-reduction-fp-vp.ll | 24 +- .../RISCV/rvv/fixed-vectors-reduction-fp.ll | 94 +- .../RISCV/rvv/fixed-vectors-reduction-int-vp.ll | 184 +- .../RISCV/rvv/fixed-vectors-reduction-int.ll | 1498 ++++-- .../RISCV/rvv/fixed-vectors-store-merge-crash.ll | 2 +- llvm/test/CodeGen/RISCV/rvv/vmsgeu-rv32.ll | 8 +- llvm/test/CodeGen/RISCV/rvv/vmsgeu-rv64.ll | 8 +- llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv32.ll | 56 + .../CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll | 20 +- llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll | 36 +- .../test/CodeGen/RISCV/rvv/vreductions-int-rv32.ll | 132 +- .../test/CodeGen/RISCV/rvv/vreductions-int-rv64.ll | 144 +- llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll | 276 +- llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll | 14 + llvm/test/CodeGen/RISCV/sadd_sat.ll | 8 +- llvm/test/CodeGen/RISCV/sadd_sat_plus.ll | 8 +- llvm/test/CodeGen/RISCV/selectcc-to-shiftand.ll | 4 +- llvm/test/CodeGen/RISCV/sext-zext-trunc.ll | 20 +- llvm/test/CodeGen/RISCV/sextw-removal.ll | 4 +- .../test/CodeGen/RISCV/srem-seteq-illegal-types.ll | 180 +- llvm/test/CodeGen/RISCV/ssub_sat.ll | 8 +- llvm/test/CodeGen/RISCV/ssub_sat_plus.ll | 8 +- llvm/test/CodeGen/RISCV/uadd_sat.ll | 4 +- llvm/test/CodeGen/RISCV/uadd_sat_plus.ll | 4 +- .../unfold-masked-merge-scalar-variablemask.ll | 4 +- .../test/CodeGen/RISCV/urem-seteq-illegal-types.ll | 64 +- llvm/test/CodeGen/RISCV/usub_sat.ll | 4 +- llvm/test/CodeGen/RISCV/usub_sat_plus.ll | 4 +- llvm/test/CodeGen/RISCV/xaluo.ll | 4 +- llvm/test/CodeGen/SystemZ/asm-20.ll | 2 +- llvm/test/CodeGen/Thumb2/pacbti-m-outliner-3.ll | 13 +- llvm/test/CodeGen/Thumb2/pacbti-m-outliner-4.ll | 32 +- .../test/CodeGen/WebAssembly/externref-tableset.ll | 15 + llvm/test/CodeGen/X86/MergeConsecutiveStores.ll | 28 + llvm/test/CodeGen/X86/asm-block-labels2.ll | 22 + llvm/test/CodeGen/X86/callbr-asm-bb-exports.ll | 5 +- llvm/test/CodeGen/X86/callbr-asm-blockplacement.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm-branch-folding.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm-destinations.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm-errors.ll | 2 +- .../CodeGen/X86/callbr-asm-instr-scheduling.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm-kill.mir | 2 +- llvm/test/CodeGen/X86/callbr-asm-label-addr.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm-obj-file.ll | 2 +- .../CodeGen/X86/callbr-asm-outputs-pred-succ.ll | 4 +- llvm/test/CodeGen/X86/callbr-asm-outputs.ll | 42 +- llvm/test/CodeGen/X86/callbr-asm-phi-placement.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm-sink.ll | 2 +- llvm/test/CodeGen/X86/callbr-asm.ll | 14 +- llvm/test/CodeGen/X86/callbr-codegenprepare.ll | 2 +- llvm/test/CodeGen/X86/combine-avx2-intrinsics.ll | 94 + llvm/test/CodeGen/X86/combine-rotates.ll | 91 + llvm/test/CodeGen/X86/combine-udiv.ll | 9 +- llvm/test/CodeGen/X86/linux-preemption.ll | 26 + llvm/test/CodeGen/X86/long-double-abi-align.ll | 104 + llvm/test/CodeGen/X86/oddshuffles.ll | 110 +- llvm/test/CodeGen/X86/optimize-compare.mir | 358 ++ llvm/test/CodeGen/X86/peep-test-5.ll | 56 + llvm/test/CodeGen/X86/scalar-fp-to-i32.ll | 219 +- llvm/test/CodeGen/X86/scalar-fp-to-i64.ll | 32 +- llvm/test/CodeGen/X86/shrinkwrap-callbr.ll | 2 +- llvm/test/CodeGen/X86/tail-dup-asm-goto.ll | 2 +- .../CodeGen/X86/use-cr-result-of-dom-icmp-st.ll | 12 +- llvm/test/CodeGen/X86/vector-fshr-rot-128.ll | 2 +- llvm/test/CodeGen/X86/vector-fshr-rot-256.ll | 2 +- .../X86/vector-interleaved-load-i32-stride-3.ll | 442 +- .../X86/vector-interleaved-load-i32-stride-4.ll | 877 ++-- .../X86/vector-interleaved-load-i32-stride-6.ll | 458 +- .../X86/vector-interleaved-store-i32-stride-6.ll | 58 +- llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll | 8 +- llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll | 106 +- .../CodeGen/X86/vector-shuffle-combining-avx.ll | 32 +- llvm/test/CodeGen/X86/vector-shuffle-sse4a.ll | 2 +- llvm/test/CodeGen/X86/xop-shifts.ll | 73 + .../JITLink/AArch64/MachO_arm64_ehframe.s | 102 + .../MachO_arm64_stub_to_got_distance_stress_test.s | 17 + .../ExecutionEngine/JITLink/RISCV/ELF_abs_reloc.s | 8 +- .../ExecutionEngine/JITLink/RISCV/ELF_branch.s | 37 + .../JITLink/RISCV/ELF_pc_indirect.s | 4 +- .../X86/MachO_archive_load_hidden_expect_success.s | 2 + .../JITLink/X86/MachO_archive_support.s | 1 + .../RuntimeDyld/AArch64/ELF_ARM64_NONE.yaml | 24 + llvm/test/FileCheck/regex-brackets.txt | 3 +- .../MemorySanitizer/PowerPC/vararg-ppc64.ll | 2 +- .../MemorySanitizer/PowerPC/vararg-ppc64le.ll | 2 +- llvm/test/Instrumentation/MemorySanitizer/byval.ll | 94 + .../MemorySanitizer/msan_asm_conservative.ll | 2 +- .../Instrumentation/MemorySanitizer/msan_eager.ll | 2 + llvm/test/MC/M68k/Bits/Classes/MxBTST_MI.s | 48 +- llvm/test/MC/M68k/Bits/Classes/MxBTST_MR.s | 48 +- llvm/test/MC/MachO/cgprofile.ll | 51 + llvm/test/MC/MachO/cgprofile.s | 45 + llvm/test/MC/RISCV/attribute-arch-invalid.s | 12 - llvm/test/MC/RISCV/hypervisor-csr-names.s | 375 ++ llvm/test/MC/RISCV/machine-csr-names.s | 1069 +++- llvm/test/MC/RISCV/rv32-hypervisor-csr-names.s | 41 + llvm/test/MC/RISCV/rv32-machine-csr-names.s | 135 +- llvm/test/MC/RISCV/rv32-only-csr-names.s | 90 + llvm/test/MC/RISCV/rv32zba-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zba-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbb-aliases-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbb-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbb-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbbp-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbbp-only-valid.s | 6 +- llvm/test/MC/RISCV/rv32zbbp-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbc-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbc-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbe-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbf-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbp-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbr-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbs-aliases-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbs-invalid.s | 2 +- llvm/test/MC/RISCV/rv32zbs-valid.s | 12 +- llvm/test/MC/RISCV/rv32zbt-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zba-aliases-valid.s | 12 +- llvm/test/MC/RISCV/rv64zba-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zba-valid.s | 6 +- llvm/test/MC/RISCV/rv64zbb-aliases-valid.s | 12 +- llvm/test/MC/RISCV/rv64zbb-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbb-valid.s | 6 +- llvm/test/MC/RISCV/rv64zbbp-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbbp-valid.s | 6 +- llvm/test/MC/RISCV/rv64zbe-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbf-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbm-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbp-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbr-invalid.s | 2 +- llvm/test/MC/RISCV/rv64zbs-aliases-valid.s | 12 +- llvm/test/MC/RISCV/rv64zbt-invalid.s | 2 +- llvm/test/MC/RISCV/supervisor-csr-names.s | 36 + llvm/test/MC/RISCV/user-csr-names-invalid.s | 38 - llvm/test/Object/archive-format.test | 3 + llvm/test/Other/new-pm-print-pipeline.ll | 4 +- llvm/test/TableGen/foreach-leak.td | 2 +- llvm/test/ThinLTO/X86/nossp.ll | 23 +- llvm/test/Transforms/Attributor/heap_to_stack.ll | 3 +- llvm/test/Transforms/Attributor/lowerheap.ll | 9 +- .../Attributor/value-simplify-pointer-info.ll | 24 +- .../CallSiteSplitting/callsite-split-callbr.ll | 8 +- .../ConstantHoisting/RISCV/immediates.ll | 4 +- llvm/test/Transforms/Coroutines/coro-debug.ll | 2 +- .../Transforms/Coroutines/coro-split-musttail4.ll | 4 +- .../Transforms/Coroutines/coro-split-musttail5.ll | 4 +- .../Transforms/Coroutines/coro-split-musttail6.ll | 7 +- .../Transforms/Coroutines/coro-split-musttail7.ll | 7 +- .../DeadStoreElimination/libcalls-darwin.ll | 12 +- .../DeadStoreElimination/memset-unknown-sizes.ll | 20 +- .../test/Transforms/DeadStoreElimination/simple.ll | 47 +- .../test/Transforms/GVN/callbr-loadpre-critedge.ll | 4 +- .../Transforms/GVN/callbr-scalarpre-critedge.ll | 4 +- .../Transforms/GVN/critical-edge-split-failure.ll | 4 +- .../Transforms/GlobalOpt/evaluate-load-uniform.ll | 20 + .../Transforms/GlobalOpt/globalsra-generic-type.ll | 33 + llvm/test/Transforms/GlobalOpt/malloc-promote-5.ll | 56 + .../GlobalOpt/shrink-global-to-bool-opaque-ptrs.ll | 64 + .../GlobalOpt/stored-once-different-type.ll | 40 + .../GlobalOpt/stored-once-through-gep.ll | 30 + .../Transforms/GlobalOpt/stored-once-value-type.ll | 17 +- llvm/test/Transforms/IROutliner/illegal-callbr.ll | 4 +- .../test/Transforms/InferFunctionAttrs/annotate.ll | 7 +- llvm/test/Transforms/Inline/blockaddress.ll | 4 +- llvm/test/Transforms/Inline/callbr.ll | 4 +- .../Inline/delete-function-with-metadata-use.ll | 39 + .../Transforms/Inline/delete-unused-function.ll | 63 + llvm/test/Transforms/Inline/inline_nossp.ll | 50 - llvm/test/Transforms/Inline/inline_ssp.ll | 100 +- .../Transforms/InstCombine/AArch64/demandelts.ll | 157 + .../Transforms/InstCombine/binop-phi-operands.ll | 796 +++ llvm/test/Transforms/InstCombine/icmp-shr-lt-gt.ll | 235 + llvm/test/Transforms/InstCombine/icmp-shr.ll | 90 +- llvm/test/Transforms/InstCombine/icmp.ll | 41 - .../Transforms/InstCombine/masked_intrinsics.ll | 107 + llvm/test/Transforms/InstCombine/zext-or-icmp.ll | 27 + .../Transforms/InstSimplify/ConstProp/loads.ll | 11 + llvm/test/Transforms/InstSimplify/call.ll | 16 + llvm/test/Transforms/InstSimplify/div.ll | 7 +- llvm/test/Transforms/InstSimplify/gep.ll | 20 +- llvm/test/Transforms/InstSimplify/rem.ll | 5 +- .../Transforms/JumpThreading/callbr-edge-split.ll | 4 +- .../JumpThreading/indirectbr-cast-int-op.ll | 71 + .../Transforms/JumpThreading/pr46857-callbr.ll | 4 +- llvm/test/Transforms/LICM/callbr-crash.ll | 2 +- llvm/test/Transforms/LICM/scalar-promote-unwind.ll | 260 +- .../Transforms/LoopDeletion/two-predecessors.ll | 4 +- .../LoopDistribute/scev-inserted-runtime-check.ll | 6 +- llvm/test/Transforms/LoopIdiom/RISCV/popcnt.ll | 4 +- .../interchangeable-innerloop-multiple-indvars.ll | 297 ++ .../interchangeable-outerloop-multiple-indvars.ll | 298 ++ llvm/test/Transforms/LoopRotate/callbr.ll | 4 +- .../LoopStrengthReduce/address-space-loop.ll | 56 - .../callbr-critical-edge-splitting.ll | 6 +- .../callbr-critical-edge-splitting2.ll | 6 +- .../LoopStrengthReduce/uglygep-address-space.ll | 10 +- llvm/test/Transforms/LoopStrengthReduce/uglygep.ll | 12 +- llvm/test/Transforms/LoopUnroll/callbr.ll | 2 +- llvm/test/Transforms/LoopUnswitch/callbr.ll | 16 +- .../LoopVectorize/AArch64/sve-tail-folding.ll | 2 +- .../LoopVectorize/AArch64/sve-widen-gep.ll | 5 +- .../AArch64/tail-fold-uniform-memops.ll | 2 +- .../LoopVectorize/AArch64/vector-reverse-mask4.ll | 2 +- .../LoopVectorize/ARM/mve-reduction-predselect.ll | 12 +- .../LoopVectorize/ARM/mve-reduction-types.ll | 12 +- .../X86/invariant-store-vectorization.ll | 84 +- .../LoopVectorize/X86/masked_load_store.ll | 194 +- .../LoopVectorize/X86/tail_loop_folding.ll | 2 +- .../first-order-recurrence-complex.ll | 6 +- ...first-order-recurrence-sink-replicate-region.ll | 25 +- .../LoopVectorize/first-order-recurrence.ll | 16 +- .../Transforms/LoopVectorize/float-induction.ll | 4 +- .../test/Transforms/LoopVectorize/icmp-uniforms.ll | 5 +- .../Transforms/LoopVectorize/induction-ptrcasts.ll | 71 + llvm/test/Transforms/LoopVectorize/induction.ll | 12 +- .../outer-loop-vec-phi-predecessor-order.ll | 1 - .../LoopVectorize/pr30654-phiscev-sext-trunc.ll | 10 +- llvm/test/Transforms/LoopVectorize/pr34681.ll | 5 +- .../LoopVectorize/pr51614-fold-tail-by-masking.ll | 2 +- .../runtime-check-small-clamped-bounds.ll | 9 +- .../Transforms/LoopVectorize/select-reduction.ll | 2 +- .../Transforms/LoopVectorize/vplan-dot-printing.ll | 3 +- .../Transforms/LoopVectorize/vplan-printing.ll | 35 +- .../vplan-sink-scalars-and-merge-vf1.ll | 5 +- .../LoopVectorize/vplan-sink-scalars-and-merge.ll | 62 +- .../vplan-vectorize-inner-loop-reduction.ll | 1 - .../LoopVectorize/vplan-widen-call-instruction.ll | 1 - .../LoopVersioning/bound-check-partially-known.ll | 48 + llvm/test/Transforms/LoopVersioning/lcssa.ll | 33 +- .../LoopVersioning/wrapping-pointer-versioning.ll | 6 +- llvm/test/Transforms/PGOProfile/callbr.ll | 2 +- llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll | 10 +- .../SLPVectorizer/X86/pr47629-inseltpoison.ll | 130 +- llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll | 130 +- llvm/test/Transforms/SROA/basictest-opaque-ptrs.ll | 6 +- llvm/test/Transforms/SROA/basictest.ll | 6 +- llvm/test/Transforms/SROA/phi-catchswitch.ll | 45 + .../SimpleLoopUnswitch/not-safe-to-clone.ll | 2 +- .../X86/sink-common-code-into-unreachable.ll | 124 + .../Transforms/SimplifyCFG/callbr-destinations.ll | 4 +- llvm/test/Verifier/callbr.ll | 10 +- llvm/test/Verifier/invalid-cleanuppad-chain.ll | 18 + llvm/test/Verifier/invalid-splice.ll | 37 + llvm/test/tools/llvm-ar/plugin.test | 9 + llvm/test/tools/llvm-ar/response.test | 2 +- llvm/test/tools/llvm-ar/version.test | 5 +- llvm/test/tools/llvm-diff/callbr.ll | 8 +- llvm/test/tools/llvm-diff/phinode.ll | 2 +- .../X86/prettyprint_types_handcrafted.s | 8 +- llvm/test/tools/llvm-dwp/X86/merge.test | 8 +- llvm/test/tools/llvm-dwp/X86/simple.test | 16 +- .../AArch64/Cortex/A55-load-store-noalias.s | 44 +- llvm/test/tools/llvm-mca/AMDGPU/gfx9-retireooo.s | 82 +- .../llvm-mca/X86/Barcelona/store-throughput.s | 8 +- .../llvm-mca/X86/BdVer2/load-store-throughput.s | 41 +- llvm/test/tools/llvm-mca/X86/BdVer2/pr37790.s | 20 +- .../tools/llvm-mca/X86/BdVer2/store-throughput.s | 43 +- llvm/test/tools/llvm-mca/X86/BtVer2/pr37790.s | 16 +- .../tools/llvm-mca/X86/BtVer2/stmxcsr-ldmxcsr.s | 60 +- .../llvm-mca/X86/Haswell/reserved-resources.s | 4 +- .../tools/llvm-mca/X86/Haswell/stmxcsr-ldmxcsr.s | 74 +- llvm/test/tools/llvm-mca/X86/barrier_output.s | 25 + llvm/test/tools/llvm-nm/XCOFF/basic.test | 118 + llvm/test/tools/llvm-nm/XCOFF/basic_64.test | 20 + llvm/test/tools/llvm-nm/XCOFF/demangle.test | 40 + .../tools/llvm-nm/XCOFF/invalid-section-index.test | 20 + llvm/test/tools/llvm-nm/XCOFF/size.test | 51 + llvm/test/tools/llvm-objdump/ELF/RISCV/branches.s | 80 + .../malformed-ptr-to-counter-array.test | 2 +- .../llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o | Bin 71 -> 0 bytes llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol.o | Bin 1720 -> 0 bytes .../tools/llvm-readobj/XCOFF/Inputs/symbol64.o | Bin 1766 -> 0 bytes .../tools/llvm-readobj/XCOFF/file-aux-wrong64.test | 19 - .../tools/llvm-readobj/XCOFF/symbols-invalid.test | 33 + llvm/test/tools/llvm-readobj/XCOFF/symbols.test | 634 +-- llvm/test/tools/llvm-readobj/XCOFF/symbols64.test | 541 +- ...tion-arguments-of-funcs-used-in-blockaddress.ll | 4 +- llvm/tools/CMakeLists.txt | 1 + llvm/tools/llvm-ar/llvm-ar.cpp | 6 +- llvm/tools/llvm-ifs/llvm-ifs.cpp | 16 +- llvm/tools/llvm-jitlink/llvm-jitlink.cpp | 92 +- .../llvm-libtool-darwin/llvm-libtool-darwin.cpp | 451 +- llvm/tools/llvm-mca/Views/InstructionInfoView.cpp | 32 +- llvm/tools/llvm-mca/Views/InstructionInfoView.h | 10 +- llvm/tools/llvm-mca/llvm-mca.cpp | 13 +- llvm/tools/llvm-nm/llvm-nm.cpp | 94 +- llvm/tools/llvm-profgen/ProfileGenerator.cpp | 28 +- llvm/tools/llvm-profgen/ProfiledBinary.cpp | 2 +- llvm/tools/llvm-readobj/MachODumper.cpp | 67 +- llvm/tools/llvm-readobj/llvm-readobj.cpp | 2 + llvm/tools/llvm-reduce/DeltaManager.cpp | 35 +- llvm/tools/llvm-reduce/DeltaManager.h | 2 +- llvm/tools/llvm-reduce/llvm-reduce.cpp | 8 +- llvm/tools/llvm-tapi-diff/DiffEngine.cpp | 3 +- llvm/unittests/Analysis/LoopNestTest.cpp | 13 + llvm/unittests/Analysis/MemoryBuiltinsTest.cpp | 1 - llvm/unittests/Analysis/TFUtilsTest.cpp | 38 +- llvm/unittests/Bitcode/DataLayoutUpgradeTest.cpp | 2 +- llvm/unittests/CodeGen/DIETest.cpp | 9 +- llvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp | 6 +- llvm/unittests/Demangle/DLangDemangleTest.cpp | 27 +- llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp | 2 + llvm/unittests/IR/VPIntrinsicTest.cpp | 2 + llvm/unittests/Support/Host.cpp | 3 + llvm/unittests/Support/Path.cpp | 47 + llvm/unittests/Support/TargetParserTest.cpp | 25 +- llvm/unittests/TextAPI/TextStubV1Tests.cpp | 16 +- llvm/unittests/TextAPI/TextStubV2Tests.cpp | 16 +- llvm/unittests/TextAPI/TextStubV3Tests.cpp | 59 +- llvm/unittests/TextAPI/TextStubV4Tests.cpp | 63 +- llvm/utils/extract_symbols.py | 4 +- .../clang-tools-extra/clang-tidy/misc/BUILD.gn | 1 + .../utils/gn/secondary/clang/lib/Frontend/BUILD.gn | 1 - llvm/utils/gn/secondary/clang/lib/Lex/BUILD.gn | 1 + llvm/utils/gn/secondary/libcxx/include/BUILD.gn | 11 + llvm/utils/gn/secondary/lld/MachO/BUILD.gn | 1 + .../gn/secondary/llvm/lib/Target/X86/BUILD.gn | 1 + .../gn/secondary/llvm/lib/Target/X86/MCA/BUILD.gn | 13 + .../llvm/lib/Target/targets_with_mcas.gni | 7 +- .../gn/secondary/llvm/tools/llvm-config/BUILD.gn | 8 +- llvm/utils/lit/lit/main.py | 12 +- mlir/CMakeLists.txt | 6 +- mlir/cmake/modules/AddMLIR.cmake | 3 +- mlir/docs/Bindings/Python.md | 2 +- mlir/docs/Canonicalization.md | 9 +- mlir/docs/Interfaces.md | 12 + mlir/docs/OpDefinitions.md | 10 + mlir/docs/Tutorials/DefiningAttributesAndTypes.md | 36 +- mlir/examples/toy/Ch1/include/toy/AST.h | 37 +- mlir/examples/toy/Ch1/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch1/include/toy/Parser.h | 6 +- mlir/examples/toy/Ch2/include/toy/AST.h | 37 +- mlir/examples/toy/Ch2/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch2/include/toy/MLIRGen.h | 6 +- mlir/examples/toy/Ch2/include/toy/Parser.h | 6 +- mlir/examples/toy/Ch2/mlir/MLIRGen.cpp | 2 +- mlir/examples/toy/Ch3/include/toy/AST.h | 37 +- mlir/examples/toy/Ch3/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch3/include/toy/MLIRGen.h | 6 +- mlir/examples/toy/Ch3/include/toy/Parser.h | 6 +- mlir/examples/toy/Ch3/mlir/MLIRGen.cpp | 2 +- mlir/examples/toy/Ch4/include/toy/AST.h | 37 +- mlir/examples/toy/Ch4/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch4/include/toy/MLIRGen.h | 6 +- mlir/examples/toy/Ch4/include/toy/Parser.h | 6 +- mlir/examples/toy/Ch4/include/toy/Passes.h | 6 +- mlir/examples/toy/Ch4/mlir/MLIRGen.cpp | 2 +- mlir/examples/toy/Ch5/include/toy/AST.h | 37 +- mlir/examples/toy/Ch5/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch5/include/toy/MLIRGen.h | 6 +- mlir/examples/toy/Ch5/include/toy/Parser.h | 6 +- mlir/examples/toy/Ch5/include/toy/Passes.h | 6 +- mlir/examples/toy/Ch5/mlir/MLIRGen.cpp | 2 +- mlir/examples/toy/Ch6/include/toy/AST.h | 37 +- mlir/examples/toy/Ch6/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch6/include/toy/MLIRGen.h | 6 +- mlir/examples/toy/Ch6/include/toy/Parser.h | 6 +- mlir/examples/toy/Ch6/include/toy/Passes.h | 6 +- mlir/examples/toy/Ch6/mlir/MLIRGen.cpp | 2 +- mlir/examples/toy/Ch7/include/toy/AST.h | 50 +- mlir/examples/toy/Ch7/include/toy/Lexer.h | 6 +- mlir/examples/toy/Ch7/include/toy/MLIRGen.h | 6 +- mlir/examples/toy/Ch7/include/toy/Parser.h | 10 +- mlir/examples/toy/Ch7/include/toy/Passes.h | 6 +- mlir/examples/toy/Ch7/mlir/MLIRGen.cpp | 2 +- mlir/include/mlir-c/Bindings/Python/Interop.h | 3 +- mlir/include/mlir-c/Conversion.h | 6 +- mlir/include/mlir-c/Dialect/PDL.h | 72 + mlir/include/mlir-c/Dialect/Quant.h | 2 +- mlir/include/mlir-c/Dialect/SparseTensor.h | 6 +- mlir/include/mlir-c/ExecutionEngine.h | 2 +- mlir/include/mlir-c/Interfaces.h | 8 +- mlir/include/mlir/Analysis/AffineAnalysis.h | 6 +- mlir/include/mlir/Analysis/AffineStructures.h | 7 +- mlir/include/mlir/Analysis/AliasAnalysis.h | 2 +- mlir/include/mlir/Analysis/LoopAnalysis.h | 6 +- mlir/include/mlir/Analysis/NestedMatcher.h | 6 +- mlir/include/mlir/Analysis/NumberOfExecutions.h | 107 - mlir/include/mlir/Analysis/Presburger/Fraction.h | 4 +- .../mlir/Analysis/Presburger/LinearTransform.h | 6 +- .../mlir/Analysis/Presburger/PresburgerSet.h | 6 +- mlir/include/mlir/Analysis/Utils.h | 2 +- mlir/include/mlir/Bindings/Python/PybindAdaptors.h | 48 +- mlir/include/mlir/CAPI/Utils.h | 4 +- .../mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h | 2 +- .../mlir/Conversion/LLVMCommon/MemRefBuilder.h | 2 +- .../Conversion/LinalgToSPIRV/LinalgToSPIRVPass.h | 6 +- .../Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h | 6 +- .../mlir/Conversion/VectorToGPU/VectorToGPU.h | 6 +- .../Conversion/VectorToLLVM/ConvertVectorToLLVM.h | 16 +- .../mlir/Conversion/VectorToSPIRV/VectorToSPIRV.h | 6 +- .../Conversion/VectorToSPIRV/VectorToSPIRVPass.h | 6 +- .../Dialect/Affine/IR/AffineMemoryOpInterfaces.h | 6 +- mlir/include/mlir/Dialect/Affine/IR/AffineOps.h | 8 +- .../mlir/Dialect/Affine/IR/AffineValueMap.h | 2 +- mlir/include/mlir/Dialect/Affine/Passes.h | 6 +- mlir/include/mlir/Dialect/Affine/Passes.td | 4 +- .../mlir/Dialect/Arithmetic/IR/Arithmetic.h | 2 + .../mlir/Dialect/Arithmetic/IR/ArithmeticOps.td | 4 +- mlir/include/mlir/Dialect/Async/IR/AsyncOps.td | 3 +- .../Dialect/Bufferization/Transforms/Passes.td | 8 +- mlir/include/mlir/Dialect/CommonFolders.h | 5 +- mlir/include/mlir/Dialect/GPU/MemoryPromotion.h | 2 +- mlir/include/mlir/Dialect/GPU/ParallelLoopMapper.h | 2 +- mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td | 8 +- .../Dialect/LLVMIR/Transforms/LegalizeForExport.h | 6 +- .../ComprehensiveBufferize/AffineInterfaceImpl.h | 8 +- .../ComprehensiveBufferize/ArithInterfaceImpl.h | 6 +- .../BufferizableOpInterface.h | 19 +- .../BufferizationInterfaceImpl.h | 6 +- .../ComprehensiveBufferize.h | 6 +- .../ComprehensiveBufferize/LinalgInterfaceImpl.h | 6 +- .../ComprehensiveBufferize/ModuleBufferization.h | 8 +- .../ComprehensiveBufferize/SCFInterfaceImpl.h | 6 +- .../ComprehensiveBufferize/StdInterfaceImpl.h | 27 + .../ComprehensiveBufferize/TensorInterfaceImpl.h | 6 +- .../ComprehensiveBufferize/VectorInterfaceImpl.h | 6 +- mlir/include/mlir/Dialect/Linalg/IR/Linalg.h | 6 +- .../Linalg/IR/LinalgNamedStructuredOps.yaml | 70 +- mlir/include/mlir/Dialect/Linalg/Passes.td | 3 + .../Dialect/Linalg/Transforms/CodegenStrategy.h | 72 +- .../mlir/Dialect/Linalg/Transforms/HoistPadding.h | 6 +- .../mlir/Dialect/Linalg/Transforms/Transforms.h | 25 +- mlir/include/mlir/Dialect/Linalg/Utils/Utils.h | 8 +- mlir/include/mlir/Dialect/Math/IR/MathBase.td | 1 + mlir/include/mlir/Dialect/Math/IR/MathOps.td | 2 + .../mlir/Dialect/Math/Transforms/Approximation.h | 6 +- mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td | 5 +- mlir/include/mlir/Dialect/Quant/QuantTypes.h | 6 +- mlir/include/mlir/Dialect/Quant/UniformSupport.h | 9 +- mlir/include/mlir/Dialect/SCF/SCF.h | 6 +- mlir/include/mlir/Dialect/SCF/SCFOps.td | 15 +- mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.h | 10 +- .../Dialect/SPIRV/Transforms/SPIRVConversion.h | 16 +- mlir/include/mlir/Dialect/Shape/IR/Shape.h | 6 +- .../Dialect/SparseTensor/IR/SparseTensorOps.td | 2 +- mlir/include/mlir/Dialect/StandardOps/IR/Ops.h | 2 +- .../mlir/Dialect/StandardOps/Transforms/Passes.h | 6 +- mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td | 1 + mlir/include/mlir/Dialect/Tosa/IR/TosaUtilOps.td | 6 +- mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h | 11 +- .../include/mlir/Dialect/Tosa/Transforms/Passes.td | 24 +- .../mlir/Dialect/Tosa/Utils/CoversionUtils.h | 84 + mlir/include/mlir/Dialect/Tosa/Utils/QuantUtils.h | 6 +- mlir/include/mlir/Dialect/Traits.h | 6 +- .../mlir/Dialect/Utils/StructuredOpsUtils.h | 2 +- mlir/include/mlir/Dialect/Vector/VectorOps.td | 12 +- .../mlir/Dialect/Vector/VectorRewritePatterns.h | 26 +- .../include/mlir/Dialect/Vector/VectorTransforms.h | 6 +- mlir/include/mlir/ExecutionEngine/AsyncRuntime.h | 6 +- mlir/include/mlir/ExecutionEngine/CRunnerUtils.h | 33 +- .../include/mlir/ExecutionEngine/ExecutionEngine.h | 6 +- mlir/include/mlir/ExecutionEngine/JitRunner.h | 6 +- mlir/include/mlir/ExecutionEngine/MemRefUtils.h | 2 +- mlir/include/mlir/ExecutionEngine/OptUtils.h | 6 +- mlir/include/mlir/ExecutionEngine/RunnerUtils.h | 109 +- mlir/include/mlir/IR/AffineExpr.h | 14 +- mlir/include/mlir/IR/AffineExprVisitor.h | 6 +- mlir/include/mlir/IR/AffineMap.h | 16 +- mlir/include/mlir/IR/Attributes.h | 11 +- mlir/include/mlir/IR/Block.h | 2 +- mlir/include/mlir/IR/BlockSupport.h | 6 +- mlir/include/mlir/IR/Builders.h | 21 +- mlir/include/mlir/IR/BuiltinAttributeInterfaces.h | 4 +- mlir/include/mlir/IR/BuiltinAttributes.h | 3 +- mlir/include/mlir/IR/BuiltinAttributes.td | 6 - mlir/include/mlir/IR/BuiltinOps.h | 4 +- mlir/include/mlir/IR/BuiltinTypeInterfaces.td | 147 + mlir/include/mlir/IR/BuiltinTypes.h | 141 +- mlir/include/mlir/IR/BuiltinTypes.td | 60 +- mlir/include/mlir/IR/Identifier.h | 20 - mlir/include/mlir/IR/IntegerSet.h | 10 +- mlir/include/mlir/IR/Location.h | 4 +- mlir/include/mlir/IR/Matchers.h | 8 +- mlir/include/mlir/IR/OpBase.td | 11 +- mlir/include/mlir/IR/OpImplementation.h | 4 +- mlir/include/mlir/IR/Operation.h | 32 +- mlir/include/mlir/IR/OperationSupport.h | 13 +- mlir/include/mlir/IR/PatternMatch.h | 18 +- mlir/include/mlir/IR/SubElementInterfaces.h | 6 +- mlir/include/mlir/IR/SymbolTable.h | 2 +- mlir/include/mlir/IR/TypeSupport.h | 8 +- mlir/include/mlir/IR/TypeUtilities.h | 6 +- mlir/include/mlir/IR/Types.h | 8 +- mlir/include/mlir/IR/Visitors.h | 127 +- .../mlir/Interfaces/ControlFlowInterfaces.h | 8 +- .../mlir/Interfaces/ControlFlowInterfaces.td | 20 - .../include/mlir/Interfaces/InferTypeOpInterface.h | 4 +- .../include/mlir/Interfaces/SideEffectInterfaces.h | 8 +- mlir/include/mlir/Interfaces/ViewLikeInterface.h | 18 + mlir/include/mlir/Interfaces/ViewLikeInterface.td | 35 +- mlir/include/mlir/Pass/PassRegistry.h | 26 +- mlir/include/mlir/Support/DebugAction.h | 2 +- mlir/include/mlir/Support/DebugCounter.h | 5 +- mlir/include/mlir/Support/DebugStringHelper.h | 10 +- mlir/include/mlir/Support/InterfaceSupport.h | 7 +- mlir/include/mlir/Support/LogicalResult.h | 6 +- mlir/include/mlir/Support/Timing.h | 9 +- mlir/include/mlir/Support/ToolUtilities.h | 2 +- mlir/include/mlir/TableGen/CodeGenHelpers.h | 2 +- mlir/include/mlir/TableGen/Format.h | 2 +- mlir/include/mlir/TableGen/GenInfo.h | 3 +- mlir/include/mlir/TableGen/GenNameParser.h | 4 +- mlir/include/mlir/TableGen/Interfaces.h | 4 + mlir/include/mlir/TableGen/Predicate.h | 4 +- .../include/mlir/Target/LLVMIR/ModuleTranslation.h | 2 +- mlir/include/mlir/Target/SPIRV/SPIRVBinaryUtils.h | 6 +- mlir/include/mlir/Tools/PDLL/AST/Diagnostic.h | 6 +- .../mlir/Tools/mlir-lsp-server/MlirLspServerMain.h | 6 +- .../mlir/Tools/mlir-reduce/MlirReduceMain.h | 6 +- mlir/include/mlir/Transforms/DialectConversion.h | 10 +- mlir/include/mlir/Transforms/InliningUtils.h | 6 +- mlir/include/mlir/Transforms/LoopFusionUtils.h | 6 +- mlir/include/mlir/Transforms/LoopUtils.h | 39 +- mlir/include/mlir/Transforms/Passes.td | 28 +- mlir/lib/Analysis/CMakeLists.txt | 2 - mlir/lib/Analysis/NumberOfExecutions.cpp | 242 - mlir/lib/Bindings/Python/IRModule.h | 14 +- mlir/lib/Bindings/Python/PybindUtils.h | 2 +- mlir/lib/CAPI/Dialect/CMakeLists.txt | 9 + mlir/lib/CAPI/Dialect/PDL.cpp | 85 + mlir/lib/CAPI/Dialect/Quant.cpp | 2 +- mlir/lib/CAPI/IR/IR.cpp | 4 +- mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp | 2 +- .../GPUCommon/IndexIntrinsicsOpLowering.h | 6 +- .../Conversion/GPUCommon/OpToFuncCallLowering.h | 4 +- mlir/lib/Conversion/LLVMCommon/MemRefBuilder.cpp | 4 +- mlir/lib/Conversion/LLVMCommon/Pattern.cpp | 4 +- mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp | 75 +- mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp | 75 +- .../Conversion/TosaToLinalg/TosaToLinalgNamed.cpp | 93 +- .../Conversion/TosaToLinalg/TosaToLinalgPass.cpp | 12 +- .../Conversion/TosaToStandard/TosaToStandard.cpp | 57 +- .../Affine/Transforms/AffineDataCopyGeneration.cpp | 31 +- .../Dialect/Affine/Transforms/SuperVectorize.cpp | 18 +- mlir/lib/Dialect/Arithmetic/IR/ArithmeticOps.cpp | 8 +- .../Dialect/Arithmetic/Transforms/ExpandOps.cpp | 20 +- mlir/lib/Dialect/Async/IR/Async.cpp | 6 - mlir/lib/Dialect/GPU/IR/GPUDialect.cpp | 16 + .../lib/Dialect/GPU/Transforms/KernelOutlining.cpp | 2 +- .../Dialect/GPU/Transforms/SerializeToHsaco.cpp | 2 +- .../BufferizableOpInterface.cpp | 59 +- .../Linalg/ComprehensiveBufferize/CMakeLists.txt | 9 + .../ComprehensiveBufferize.cpp | 58 +- .../ComprehensiveBufferize/ModuleBufferization.cpp | 362 +- .../ComprehensiveBufferize/StdInterfaceImpl.cpp | 79 + mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp | 2 +- mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt | 2 + .../Transforms/ComprehensiveBufferizePass.cpp | 8 +- .../Dialect/Linalg/Transforms/PadOpInterchange.cpp | 122 + .../Dialect/Linalg/Transforms/Vectorization.cpp | 46 +- mlir/lib/Dialect/Math/IR/CMakeLists.txt | 1 + mlir/lib/Dialect/Math/IR/MathOps.cpp | 57 + mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp | 79 +- mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp | 1 - mlir/lib/Dialect/SCF/SCF.cpp | 183 +- .../SparseTensor/Transforms/SparseTensorPasses.cpp | 2 +- .../SparseTensor/Transforms/Sparsification.cpp | 2 +- .../StandardOps/Transforms/FuncBufferize.cpp | 2 +- mlir/lib/Dialect/Tensor/IR/TensorOps.cpp | 11 +- mlir/lib/Dialect/Tosa/CMakeLists.txt | 1 + mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt | 4 +- .../Tosa/Transforms/TosaDecomposeConv2D.cpp | 115 + .../Tosa/Transforms/TosaDecomposeDepthwise.cpp | 121 + .../Tosa/Transforms/TosaDecomposeTransposeConv.cpp | 32 +- .../Dialect/Tosa/Transforms/TosaOptimization.cpp | 243 - .../Tosa/Transforms/TosaOptionalDecompositions.cpp | 46 + mlir/lib/Dialect/Tosa/Utils/ConversionUtils.cpp | 30 + mlir/lib/Dialect/Vector/VectorOps.cpp | 111 +- .../Vector/VectorTransferSplitRewritePatterns.cpp | 6 +- mlir/lib/Dialect/Vector/VectorUnrollDistribute.cpp | 3 +- mlir/lib/ExecutionEngine/SparseTensorUtils.cpp | 6 +- mlir/lib/IR/AttributeDetail.h | 2 +- mlir/lib/IR/Builders.cpp | 4 - mlir/lib/IR/BuiltinTypeInterfaces.cpp | 51 + mlir/lib/IR/BuiltinTypes.cpp | 234 +- mlir/lib/IR/CMakeLists.txt | 1 + mlir/lib/IR/MLIRContext.cpp | 30 +- mlir/lib/IR/OperationSupport.cpp | 11 +- mlir/lib/IR/TypeDetail.h | 4 +- mlir/lib/IR/Visitors.cpp | 48 + mlir/lib/Interfaces/ControlFlowInterfaces.cpp | 3 - mlir/lib/Interfaces/ViewLikeInterface.cpp | 45 + mlir/lib/Parser/AsmParserImpl.h | 2 +- mlir/lib/Parser/Token.h | 2 +- mlir/lib/Pass/Pass.cpp | 2 +- mlir/lib/Pass/PassRegistry.cpp | 22 +- mlir/lib/TableGen/Interfaces.cpp | 6 + mlir/lib/TableGen/Predicate.cpp | 2 +- mlir/lib/Target/LLVMIR/ModuleTranslation.cpp | 22 +- mlir/lib/Tools/PDLL/Parser/Lexer.h | 2 +- mlir/lib/Tools/mlir-lsp-server/lsp/Protocol.h | 5 +- mlir/lib/Transforms/Inliner.cpp | 12 +- mlir/lib/Transforms/Utils/DialectConversion.cpp | 5 - mlir/lib/Transforms/Utils/LoopUtils.cpp | 83 +- .../dialects/linalg/opdsl/ops/core_named_ops.py | 16 +- .../Analysis/test-number-of-block-executions.mlir | 192 - .../test-number-of-operation-executions.mlir | 66 - mlir/test/CAPI/CMakeLists.txt | 8 + mlir/test/CAPI/execution_engine.c | 2 + mlir/test/CAPI/pdl.c | 332 ++ mlir/test/CMakeLists.txt | 20 +- .../Conversion/MemRefToLLVM/memref-to-llvm.mlir | 9 + .../TosaToLinalg/tosa-to-linalg-named.mlir | 78 + .../Conversion/TosaToLinalg/tosa-to-linalg.mlir | 48 + .../TosaToStandard/tosa-to-standard.mlir | 37 + mlir/test/Dialect/Affine/dma-generate.mlir | 2 - mlir/test/Dialect/Arithmetic/canonicalize.mlir | 27 + mlir/test/Dialect/Arithmetic/expand-ops.mlir | 22 +- mlir/test/Dialect/GPU/outlining.mlir | 18 +- mlir/test/Dialect/LLVMIR/canonicalize.mlir | 26 + .../comprehensive-function-bufferize-compat.mlir | 31 + .../Linalg/comprehensive-function-bufferize.mlir | 4 +- .../comprehensive-module-bufferize-analysis.mlir | 89 +- ...e-module-bufferize-init-tensor-elimination.mlir | 6 +- .../comprehensive-module-bufferize-partial.mlir | 6 +- .../Linalg/comprehensive-module-bufferize.mlir | 145 +- mlir/test/Dialect/Linalg/pad_fusion.mlir | 93 + mlir/test/Dialect/Math/canonicalize.mlir | 75 + mlir/test/Dialect/MemRef/canonicalize.mlir | 25 + mlir/test/Dialect/SCF/canonicalize.mlir | 101 + mlir/test/Dialect/Tosa/operation_optimization.mlir | 69 - mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir | 40 + .../Dialect/Tosa/tosa-decompose-depthwise.mlir | 32 + .../Tosa/tosa-decompose-transpose-conv.mlir | 2 +- mlir/test/Dialect/Vector/canonicalize.mlir | 84 + mlir/test/IR/generic-visitors-interrupt.mlir | 157 + mlir/test/IR/generic-visitors.mlir | 63 + .../Linalg/CPU/test-comprehensive-bufferize.mlir | 2 +- mlir/test/Integration/Dialect/Memref/memref_abi.c | 173 + .../Dialect/SparseTensor/CPU/sparse_mttkrp.mlir | 64 +- mlir/test/Target/LLVMIR/llvmir-types.mlir | 2 + mlir/test/Target/LLVMIR/llvmir.mlir | 110 + mlir/test/Target/LLVMIR/openmp-llvm.mlir | 16 +- mlir/test/Transforms/inlining.mlir | 12 + mlir/test/Transforms/scf-loop-unroll.mlir | 14 + mlir/test/lib/Analysis/CMakeLists.txt | 1 - mlir/test/lib/Analysis/TestNumberOfExecutions.cpp | 67 - .../test/lib/Dialect/Affine/TestAffineDataCopy.cpp | 10 +- mlir/test/lib/Dialect/Linalg/CMakeLists.txt | 2 + .../Dialect/Linalg/TestComprehensiveBufferize.cpp | 9 +- .../lib/Dialect/Linalg/TestLinalgDistribution.cpp | 2 +- mlir/test/lib/Dialect/Linalg/TestPadFusion.cpp | 48 + mlir/test/lib/Dialect/Test/TestAttrDefs.td | 8 + mlir/test/lib/Dialect/Test/TestOps.td | 30 + mlir/test/lib/Dialect/Test/TestPatterns.cpp | 4 +- mlir/test/lib/Dialect/Test/TestTypeDefs.td | 10 +- mlir/test/lib/IR/CMakeLists.txt | 1 + mlir/test/lib/IR/TestVisitorsGeneric.cpp | 123 + mlir/test/lit.cfg.py | 15 +- mlir/test/mlir-cpu-runner/copy.mlir | 22 +- mlir/test/mlir-cpu-runner/lit.local.cfg | 8 +- mlir/test/mlir-tblgen/op-format.mlir | 18 + mlir/test/mlir-tblgen/op-interface.td | 18 + mlir/test/mlir-tblgen/op-side-effects.td | 4 +- mlir/test/mlir-tblgen/testdialect-attrdefs.mlir | 4 + mlir/test/mlir-tblgen/testdialect-typedefs.mlir | 4 + mlir/test/python/execution_engine.py | 2 +- mlir/tools/mlir-opt/mlir-opt.cpp | 9 +- mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp | 47 +- mlir/tools/mlir-tblgen/FormatGen.cpp | 1 + mlir/tools/mlir-tblgen/FormatGen.h | 1 + mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp | 5 +- mlir/tools/mlir-tblgen/OpFormatGen.cpp | 65 +- mlir/tools/mlir-tblgen/OpInterfacesGen.cpp | 9 + mlir/tools/mlir-vulkan-runner/VulkanRuntime.cpp | 2 +- mlir/unittests/CMakeLists.txt | 6 +- mlir/unittests/Dialect/CMakeLists.txt | 1 - mlir/unittests/Dialect/SCF/CMakeLists.txt | 10 - mlir/unittests/Dialect/SCF/SCFOps.cpp | 67 - mlir/unittests/IR/ShapedTypeTest.cpp | 28 +- mlir/unittests/Pass/CMakeLists.txt | 1 + mlir/unittests/Pass/PassPipelineParserTest.cpp | 45 + openmp/CMakeLists.txt | 2 + openmp/libompd/src/CMakeLists.txt | 2 +- openmp/libomptarget/DeviceRTL/CMakeLists.txt | 7 +- .../libomptarget/DeviceRTL/src/Configuration.cpp | 2 +- openmp/libomptarget/DeviceRTL/src/Utils.cpp | 2 +- .../libomptarget/deviceRTLs/amdgcn/CMakeLists.txt | 10 +- .../deviceRTLs/amdgcn/src/target_impl.h | 4 +- .../libomptarget/deviceRTLs/common/src/support.cu | 2 +- openmp/libomptarget/plugins/amdgpu/impl/internal.h | 14 +- openmp/libomptarget/plugins/amdgpu/src/rtl.cpp | 12 +- openmp/runtime/src/CMakeLists.txt | 6 +- openmp/tools/multiplex/CMakeLists.txt | 2 +- polly/CMakeLists.txt | 22 +- polly/cmake/CMakeLists.txt | 39 +- polly/cmake/PollyConfig.cmake.in | 2 + polly/lib/External/CMakeLists.txt | 2 +- pstl/CMakeLists.txt | 6 +- utils/bazel/llvm-project-overlay/clang/BUILD.bazel | 1 + utils/bazel/llvm-project-overlay/mlir/BUILD.bazel | 98 +- .../bazel/llvm-project-overlay/mlir/build_defs.bzl | 16 +- .../llvm-project-overlay/mlir/test/BUILD.bazel | 1 + 2584 files changed, 171502 insertions(+), 46221 deletions(-) create mode 100644 bolt/CMakeLists.txt create mode 100644 bolt/CODE_OWNERS.TXT copy {llvm => bolt}/LICENSE.TXT (100%) create mode 100644 bolt/README.md create mode 100644 bolt/docs/CMakeLists.txt create mode 100644 bolt/docs/Heatmap.png create mode 100644 bolt/docs/Heatmaps.md create mode 100644 bolt/docs/OptimizingClang.md create mode 100644 bolt/docs/RuntimeLibrary.md create mode 100644 bolt/docs/doxygen-mainpage.dox create mode 100644 bolt/docs/doxygen.cfg.in create mode 100644 bolt/include/bolt/Core/BinaryBasicBlock.h create mode 100644 bolt/include/bolt/Core/BinaryContext.h create mode 100644 bolt/include/bolt/Core/BinaryData.h create mode 100644 bolt/include/bolt/Core/BinaryEmitter.h create mode 100644 bolt/include/bolt/Core/BinaryFunction.h create mode 100644 bolt/include/bolt/Core/BinaryLoop.h create mode 100644 bolt/include/bolt/Core/BinarySection.h create mode 100644 bolt/include/bolt/Core/DebugData.h create mode 100644 bolt/include/bolt/Core/DynoStats.h create mode 100644 bolt/include/bolt/Core/Exceptions.h create mode 100644 bolt/include/bolt/Core/JumpTable.h create mode 100644 bolt/include/bolt/Core/MCPlus.h create mode 100644 bolt/include/bolt/Core/MCPlusBuilder.h create mode 100644 bolt/include/bolt/Core/ParallelUtilities.h create mode 100644 bolt/include/bolt/Core/Relocation.h create mode 100644 bolt/include/bolt/Passes/ADRRelaxationPass.h create mode 100644 bolt/include/bolt/Passes/Aligner.h create mode 100644 bolt/include/bolt/Passes/AllocCombiner.h create mode 100644 bolt/include/bolt/Passes/AsmDump.h create mode 100644 bolt/include/bolt/Passes/BinaryFunctionCallGraph.h create mode 100644 bolt/include/bolt/Passes/BinaryPasses.h create mode 100644 bolt/include/bolt/Passes/CacheMetrics.h create mode 100644 bolt/include/bolt/Passes/CallGraph.h create mode 100644 bolt/include/bolt/Passes/CallGraphWalker.h create mode 100644 bolt/include/bolt/Passes/DataflowAnalysis.h create mode 100644 bolt/include/bolt/Passes/DataflowInfoManager.h create mode 100644 bolt/include/bolt/Passes/DominatorAnalysis.h create mode 100644 bolt/include/bolt/Passes/FrameAnalysis.h create mode 100644 bolt/include/bolt/Passes/FrameOptimizer.h create mode 100644 bolt/include/bolt/Passes/HFSort.h create mode 100644 bolt/include/bolt/Passes/IdenticalCodeFolding.h create mode 100644 bolt/include/bolt/Passes/IndirectCallPromotion.h create mode 100644 bolt/include/bolt/Passes/Inliner.h create mode 100644 bolt/include/bolt/Passes/Instrumentation.h create mode 100644 bolt/include/bolt/Passes/InstrumentationSummary.h create mode 100644 bolt/include/bolt/Passes/JTFootprintReduction.h create mode 100644 bolt/include/bolt/Passes/LivenessAnalysis.h create mode 100644 bolt/include/bolt/Passes/LongJmp.h create mode 100644 bolt/include/bolt/Passes/LoopInversionPass.h create mode 100644 bolt/include/bolt/Passes/MCF.h create mode 100644 bolt/include/bolt/Passes/PLTCall.h create mode 100644 bolt/include/bolt/Passes/PatchEntries.h create mode 100644 bolt/include/bolt/Passes/ReachingDefOrUse.h create mode 100644 bolt/include/bolt/Passes/ReachingInsns.h create mode 100644 bolt/include/bolt/Passes/RegAnalysis.h create mode 100644 bolt/include/bolt/Passes/RegReAssign.h create mode 100644 bolt/include/bolt/Passes/ReorderAlgorithm.h create mode 100644 bolt/include/bolt/Passes/ReorderData.h create mode 100644 bolt/include/bolt/Passes/ReorderFunctions.h create mode 100644 bolt/include/bolt/Passes/ReorderUtils.h create mode 100644 bolt/include/bolt/Passes/RetpolineInsertion.h create mode 100644 bolt/include/bolt/Passes/ShrinkWrapping.h create mode 100644 bolt/include/bolt/Passes/SplitFunctions.h create mode 100644 bolt/include/bolt/Passes/StackAllocationAnalysis.h create mode 100644 bolt/include/bolt/Passes/StackAvailableExpressions.h create mode 100644 bolt/include/bolt/Passes/StackPointerTracking.h create mode 100644 bolt/include/bolt/Passes/StackReachingUses.h create mode 100644 bolt/include/bolt/Passes/StokeInfo.h create mode 100644 bolt/include/bolt/Passes/TailDuplication.h create mode 100644 bolt/include/bolt/Passes/ThreeWayBranch.h create mode 100644 bolt/include/bolt/Passes/ValidateInternalCalls.h create mode 100644 bolt/include/bolt/Passes/VeneerElimination.h create mode 100644 bolt/include/bolt/Profile/BoltAddressTranslation.h create mode 100644 bolt/include/bolt/Profile/DataAggregator.h create mode 100644 bolt/include/bolt/Profile/DataReader.h create mode 100644 bolt/include/bolt/Profile/Heatmap.h create mode 100644 bolt/include/bolt/Profile/ProfileReaderBase.h create mode 100644 bolt/include/bolt/Profile/ProfileYAMLMapping.h create mode 100644 bolt/include/bolt/Profile/YAMLProfileReader.h create mode 100644 bolt/include/bolt/Profile/YAMLProfileWriter.h create mode 100644 bolt/include/bolt/Rewrite/BinaryPassManager.h create mode 100644 bolt/include/bolt/Rewrite/DWARFRewriter.h create mode 100644 bolt/include/bolt/Rewrite/ExecutableFileMemoryManager.h create mode 100644 bolt/include/bolt/Rewrite/MachORewriteInstance.h create mode 100644 bolt/include/bolt/Rewrite/RewriteInstance.h create mode 100644 bolt/include/bolt/RuntimeLibs/HugifyRuntimeLibrary.h create mode 100644 bolt/include/bolt/RuntimeLibs/InstrumentationRuntimeLibrary.h create mode 100644 bolt/include/bolt/RuntimeLibs/RuntimeLibrary.h create mode 100644 bolt/include/bolt/Utils/BoltRevision.inc.in create mode 100644 bolt/include/bolt/Utils/CommandLineOpts.h create mode 100644 bolt/include/bolt/Utils/NameResolver.h create mode 100644 bolt/include/bolt/Utils/NameShortener.h create mode 100644 bolt/include/bolt/Utils/Utils.h create mode 100644 bolt/lib/CMakeLists.txt create mode 100644 bolt/lib/Core/BinaryBasicBlock.cpp create mode 100644 bolt/lib/Core/BinaryContext.cpp create mode 100644 bolt/lib/Core/BinaryData.cpp create mode 100644 bolt/lib/Core/BinaryEmitter.cpp create mode 100644 bolt/lib/Core/BinaryFunction.cpp create mode 100644 bolt/lib/Core/BinaryFunctionProfile.cpp create mode 100644 bolt/lib/Core/BinarySection.cpp create mode 100644 bolt/lib/Core/CMakeLists.txt create mode 100644 bolt/lib/Core/DebugData.cpp create mode 100644 bolt/lib/Core/DynoStats.cpp create mode 100644 bolt/lib/Core/Exceptions.cpp create mode 100644 bolt/lib/Core/JumpTable.cpp create mode 100644 bolt/lib/Core/MCPlusBuilder.cpp create mode 100644 bolt/lib/Core/ParallelUtilities.cpp create mode 100644 bolt/lib/Core/Relocation.cpp create mode 100644 bolt/lib/Passes/ADRRelaxationPass.cpp create mode 100644 bolt/lib/Passes/Aligner.cpp create mode 100644 bolt/lib/Passes/AllocCombiner.cpp create mode 100644 bolt/lib/Passes/AsmDump.cpp create mode 100644 bolt/lib/Passes/BinaryFunctionCallGraph.cpp create mode 100644 bolt/lib/Passes/BinaryPasses.cpp create mode 100644 bolt/lib/Passes/CMakeLists.txt create mode 100644 bolt/lib/Passes/CacheMetrics.cpp create mode 100644 bolt/lib/Passes/CallGraph.cpp create mode 100644 bolt/lib/Passes/CallGraphWalker.cpp create mode 100644 bolt/lib/Passes/DataflowAnalysis.cpp create mode 100644 bolt/lib/Passes/DataflowInfoManager.cpp create mode 100644 bolt/lib/Passes/ExtTSPReorderAlgorithm.cpp create mode 100644 bolt/lib/Passes/FrameAnalysis.cpp create mode 100644 bolt/lib/Passes/FrameOptimizer.cpp create mode 100644 bolt/lib/Passes/HFSort.cpp create mode 100644 bolt/lib/Passes/HFSortPlus.cpp create mode 100644 bolt/lib/Passes/IdenticalCodeFolding.cpp create mode 100644 bolt/lib/Passes/IndirectCallPromotion.cpp create mode 100644 bolt/lib/Passes/Inliner.cpp create mode 100644 bolt/lib/Passes/Instrumentation.cpp create mode 100644 bolt/lib/Passes/JTFootprintReduction.cpp create mode 100644 bolt/lib/Passes/LivenessAnalysis.cpp create mode 100644 bolt/lib/Passes/LongJmp.cpp create mode 100644 bolt/lib/Passes/LoopInversionPass.cpp create mode 100644 bolt/lib/Passes/MCF.cpp create mode 100644 bolt/lib/Passes/PLTCall.cpp create mode 100644 bolt/lib/Passes/PatchEntries.cpp create mode 100644 bolt/lib/Passes/PettisAndHansen.cpp create mode 100644 bolt/lib/Passes/RegAnalysis.cpp create mode 100644 bolt/lib/Passes/RegReAssign.cpp create mode 100644 bolt/lib/Passes/ReorderAlgorithm.cpp create mode 100644 bolt/lib/Passes/ReorderData.cpp create mode 100644 bolt/lib/Passes/ReorderFunctions.cpp create mode 100644 bolt/lib/Passes/RetpolineInsertion.cpp create mode 100644 bolt/lib/Passes/ShrinkWrapping.cpp create mode 100644 bolt/lib/Passes/SplitFunctions.cpp create mode 100644 bolt/lib/Passes/StackAllocationAnalysis.cpp create mode 100644 bolt/lib/Passes/StackAvailableExpressions.cpp create mode 100644 bolt/lib/Passes/StackPointerTracking.cpp create mode 100644 bolt/lib/Passes/StackReachingUses.cpp create mode 100644 bolt/lib/Passes/StokeInfo.cpp create mode 100644 bolt/lib/Passes/TailDuplication.cpp create mode 100644 bolt/lib/Passes/ThreeWayBranch.cpp create mode 100644 bolt/lib/Passes/ValidateInternalCalls.cpp create mode 100644 bolt/lib/Passes/VeneerElimination.cpp create mode 100644 bolt/lib/Profile/BoltAddressTranslation.cpp create mode 100644 bolt/lib/Profile/CMakeLists.txt create mode 100644 bolt/lib/Profile/DataAggregator.cpp create mode 100644 bolt/lib/Profile/DataReader.cpp create mode 100644 bolt/lib/Profile/Heatmap.cpp create mode 100644 bolt/lib/Profile/ProfileReaderBase.cpp create mode 100644 bolt/lib/Profile/YAMLProfileReader.cpp create mode 100644 bolt/lib/Profile/YAMLProfileWriter.cpp create mode 100644 bolt/lib/Rewrite/BinaryPassManager.cpp create mode 100644 bolt/lib/Rewrite/BoltDiff.cpp create mode 100644 bolt/lib/Rewrite/CMakeLists.txt create mode 100644 bolt/lib/Rewrite/DWARFRewriter.cpp create mode 100644 bolt/lib/Rewrite/ExecutableFileMemoryManager.cpp create mode 100644 bolt/lib/Rewrite/MachORewriteInstance.cpp create mode 100644 bolt/lib/Rewrite/RewriteInstance.cpp create mode 100644 bolt/lib/RuntimeLibs/CMakeLists.txt create mode 100644 bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp create mode 100644 bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp create mode 100644 bolt/lib/RuntimeLibs/RuntimeLibrary.cpp create mode 100644 bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp create mode 100644 bolt/lib/Target/AArch64/CMakeLists.txt create mode 100644 bolt/lib/Target/CMakeLists.txt create mode 100644 bolt/lib/Target/X86/CMakeLists.txt create mode 100644 bolt/lib/Target/X86/X86MCPlusBuilder.cpp create mode 100644 bolt/lib/Utils/CMakeLists.txt create mode 100644 bolt/lib/Utils/CommandLineOpts.cpp create mode 100644 bolt/lib/Utils/Utils.cpp create mode 100644 bolt/runtime/CMakeLists.txt create mode 100644 bolt/runtime/common.h create mode 100644 bolt/runtime/config.h.in create mode 100644 bolt/runtime/hugify.cpp create mode 100644 bolt/runtime/instr.cpp create mode 100644 bolt/test/AArch64/asm-func-debug.test create mode 100644 bolt/test/AArch64/lit.local.cfg create mode 100644 bolt/test/AArch64/tls.c create mode 100644 bolt/test/AArch64/update-debug-reloc.test create mode 100644 bolt/test/CMakeLists.txt create mode 100644 bolt/test/Inputs/asm_foo.s create mode 100644 bolt/test/Inputs/asm_main.c create mode 100644 bolt/test/Inputs/bolt_icf.cpp create mode 100644 bolt/test/Inputs/hello.c create mode 100644 bolt/test/Inputs/icf_baz.c create mode 100644 bolt/test/Inputs/icf_main.c create mode 100644 bolt/test/Inputs/vararg.s create mode 100644 bolt/test/X86/Inputs/asm_main.c create mode 100644 bolt/test/X86/Inputs/avx512.c create mode 100644 bolt/test/X86/Inputs/blarge.fdata create mode 100644 bolt/test/X86/Inputs/blarge.yaml create mode 100644 bolt/test/X86/Inputs/ctc_and_unreachable.s create mode 100644 bolt/test/X86/Inputs/debug-fission-script.txt create mode 100644 bolt/test/X86/Inputs/debug-fission-simple.s create mode 100644 bolt/test/X86/Inputs/double_jump.cpp create mode 100644 bolt/test/X86/Inputs/entry.s create mode 100644 bolt/test/X86/Inputs/exc4sw.S create mode 100644 bolt/test/X86/Inputs/exc4sw.fdata create mode 100755 bolt/test/X86/Inputs/exc_args.s create mode 100644 bolt/test/X86/Inputs/ft_to_noop.s create mode 100644 bolt/test/X86/Inputs/icf-jump-tables.c create mode 100644 bolt/test/X86/Inputs/indirect_goto.c create mode 100644 bolt/test/X86/Inputs/inline-foo.c create mode 100644 bolt/test/X86/Inputs/inline-main.c create mode 100644 bolt/test/X86/Inputs/inlined.cpp create mode 100644 bolt/test/X86/Inputs/inlinee.cpp create mode 100644 bolt/test/X86/Inputs/issue20.yaml create mode 100644 bolt/test/X86/Inputs/issue26.yaml create mode 100644 bolt/test/X86/Inputs/jmp_opt.cpp create mode 100644 bolt/test/X86/Inputs/jmp_opt2.cpp create mode 100644 bolt/test/X86/Inputs/jmp_opt3.cpp create mode 100644 bolt/test/X86/Inputs/jmpjmp.s create mode 100644 bolt/test/X86/Inputs/jump_table_footprint_reduction.s create mode 100644 bolt/test/X86/Inputs/jump_table_icp.cpp create mode 100644 bolt/test/X86/Inputs/jump_table_icp.s create mode 100644 bolt/test/X86/Inputs/jump_table_reference.s create mode 100644 bolt/test/X86/Inputs/linenumber.cpp create mode 100644 bolt/test/X86/Inputs/loop_nest.s create mode 100644 bolt/test/X86/Inputs/order.txt create mode 100644 bolt/test/X86/Inputs/plt-got-sec.yaml create mode 100644 bolt/test/X86/Inputs/plt-sec-8-byte.yaml create mode 100644 bolt/test/X86/Inputs/plt-sec.yaml create mode 100644 bolt/test/X86/Inputs/pre-aggregated.txt create mode 100644 bolt/test/X86/Inputs/relaxed_tc.s create mode 100644 bolt/test/X86/Inputs/rodata_simpl_loads.s create mode 100644 bolt/test/X86/Inputs/sctc_bug.s create mode 100644 bolt/test/X86/Inputs/sctc_bug2.s create mode 100644 bolt/test/X86/Inputs/sctc_bug3.s create mode 100644 bolt/test/X86/Inputs/sctc_bug4.s create mode 100644 bolt/test/X86/Inputs/shorten_mov.s create mode 100644 bolt/test/X86/Inputs/srol-bug-input.yaml create mode 100644 bolt/test/X86/Inputs/static_exe.s create mode 100644 bolt/test/X86/Inputs/tailcall.s create mode 100644 bolt/test/X86/Inputs/tailcall_traps.s create mode 100644 bolt/test/X86/Inputs/unreachable.s create mode 100644 bolt/test/X86/Inputs/user-order.S create mode 100644 bolt/test/X86/R_X86_64_64.pic.lld.cpp create mode 100644 bolt/test/X86/asm-dump.c create mode 100644 bolt/test/X86/asm-func-debug.test create mode 100644 bolt/test/X86/avx512-trap.test create mode 100644 bolt/test/X86/bad-exe.test create mode 100644 bolt/test/X86/bb-with-two-tail-calls.s create mode 100644 bolt/test/X86/block-reordering.test create mode 100644 bolt/test/X86/bolt-info.test create mode 100644 bolt/test/X86/branch-data.test create mode 100644 bolt/test/X86/bug-reorder-bb-jrcxz.s create mode 100644 bolt/test/X86/call-zero.s create mode 100644 bolt/test/X86/cfi-expr-rewrite.s create mode 100644 bolt/test/X86/cfi-instrs-count.s create mode 100644 bolt/test/X86/cfi-instrs-reordered.s create mode 100644 bolt/test/X86/ctc-and-unreachable.test create mode 100644 bolt/test/X86/debug-fission-single.s create mode 100644 bolt/test/X86/double-jump.test create mode 100644 bolt/test/X86/exceptions-args.test create mode 100644 bolt/test/X86/fallthrough-to-noop.test create mode 100755 bolt/test/X86/false-jump-table.s create mode 100644 bolt/test/X86/icf-jump-tables.test create mode 100644 bolt/test/X86/indirect-goto.test create mode 100644 bolt/test/X86/inline-debug-info.test create mode 100644 bolt/test/X86/inlined-function-mixed.test create mode 100644 bolt/test/X86/internal-call-instrument.s create mode 100644 bolt/test/X86/interprocedural-ref-entry-point.s create mode 100644 bolt/test/X86/invalid-profile.test create mode 100755 bolt/test/X86/issue20.s create mode 100755 bolt/test/X86/issue20.test create mode 100755 bolt/test/X86/issue26.s create mode 100755 bolt/test/X86/issue26.test create mode 100644 bolt/test/X86/jmp-optimization.test create mode 100644 bolt/test/X86/jmpjmp.test create mode 100644 bolt/test/X86/jump-table-footprint-reduction.test create mode 100644 bolt/test/X86/jump-table-icp.test create mode 100644 bolt/test/X86/jump-table-reference.test create mode 100644 bolt/test/X86/layout-heuristic.test create mode 100644 bolt/test/X86/line-number.test create mode 100644 bolt/test/X86/lit.local.cfg create mode 100644 bolt/test/X86/loop-inversion-pass.s create mode 100644 bolt/test/X86/loop-nest.test create mode 100644 bolt/test/X86/no-entry-reordering.test create mode 100644 bolt/test/X86/no-output.test create mode 100644 bolt/test/X86/no-relocs.test create mode 100644 bolt/test/X86/pie.test create mode 100644 bolt/test/X86/plt-sec-8-byte.test create mode 100644 bolt/test/X86/plt-sec.test create mode 100644 bolt/test/X86/pre-aggregated-perf.test create mode 100644 bolt/test/X86/re-optimize.test create mode 100644 bolt/test/X86/reader.test create mode 100644 bolt/test/X86/relaxed-tailcall.test create mode 100644 bolt/test/X86/remove-unused.test create mode 100644 bolt/test/X86/rodata-simpl-loads.test create mode 100644 bolt/test/X86/sctc-bug.test create mode 100644 bolt/test/X86/sctc-bug2.test create mode 100644 bolt/test/X86/sctc-bug3.test create mode 100644 bolt/test/X86/sctc-bug4.test create mode 100644 bolt/test/X86/shared-object.test create mode 100644 bolt/test/X86/shorten-mov.test create mode 100644 bolt/test/X86/shrinkwrapping-critedge.s create mode 100644 bolt/test/X86/shrinkwrapping-insertcfi.s create mode 100644 bolt/test/X86/shrinkwrapping-pop-order.s create mode 100644 bolt/test/X86/shrinkwrapping-popf.s create mode 100644 bolt/test/X86/shrinkwrapping.test create mode 100644 bolt/test/X86/split-func-icf.s create mode 100644 bolt/test/X86/split-func-jump-table-fragment-noparent.s create mode 100644 bolt/test/X86/split-func-jump-table-fragment-reverse.s create mode 100644 bolt/test/X86/split-func-jump-table-fragment.s create mode 100644 bolt/test/X86/srol-bug.test create mode 100644 bolt/test/X86/static-exe.test create mode 100644 bolt/test/X86/symtab-secondary-entries.test create mode 100644 bolt/test/X86/tail-duplication-cacheline.s create mode 100644 bolt/test/X86/tail-duplication-complex.s create mode 100644 bolt/test/X86/tail-duplication-jt.s create mode 100644 bolt/test/X86/tail-duplication-pass.s create mode 100644 bolt/test/X86/tail-duplication-prop-bug.s create mode 100644 bolt/test/X86/tailcall-traps.test create mode 100644 bolt/test/X86/tailcall.test create mode 100644 bolt/test/X86/unreachable.test create mode 100644 bolt/test/X86/vararg.test create mode 100755 bolt/test/X86/zero-sized-object.s create mode 100644 bolt/test/bolt-icf.test create mode 100644 bolt/test/keep-aranges.test create mode 100755 bolt/test/link_fdata.py create mode 100644 bolt/test/lit.cfg.py create mode 100644 bolt/test/lit.site.cfg.py.in create mode 100644 bolt/test/non-empty-debug-line.test create mode 100644 bolt/test/runtime/AArch64/adrrelaxationpass.s create mode 100644 bolt/test/runtime/AArch64/constant-island-relocations.s create mode 100644 bolt/test/runtime/AArch64/controlflow.s create mode 100644 bolt/test/runtime/AArch64/issue177.s create mode 100644 bolt/test/runtime/AArch64/lit.local.cfg create mode 100644 bolt/test/runtime/Inputs/fptr.c create mode 100644 bolt/test/runtime/X86/Inputs/basic-instrumentation.s create mode 100644 bolt/test/runtime/X86/Inputs/exception3.cpp create mode 100644 bolt/test/runtime/X86/Inputs/exception4.cpp create mode 100644 bolt/test/runtime/X86/Inputs/exceptions_split.cpp create mode 100644 bolt/test/runtime/X86/Inputs/fdata-escape-chars-syms.txt create mode 100644 bolt/test/runtime/X86/Inputs/fdata-escape-chars.txt create mode 100644 bolt/test/runtime/X86/Inputs/indirect_goto.c create mode 100644 bolt/test/runtime/X86/Inputs/internalcall-main.c create mode 100644 bolt/test/runtime/X86/Inputs/internalcall.S create mode 100644 bolt/test/runtime/X86/Inputs/retpoline_synthetic.cpp create mode 100644 bolt/test/runtime/X86/Inputs/user_func_order.txt create mode 100644 bolt/test/runtime/X86/basic-instrumentation.test create mode 100644 bolt/test/runtime/X86/exceptions-instrumentation.test create mode 100644 bolt/test/runtime/X86/exceptions-pic.test create mode 100644 bolt/test/runtime/X86/exceptions-run.test create mode 100644 bolt/test/runtime/X86/fdata-escape-chars.ll create mode 100755 bolt/test/runtime/X86/fix-branches-jrcxz.s create mode 100755 bolt/test/runtime/X86/hot-end-symbol.s create mode 100644 bolt/test/runtime/X86/indirect-goto-pie.test create mode 100755 bolt/test/runtime/X86/instrumentation-dup-jts.s create mode 100755 bolt/test/runtime/X86/instrumentation-ind-calls.s create mode 100644 bolt/test/runtime/X86/instrumentation-indirect.c create mode 100644 bolt/test/runtime/X86/instrumentation-pie.c create mode 100644 bolt/test/runtime/X86/instrumentation-shlib.c create mode 100644 bolt/test/runtime/X86/internal-call-instrument.test create mode 100644 bolt/test/runtime/X86/internal-call.test create mode 100644 bolt/test/runtime/X86/interp-overwrite-bug.s create mode 100644 bolt/test/runtime/X86/lit.local.cfg create mode 100644 bolt/test/runtime/X86/retpoline-synthetic.test create mode 100755 bolt/test/runtime/X86/section-reloc-with-addend.s create mode 100755 bolt/test/runtime/X86/shrinkwrapping-alignment.s create mode 100755 bolt/test/runtime/X86/shrinkwrapping-lock.s create mode 100755 bolt/test/runtime/X86/shrinkwrapping-pushpop.s create mode 100644 bolt/test/runtime/X86/tail-duplication-constant-prop.s create mode 100644 bolt/test/runtime/X86/three-way-branch-pass.s create mode 100644 bolt/test/runtime/X86/user-func-reorder.c create mode 100644 bolt/test/runtime/fptr.test create mode 100644 bolt/test/runtime/lit.local.cfg create mode 100644 bolt/test/runtime/meta-merge-fdata.test create mode 100644 bolt/tools/CMakeLists.txt create mode 100644 bolt/tools/driver/CMakeLists.txt create mode 100644 bolt/tools/driver/llvm-bolt.cpp create mode 100644 bolt/tools/merge-fdata/CMakeLists.txt create mode 100644 bolt/tools/merge-fdata/merge-fdata.cpp create mode 100755 bolt/utils/bughunter.sh create mode 100644 bolt/utils/docker/Dockerfile create mode 100644 clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.cpp create mode 100644 clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.h create mode 100644 clang-tools-extra/clangd/test/type-definition.test create mode 100644 clang-tools-extra/docs/clang-tidy/checks/misc-misleading-bidire [...] create mode 100644 clang-tools-extra/test/clang-tidy/checkers/misc-misleading-bidi [...] delete mode 100644 clang/lib/Frontend/InitHeaderSearch.cpp create mode 100644 clang/lib/Lex/InitHeaderSearch.cpp create mode 100644 clang/test/CodeGen/RISCV/rvb-intrinsics/riscv32-zbf.c create mode 100644 clang/test/CodeGen/RISCV/rvb-intrinsics/riscv64-zbf.c create mode 100644 clang/test/CodeGen/attr-cpuspecific-renaming.cpp create mode 100644 clang/test/CodeGen/avr/functionptr-addrspace.c create mode 100644 clang/test/CodeGen/msan-param-retval.c delete mode 100644 clang/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu create mode 100644 clang/test/CodeGenCoroutines/coro-elide.cpp create mode 100644 clang/test/CodeGenCoroutines/coro-symmetric-transfer-03.cpp create mode 100644 clang/test/CodeGenSYCL/functionptr-addrspace.cpp create mode 100644 clang/test/Driver/aarch64-hbc.c delete mode 100644 clang/test/Driver/aarch64-perfmon.c delete mode 100644 clang/test/Driver/arm-perfmon.c create mode 100644 clang/test/Driver/fsanitize-memory-param-retval.c create mode 100644 clang/test/Headers/stdint.c create mode 100644 clang/test/Modules/Inputs/template_name_lookup/foo.cppm create mode 100644 clang/test/Modules/export-in-non-modules.cpp create mode 100644 clang/test/Modules/template_name_lookup.cpp create mode 100644 clang/test/OpenMP/declare_variant_clauses_ast_print.c create mode 100644 clang/test/OpenMP/metadirective_device_isa_codegen.cpp create mode 100644 clang/test/OpenMP/metadirective_device_isa_codegen_amdgcn.cpp create mode 100644 clang/test/Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json create mode 100644 clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json create mode 100644 clang/test/Sema/warn-mixed-decls.c create mode 100644 clang/test/SemaCXX/lookup-template-name-extern-CXX.cpp create mode 100644 clang/test/SemaCXX/lookup-through-export.cpp create mode 100644 clang/test/SemaCXX/pr31042.cpp create mode 100644 clang/test/SemaObjC/class-property-inheritance.m create mode 100644 clang/test/Tooling/clang-check-analyze-save-temps.cpp delete mode 100644 cmake/README.md create mode 100644 cmake/README.rst create mode 100644 flang/test/Evaluate/fold-substr.f90 create mode 100644 flang/test/Evaluate/rewrite01.f90 create mode 100644 flang/test/Preprocessing/pp045.F create mode 100644 flang/test/Preprocessing/pp131.F90 create mode 100644 flang/test/Semantics/data14.f90 create mode 100644 flang/test/Semantics/data15.f90 create mode 100644 flang/test/Semantics/modfile42.f90 create mode 100644 flang/test/Semantics/resolve107.f90 create mode 100644 flang/test/Semantics/struct01.f90 create mode 100644 libc/src/__support/OSUtil/linux/aarch64/CMakeLists.txt create mode 100644 libc/src/__support/OSUtil/linux/aarch64/syscall.h create mode 100644 libc/src/math/generic/common_constants.cpp create mode 100644 libc/src/math/generic/common_constants.h create mode 100644 libc/src/math/generic/log2f.cpp create mode 100644 libc/src/math/log2f.h create mode 100644 libc/test/src/math/differential_testing/log2f_diff.cpp create mode 100644 libc/test/src/math/differential_testing/log2f_perf.cpp create mode 100644 libc/test/src/math/exhaustive/exhaustive_test.cpp create mode 100644 libc/test/src/math/exhaustive/exhaustive_test.h create mode 100644 libc/test/src/math/exhaustive/log2f_test.cpp create mode 100644 libc/test/src/math/log2f_test.cpp create mode 120000 libclc/clspv64 create mode 100644 libcxx/docs/Status/Zip.rst create mode 100644 libcxx/docs/Status/ZipProjects.csv create mode 100644 libcxx/include/__algorithm/in_in_result.h create mode 100644 libcxx/include/__algorithm/in_out_result.h create mode 100644 libcxx/include/__chrono/calendar.h create mode 100644 libcxx/include/__chrono/duration.h create mode 100644 libcxx/include/__chrono/file_clock.h create mode 100644 libcxx/include/__chrono/high_resolution_clock.h create mode 100644 libcxx/include/__chrono/steady_clock.h create mode 100644 libcxx/include/__chrono/system_clock.h create mode 100644 libcxx/include/__chrono/time_point.h create mode 100644 libcxx/include/__memory/ranges_construct_at.h create mode 100644 libcxx/include/__ranges/owning_view.h create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/algorithm/in_in_r [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/algorithm/in_out_ [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/calendar.m [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/duration.m [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/file_clock [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/high_resol [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/steady_clo [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/system_clo [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/chrono/time_point [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/memory/ranges_con [...] create mode 100644 libcxx/test/libcxx/diagnostics/detail.headers/ranges/owning_vie [...] create mode 100644 libcxx/test/libcxx/lint/lint_cmakelists.sh.py create mode 100644 libcxx/test/libcxx/lint/lint_headers.sh.py create mode 100644 libcxx/test/libcxx/lint/lint_modulemap.sh.py create mode 100644 libcxx/test/libcxx/lint/lit.local.cfg create mode 100644 libcxx/test/libcxx/nasty_macros.compile.pass.cpp create mode 100644 libcxx/test/std/algorithms/algorithms.results/in_in_result.pass.cpp create mode 100644 libcxx/test/std/algorithms/algorithms.results/in_out_result.com [...] create mode 100644 libcxx/test/std/algorithms/algorithms.results/in_out_result.pass.cpp create mode 100644 libcxx/test/std/algorithms/algorithms.results/no_unique_address [...] create mode 100644 libcxx/test/std/input.output/filesystems/class.directory_entry/ [...] create mode 100644 libcxx/test/std/iterators/iterator.primitives/range.iter.ops/types.h delete mode 100644 libcxx/test/std/iterators/iterator.requirements/iterator.cust/i [...] create mode 100644 libcxx/test/std/iterators/iterator.requirements/iterator.cust/i [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.all/range.owning.vi [...] create mode 100644 libcxx/test/std/ranges/range.adaptors/range.reverse/ctad.compil [...] delete mode 100644 libcxx/test/std/ranges/range.adaptors/range.reverse/ctad.pass.cpp create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/special [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/special [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/special [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/special [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/uniniti [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/uniniti [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/uniniti [...] create mode 100644 libcxx/test/std/utilities/memory/specialized.algorithms/uniniti [...] delete mode 100644 libcxx/test/support/nasty_macros.h create mode 100644 lld/MachO/CallGraphSort.cpp create mode 100644 lld/MachO/CallGraphSort.h create mode 100644 lld/test/ELF/debug-dead-reloc-relocatable.s create mode 100644 lld/test/ELF/linkerscript/plugin.test create mode 100644 lld/test/MachO/cgprofile-icf.s create mode 100644 lld/test/MachO/cgprofile-obj.s create mode 100644 lld/test/MachO/cgprofile-print.s create mode 100644 lldb/test/API/iohandler/sigint/TestIOHandlerPythonREPLSigint.py copy lldb/test/API/{commands/expression/dollar-in-variable => linux/aarch64/tagged [...] create mode 100644 lldb/test/API/linux/aarch64/tagged_memory_read/TestAArch64Linux [...] create mode 100644 lldb/test/API/linux/aarch64/tagged_memory_read/main.c create mode 100644 lldb/test/Shell/SymbolFile/NativePDB/Inputs/inline_sites.lldbinit create mode 100644 lldb/test/Shell/SymbolFile/NativePDB/inline_sites.s delete mode 100644 lldb/tools/lldb-instr/CMakeLists.txt delete mode 100644 lldb/tools/lldb-instr/Instrument.cpp create mode 100644 llvm/include/llvm/Analysis/InstSimplifyFolder.h create mode 100644 llvm/lib/Target/CSKY/CSKYConstantIslandPass.cpp create mode 100644 llvm/lib/Target/X86/MCA/CMakeLists.txt create mode 100644 llvm/lib/Target/X86/MCA/X86CustomBehaviour.cpp create mode 100644 llvm/lib/Target/X86/MCA/X86CustomBehaviour.h create mode 100644 llvm/test/Analysis/CostModel/AArch64/load-to-trunc.ll create mode 100644 llvm/test/Analysis/CostModel/AArch64/sve-insert-extract.ll create mode 100644 llvm/test/Analysis/CostModel/AMDGPU/load-to-trunc.ll create mode 100644 llvm/test/Analysis/CostModel/ARM/load-to-trunc.ll create mode 100644 llvm/test/Analysis/CostModel/PowerPC/load-to-trunc.ll create mode 100644 llvm/test/Analysis/CostModel/RISCV/load-to-trunc.ll create mode 100644 llvm/test/Analysis/CostModel/SystemZ/load-to-trunc.ll create mode 100644 llvm/test/Analysis/CostModel/X86/load-to-trunc.ll create mode 100644 llvm/test/CodeGen/AArch64/aarch64-isel-csinc-type.ll create mode 100644 llvm/test/CodeGen/AArch64/aarch64-isel-csinc.ll create mode 100644 llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-unmerge-values.mir create mode 100644 llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll create mode 100644 llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll create mode 100644 llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll create mode 100644 llvm/test/CodeGen/AMDGPU/GlobalISel/localizer-wrong-insert-point.mir create mode 100644 llvm/test/CodeGen/AMDGPU/addrspacecast-known-non-null.ll create mode 100644 llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll create mode 100644 llvm/test/CodeGen/AMDGPU/loop-on-function-argument.ll delete mode 100644 llvm/test/CodeGen/AMDGPU/reserve-vgpr-for-sgpr-spill.ll create mode 100644 llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll create mode 100644 llvm/test/CodeGen/ARM/fast-call-frame-restore.ll create mode 100644 llvm/test/CodeGen/Hexagon/addrmode-opt-assert.mir create mode 100644 llvm/test/CodeGen/NVPTX/convert-sm80.ll create mode 100644 llvm/test/CodeGen/NVPTX/fminimum-fmaximum.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-20.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-21.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-30.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-32.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-35.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-37.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-50.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-52.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-53.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-60.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-61.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-62.ll delete mode 100644 llvm/test/CodeGen/NVPTX/sm-version-70.ll create mode 100644 llvm/test/CodeGen/NVPTX/sm-version.ll create mode 100644 llvm/test/CodeGen/RISCV/and.ll create mode 100644 llvm/test/CodeGen/RISCV/div-pow2.ll create mode 100644 llvm/test/CodeGen/RISCV/double-fcmp-strict.ll create mode 100644 llvm/test/CodeGen/RISCV/double-round-conv.ll create mode 100644 llvm/test/CodeGen/RISCV/float-fcmp-strict.ll create mode 100644 llvm/test/CodeGen/RISCV/float-round-conv.ll create mode 100644 llvm/test/CodeGen/RISCV/half-fcmp-strict.ll create mode 100644 llvm/test/CodeGen/RISCV/half-round-conv.ll create mode 100644 llvm/test/CodeGen/RISCV/inline-asm-zfh-constraint-f.ll create mode 100644 llvm/test/CodeGen/RISCV/rv32zbf-intrinsic.ll create mode 100644 llvm/test/CodeGen/RISCV/rv64zbf-intrinsic.ll create mode 100644 llvm/test/CodeGen/X86/asm-block-labels2.ll create mode 100644 llvm/test/CodeGen/X86/long-double-abi-align.ll create mode 100644 llvm/test/CodeGen/X86/peep-test-5.ll create mode 100644 llvm/test/CodeGen/X86/xop-shifts.ll create mode 100644 llvm/test/ExecutionEngine/JITLink/AArch64/MachO_arm64_ehframe.s create mode 100644 llvm/test/ExecutionEngine/JITLink/AArch64/MachO_arm64_stub_to_g [...] create mode 100644 llvm/test/ExecutionEngine/JITLink/RISCV/ELF_branch.s create mode 100644 llvm/test/ExecutionEngine/RuntimeDyld/AArch64/ELF_ARM64_NONE.yaml create mode 100644 llvm/test/Instrumentation/MemorySanitizer/byval.ll create mode 100644 llvm/test/MC/MachO/cgprofile.ll create mode 100644 llvm/test/MC/MachO/cgprofile.s create mode 100644 llvm/test/MC/RISCV/hypervisor-csr-names.s create mode 100644 llvm/test/MC/RISCV/rv32-hypervisor-csr-names.s create mode 100644 llvm/test/MC/RISCV/rv32-only-csr-names.s delete mode 100644 llvm/test/MC/RISCV/user-csr-names-invalid.s create mode 100644 llvm/test/Transforms/GlobalOpt/evaluate-load-uniform.ll create mode 100644 llvm/test/Transforms/GlobalOpt/globalsra-generic-type.ll create mode 100644 llvm/test/Transforms/GlobalOpt/malloc-promote-5.ll create mode 100644 llvm/test/Transforms/GlobalOpt/shrink-global-to-bool-opaque-ptrs.ll create mode 100644 llvm/test/Transforms/GlobalOpt/stored-once-different-type.ll create mode 100644 llvm/test/Transforms/GlobalOpt/stored-once-through-gep.ll create mode 100644 llvm/test/Transforms/Inline/delete-function-with-metadata-use.ll create mode 100644 llvm/test/Transforms/Inline/delete-unused-function.ll delete mode 100644 llvm/test/Transforms/Inline/inline_nossp.ll create mode 100644 llvm/test/Transforms/InstCombine/AArch64/demandelts.ll create mode 100644 llvm/test/Transforms/InstCombine/binop-phi-operands.ll create mode 100644 llvm/test/Transforms/JumpThreading/indirectbr-cast-int-op.ll create mode 100644 llvm/test/Transforms/LoopInterchange/interchangeable-innerloop- [...] create mode 100644 llvm/test/Transforms/LoopInterchange/interchangeable-outerloop- [...] delete mode 100644 llvm/test/Transforms/LoopStrengthReduce/address-space-loop.ll create mode 100644 llvm/test/Transforms/LoopVectorize/induction-ptrcasts.ll create mode 100644 llvm/test/Transforms/LoopVersioning/bound-check-partially-known.ll create mode 100644 llvm/test/Transforms/SROA/phi-catchswitch.ll create mode 100644 llvm/test/Transforms/SimplifyCFG/X86/sink-common-code-into-unre [...] create mode 100644 llvm/test/Verifier/invalid-cleanuppad-chain.ll create mode 100644 llvm/test/Verifier/invalid-splice.ll create mode 100644 llvm/test/tools/llvm-ar/plugin.test create mode 100644 llvm/test/tools/llvm-mca/X86/barrier_output.s create mode 100644 llvm/test/tools/llvm-nm/XCOFF/basic.test create mode 100644 llvm/test/tools/llvm-nm/XCOFF/basic_64.test create mode 100644 llvm/test/tools/llvm-nm/XCOFF/demangle.test create mode 100644 llvm/test/tools/llvm-nm/XCOFF/invalid-section-index.test create mode 100644 llvm/test/tools/llvm-nm/XCOFF/size.test create mode 100644 llvm/test/tools/llvm-objdump/ELF/RISCV/branches.s delete mode 100644 llvm/test/tools/llvm-readobj/XCOFF/Inputs/file-aux-wrong64.o delete mode 100644 llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol.o delete mode 100644 llvm/test/tools/llvm-readobj/XCOFF/Inputs/symbol64.o delete mode 100644 llvm/test/tools/llvm-readobj/XCOFF/file-aux-wrong64.test create mode 100644 llvm/test/tools/llvm-readobj/XCOFF/symbols-invalid.test create mode 100644 llvm/utils/gn/secondary/llvm/lib/Target/X86/MCA/BUILD.gn create mode 100644 mlir/include/mlir-c/Dialect/PDL.h delete mode 100644 mlir/include/mlir/Analysis/NumberOfExecutions.h create mode 100644 mlir/include/mlir/Dialect/Linalg/ComprehensiveBufferize/StdInte [...] create mode 100644 mlir/include/mlir/Dialect/Tosa/Utils/CoversionUtils.h delete mode 100644 mlir/include/mlir/IR/Identifier.h delete mode 100644 mlir/lib/Analysis/NumberOfExecutions.cpp create mode 100644 mlir/lib/CAPI/Dialect/PDL.cpp create mode 100644 mlir/lib/Dialect/Linalg/ComprehensiveBufferize/StdInterfaceImpl.cpp create mode 100644 mlir/lib/Dialect/Linalg/Transforms/PadOpInterchange.cpp create mode 100644 mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeConv2D.cpp create mode 100644 mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp delete mode 100644 mlir/lib/Dialect/Tosa/Transforms/TosaOptimization.cpp create mode 100644 mlir/lib/Dialect/Tosa/Transforms/TosaOptionalDecompositions.cpp create mode 100644 mlir/lib/Dialect/Tosa/Utils/ConversionUtils.cpp create mode 100644 mlir/lib/IR/BuiltinTypeInterfaces.cpp delete mode 100644 mlir/test/Analysis/test-number-of-block-executions.mlir delete mode 100644 mlir/test/Analysis/test-number-of-operation-executions.mlir create mode 100644 mlir/test/CAPI/pdl.c create mode 100644 mlir/test/Dialect/Linalg/comprehensive-function-bufferize-compat.mlir create mode 100644 mlir/test/Dialect/Linalg/pad_fusion.mlir create mode 100644 mlir/test/Dialect/Math/canonicalize.mlir delete mode 100644 mlir/test/Dialect/Tosa/operation_optimization.mlir create mode 100644 mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir create mode 100644 mlir/test/Dialect/Tosa/tosa-decompose-depthwise.mlir create mode 100644 mlir/test/IR/generic-visitors-interrupt.mlir create mode 100644 mlir/test/IR/generic-visitors.mlir create mode 100644 mlir/test/Integration/Dialect/Memref/memref_abi.c delete mode 100644 mlir/test/lib/Analysis/TestNumberOfExecutions.cpp create mode 100644 mlir/test/lib/Dialect/Linalg/TestPadFusion.cpp create mode 100644 mlir/test/lib/IR/TestVisitorsGeneric.cpp delete mode 100644 mlir/unittests/Dialect/SCF/CMakeLists.txt delete mode 100644 mlir/unittests/Dialect/SCF/SCFOps.cpp create mode 100644 mlir/unittests/Pass/PassPipelineParserTest.cpp