Changes

Summary

  1. Revert "Revert "[libcxx][module-map] creates submodules for private headers"" (details)
  2. [M68k][GloballSel] Adding initial GlobalISel infrastructure (details)
  3. [llvm-objcopy] Make ihex writer similar to binary writer (details)
  4. [index] Fix performance regression with indexing macros (details)
Commit c5076d83716e8ce93cc76c9f4c3c1006de0be47f by cjdb
Revert "Revert "[libcxx][module-map] creates submodules for private headers""

This reverts commit d9633f229c36f292dab0e5f510ac635cfaf3a798 as a
workaround was discovered.

Differential Revision: https://reviews.llvm.org/D104170
The file was modifiedlibcxx/include/module.modulemap
The file was modifiedlibcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.next/special_function.compile.pass.cpp
The file was modifiedlibcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count.pass.cpp
The file was modifiedlibcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count_sentinel.pass.cpp
The file was modifiedlibcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/special_function.compile.pass.cpp
The file was modifiedlibcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_sentinel.pass.cpp
The file was modifiedlibcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.prev/special_function.compile.pass.cpp
Commit 2193347e72fad6a78ce4a96c8d89f9a43a028e79 by angandhi
[M68k][GloballSel] Adding initial GlobalISel infrastructure

Wiring up GlobalISel for the M68k backend

Differential Revision: https://reviews.llvm.org/D101819
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was addedllvm/lib/Target/M68k/GlSel/M68kCallLowering.h
The file was addedllvm/lib/Target/M68k/GlSel/M68kRegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/M68k/M68k.td
The file was addedllvm/lib/Target/M68k/GlSel/M68kRegisterBanks.td
The file was addedllvm/lib/Target/M68k/GlSel/M68kInstructionSelector.cpp
The file was addedllvm/lib/Target/M68k/GlSel/M68kLegalizerInfo.cpp
The file was modifiedllvm/lib/Target/M68k/CMakeLists.txt
The file was addedllvm/lib/Target/M68k/GlSel/M68kRegisterBankInfo.h
The file was modifiedllvm/lib/Target/M68k/M68kSubtarget.cpp
The file was modifiedllvm/lib/Target/M68k/M68kSubtarget.h
The file was modifiedllvm/lib/Target/M68k/M68k.h
The file was addedllvm/lib/Target/M68k/GlSel/M68kCallLowering.cpp
The file was addedllvm/test/CodeGen/M68k/GlobalISel/irtranslator-ret.ll
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
The file was addedllvm/lib/Target/M68k/GlSel/M68kLegalizerInfo.h
The file was modifiedllvm/lib/Target/M68k/M68kTargetMachine.cpp
Commit 1de18ad8d79eb328ad410fa60209e5dfa19752c8 by i
[llvm-objcopy] Make ihex writer similar to binary writer

There is no need to differentiate whether `UseSegments` is true or
false. Unifying the cases makes the behavior closer to BinaryWriter.

This improves compatibility with objcopy because SHF_ALLOC sections not in
a PT_LOAD will not be skipped. Such cases are usually erroneous input, though.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D104186
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/ihex-writer.test
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/Inputs/ihex-elf-segments.yaml
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
Commit 773ad55a393f368cc92b1611c52e493ed45a353f by blangmuir
[index] Fix performance regression with indexing macros

When using FileIndexRecord with macros, symbol references can be seen
out of source order, which was causing a regression to insert the
symbols into a vector. Instead, we now lazily sort the vector. The
impact is small on most code, but in very large files with many macro
references (M) near the beginning of the file followed by many decl
references (D) it was O(M*D). A particularly bad protobuf-generated
header was observed with a 100% regression in practice.

rdar://78628133
The file was modifiedclang/lib/Index/FileIndexRecord.h
The file was modifiedclang/lib/Index/FileIndexRecord.cpp