]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
authorDimitry Andric <dim@FreeBSD.org>
Fri, 24 Jul 2020 20:48:06 +0000 (20:48 +0000)
committerDimitry Andric <dim@FreeBSD.org>
Fri, 24 Jul 2020 20:48:06 +0000 (20:48 +0000)
commit15b5a0cbe480603076cf0a8dda610981540b9539
treedd33d79ed0656bbb449941e04106d3b63078ab6e
parenta42deb6a029c07be1e1fcfc4ece15c3f003a9c5c
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
10.0.1 final (aka llvmorg-10.0.1-0-gef32c611aa2).

MFC r359582 (by emaste):

lldb: use lua as the default script language

In the FreeBSD base system we do not have Python support in lldb, but
will have Lua support.  Make Lua the default.

This needs to be made into a configure-time option; that is being
discussed upstream and will appear in a future lldb import.  For now
carry this change as a tiny patch to our copy of lldb.

MFC r359599 (by emaste):

lldb: add rule to generate LLDBWrapLua.cpp

Building lldb's lua/python bindings requires swig, but we do not want to
include it in the FreeBSD base system (as a build tool) because it has
non-trivial dependencies.  As a workaround, add a make rule to generate
LLDBWrapLua.cpp, and we will commit the generated file.

Requires the swig30 package.

Reviewed by: brooks
Discussed with: dim
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D24265

MFC r359600 (by emaste):

lldb: commit generated LLDBWrapLua.cpp

MFC r359606 (by emaste):

lldb: build and enable lua script bindings

Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D24266

MFC r360697:

In r358396 I merged llvm upstream commit 2e24219d3, which fixed "error:
unsupported relocation on symbol" when assembling arm 'adr' pseudo
instructions. However, the upstream commit did not take big-endian arm
into account.

Applying the same changes to the big-endian handling is straightforward,
thanks to Andrew Turner and Peter Smith for the hint. This will also be
submitted upstream.

MFC r360702:

Merge commit 4ca2cad94 from llvm git (by Justin Hibbits):

  [PowerPC] Add clang -msvr4-struct-return for 32-bit ELF

  Summary:

  Change the default ABI to be compatible with GCC. For 32-bit ELF
  targets other than Linux, Clang now returns small structs in
  registers r3/r4. This affects FreeBSD, NetBSD, OpenBSD. There is no
  change for 32-bit Linux, where Clang continues to return all structs
  in memory.

  Add clang options -maix-struct-return (to return structs in memory)
  and -msvr4-struct-return (to return structs in registers) to be
  compatible with gcc. These options are only for PPC32; reject them on
  PPC64 and other targets. The options are like -fpcc-struct-return and
  -freg-struct-return for X86_32, and use similar code.

  To actually return a struct in registers, coerce it to an integer of
  the same size. LLVM may optimize the code to remove unnecessary
  accesses to memory, and will return i32 in r3 or i64 in r3:r4.

  Fixes PR#40736

  Patch by George Koehler!

  Reviewed By: jhibbits, nemanjai
  Differential Revision: https://reviews.llvm.org/D73290

Requested by: jhibbits

MFC r361410:

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
llvmorg-10.0.1-rc1-0-gf79cd71e145 (aka 10.0.1 rc1).

MFC r362235 (by kp):

llvm: Default to -mno-relax on RISC-V

Compiling on a RISC-V system fails with 'relocation R_RISCV_ALIGN
requires unimplemented linker relaxation; recompile with -mno-relax'.

Our default linker (ld.lld) doesn't support relaxation, so default to
no-relax so we don't generate object files the linker can't handle.

Reviewed by: mhorne
Sponsored by: Axiado
Differential Revision: https://reviews.freebsd.org/D25210

MFC r362445:

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
llvmorg-10.0.0-97-g6f71678ecd2 (not quite 10.0.1 rc2, as more fixes are
still pending).

MFC r362587 (by cem):

Add WITH_CLANG_FORMAT option

clang-format is enabled conditional on either WITH_CLANG_EXTRAS or
WITH_CLANG_FORMAT.  Some sources in libclang are build conditional on
either rule, and obviously the clang-format binary itself depends on the
rule.

clang-format could still use a manual page.

Reviewed by: emaste
Differential Revision: https://reviews.freebsd.org/D25427

MFC r362609:

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
llvmorg-10.0.0-129-gd24d5c8e308. Getting closer to 10.0.1-rc2.

MFC r362679:

Regenerate ReStructuredText based manpages for llvm-project tools:

* bugpoint.1
* clang.1
* llc.1
* lldb.1
* lli.1
* llvm-ar.1
* llvm-as.1
* llvm-bcanalyzer.1
* llvm-cov.1
* llvm-diff.1
* llvm-dis.1
* llvm-dwarfdump.1
* llvm-extract.1
* llvm-link.1
* llvm-mca.1
* llvm-nm.1
* llvm-pdbutil.1
* llvm-profdata.1
* llvm-symbolizer.1
* llvm-tblgen.1
* opt.1

Add newly generated manpages for:

* llvm-addr2line.1 (this is an alias of llvm-symbolizer)
* llvm-cxxfilt.1
* llvm-objcopy.1
* llvm-ranlib.1 (this is an alias of llvm-ar)

Note that llvm-objdump.1 is an exception, as upstream has both a plain
.1 file, and a .rst variant. These will have to be reconciled upstream
first.

MFC r362680:

Follow-up to r362679, add more entries to OptionalObsoleteFiles.inc

MFC r362719:

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
llvmorg-10.0.1-rc2-0-g77d76b71d7d.

Also add a few more llvm utilities under WITH_CLANG_EXTRAS:

* llvm-dwp, a utility for merging DWARF 5 Split DWARF .dwo files into
  .dwp (DWARF package files)
* llvm-size, a size(1) replacement
* llvm-strings, a strings(1) replacement

MFC r362733:

Remove older llvm-ranlib.1 entry from ObsoleteFiles.inc, as it has
gotten its own manpage now, and should be no longer be removed by "make
delete-old".

MFC r362734:

Fix llvm-strings.1 not installing, this was a copy/paste error.

MFC r363401:

Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
10.0.1 final (aka llvmorg-10.0.1-0-gef32c611aa2).

There were no changes since rc2, except in the upstream regression
tests, which we do not ship.

Relnotes: yes
209 files changed:
Makefile.inc1
ObsoleteFiles.inc
UPDATING
contrib/llvm-project/FREEBSD-Xlist
contrib/llvm-project/clang/include/clang/AST/DeclBase.h
contrib/llvm-project/clang/include/clang/Basic/Attr.td
contrib/llvm-project/clang/include/clang/Driver/Options.td
contrib/llvm-project/clang/lib/AST/DeclBase.cpp
contrib/llvm-project/clang/lib/AST/ExprConstant.cpp
contrib/llvm-project/clang/lib/AST/RawCommentList.cpp
contrib/llvm-project/clang/lib/Basic/Targets/PPC.h
contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp
contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp
contrib/llvm-project/clang/lib/Driver/SanitizerArgs.cpp
contrib/llvm-project/clang/lib/Driver/ToolChain.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/RISCV.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/X86.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Darwin.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.h
contrib/llvm-project/clang/lib/Driver/ToolChains/Hurd.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Hurd.h
contrib/llvm-project/clang/lib/Driver/ToolChains/Linux.cpp
contrib/llvm-project/clang/lib/Driver/ToolChains/Linux.h
contrib/llvm-project/clang/lib/Format/TokenAnnotator.cpp
contrib/llvm-project/clang/lib/Frontend/CompilerInvocation.cpp
contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp
contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiate.cpp
contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
contrib/llvm-project/clang/lib/Sema/TreeTransform.h
contrib/llvm-project/clang/lib/Tooling/Syntax/Tokens.cpp
contrib/llvm-project/clang/utils/TableGen/ClangAttrEmitter.cpp
contrib/llvm-project/compiler-rt/lib/builtins/riscv/int_mul_impl.inc [new file with mode: 0644]
contrib/llvm-project/compiler-rt/lib/builtins/riscv/muldi3.S [new file with mode: 0644]
contrib/llvm-project/compiler-rt/lib/builtins/riscv/mulsi3.S
contrib/llvm-project/compiler-rt/lib/profile/GCDAProfiling.c
contrib/llvm-project/libcxx/include/array
contrib/llvm-project/lld/COFF/Chunks.h
contrib/llvm-project/lld/COFF/DLL.cpp
contrib/llvm-project/lld/COFF/MarkLive.cpp
contrib/llvm-project/lld/ELF/Driver.cpp
contrib/llvm-project/lld/ELF/InputSection.cpp
contrib/llvm-project/lld/ELF/InputSection.h
contrib/llvm-project/lld/ELF/OutputSections.cpp
contrib/llvm-project/lld/ELF/ScriptLexer.cpp
contrib/llvm-project/lld/ELF/ScriptParser.cpp
contrib/llvm-project/lld/ELF/Writer.cpp
contrib/llvm-project/lldb/include/lldb/lldb-enumerations.h
contrib/llvm-project/lldb/source/Core/CoreProperties.td
contrib/llvm-project/llvm/include/llvm/Analysis/ValueLattice.h
contrib/llvm-project/llvm/include/llvm/CodeGen/RDFGraph.h [moved from contrib/llvm-project/llvm/lib/Target/Hexagon/RDFGraph.h with 100% similarity]
contrib/llvm-project/llvm/include/llvm/CodeGen/RDFLiveness.h [moved from contrib/llvm-project/llvm/lib/Target/Hexagon/RDFLiveness.h with 100% similarity]
contrib/llvm-project/llvm/include/llvm/CodeGen/RDFRegisters.h [moved from contrib/llvm-project/llvm/lib/Target/Hexagon/RDFRegisters.h with 100% similarity]
contrib/llvm-project/llvm/include/llvm/DebugInfo/CodeView/GlobalTypeTableBuilder.h
contrib/llvm-project/llvm/include/llvm/IR/IntrinsicsPowerPC.td
contrib/llvm-project/llvm/include/llvm/Support/AArch64TargetParser.def
contrib/llvm-project/llvm/include/llvm/Support/ManagedStatic.h
contrib/llvm-project/llvm/include/llvm/Target/TargetSelectionDAG.td
contrib/llvm-project/llvm/lib/Analysis/LazyValueInfo.cpp
contrib/llvm-project/llvm/lib/Analysis/ValueLattice.cpp
contrib/llvm-project/llvm/lib/CodeGen/BranchFolding.cpp
contrib/llvm-project/llvm/lib/CodeGen/MachineSink.cpp
contrib/llvm-project/llvm/lib/CodeGen/RDFGraph.cpp [moved from contrib/llvm-project/llvm/lib/Target/Hexagon/RDFGraph.cpp with 99% similarity]
contrib/llvm-project/llvm/lib/CodeGen/RDFLiveness.cpp [moved from contrib/llvm-project/llvm/lib/Target/Hexagon/RDFLiveness.cpp with 99% similarity]
contrib/llvm-project/llvm/lib/CodeGen/RDFRegisters.cpp [moved from contrib/llvm-project/llvm/lib/Target/Hexagon/RDFRegisters.cpp with 99% similarity]
contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
contrib/llvm-project/llvm/lib/DebugInfo/CodeView/MergingTypeTableBuilder.cpp
contrib/llvm-project/llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp
contrib/llvm-project/llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
contrib/llvm-project/llvm/lib/LTO/LTO.cpp
contrib/llvm-project/llvm/lib/MC/MCObjectFileInfo.cpp
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64BranchTargets.cpp
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedA53.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedA57.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedCyclone.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedExynosM4.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedExynosM5.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedFalkor.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedKryo.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedThunderX.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedThunderX2T99.td
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64SchedThunderX3T110.td [new file with mode: 0644]
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64Subtarget.cpp
contrib/llvm-project/llvm/lib/Target/AArch64/AArch64Subtarget.h
contrib/llvm-project/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
contrib/llvm-project/llvm/lib/Target/BPF/BPFISelDAGToDAG.cpp
contrib/llvm-project/llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
contrib/llvm-project/llvm/lib/Target/BPF/BTFDebug.cpp
contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
contrib/llvm-project/llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp
contrib/llvm-project/llvm/lib/Target/Hexagon/RDFCopy.cpp
contrib/llvm-project/llvm/lib/Target/Hexagon/RDFCopy.h
contrib/llvm-project/llvm/lib/Target/Hexagon/RDFDeadCode.cpp
contrib/llvm-project/llvm/lib/Target/Hexagon/RDFDeadCode.h
contrib/llvm-project/llvm/lib/Target/PowerPC/P9InstrResources.td
contrib/llvm-project/llvm/lib/Target/PowerPC/PPC.td
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCISelLowering.h
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCInstrAltivec.td
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCInstrVSX.td
contrib/llvm-project/llvm/lib/Target/PowerPC/PPCSubtarget.h
contrib/llvm-project/llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
contrib/llvm-project/llvm/lib/Target/RISCV/RISCVISelLowering.cpp
contrib/llvm-project/llvm/lib/Target/X86/ImmutableGraph.h [new file with mode: 0644]
contrib/llvm-project/llvm/lib/Target/X86/X86.h
contrib/llvm-project/llvm/lib/Target/X86/X86.td
contrib/llvm-project/llvm/lib/Target/X86/X86AsmPrinter.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86FastISel.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86FrameLowering.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86ISelLowering.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86ISelLowering.h
contrib/llvm-project/llvm/lib/Target/X86/X86IndirectBranchTracking.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86IndirectThunks.cpp [new file with mode: 0644]
contrib/llvm-project/llvm/lib/Target/X86/X86InstrCompiler.td
contrib/llvm-project/llvm/lib/Target/X86/X86InstrControl.td
contrib/llvm-project/llvm/lib/Target/X86/X86InstrInfo.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86InstrInfo.td
contrib/llvm-project/llvm/lib/Target/X86/X86LoadValueInjectionLoadHardening.cpp [new file with mode: 0644]
contrib/llvm-project/llvm/lib/Target/X86/X86LoadValueInjectionRetHardening.cpp [new file with mode: 0644]
contrib/llvm-project/llvm/lib/Target/X86/X86MCInstLower.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86RetpolineThunks.cpp [deleted file]
contrib/llvm-project/llvm/lib/Target/X86/X86Subtarget.h
contrib/llvm-project/llvm/lib/Target/X86/X86TargetMachine.cpp
contrib/llvm-project/llvm/lib/Target/X86/X86TargetMachine.h
contrib/llvm-project/llvm/lib/Transforms/Coroutines/CoroSplit.cpp
contrib/llvm-project/llvm/lib/Transforms/IPO/GlobalOpt.cpp
contrib/llvm-project/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
contrib/llvm-project/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
contrib/llvm-project/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
contrib/llvm-project/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
contrib/llvm-project/llvm/lib/Transforms/Utils/ValueMapper.cpp
contrib/llvm-project/llvm/tools/llvm-dwp/DWPError.cpp [new file with mode: 0644]
contrib/llvm-project/llvm/tools/llvm-dwp/DWPError.h [new file with mode: 0644]
contrib/llvm-project/llvm/tools/llvm-dwp/DWPStringPool.h [new file with mode: 0644]
contrib/llvm-project/llvm/tools/llvm-dwp/llvm-dwp.cpp [new file with mode: 0644]
contrib/llvm-project/llvm/tools/llvm-objcopy/ELF/Object.cpp
contrib/llvm-project/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
contrib/llvm-project/llvm/tools/llvm-size/llvm-size.cpp [new file with mode: 0644]
contrib/llvm-project/llvm/tools/llvm-strings/llvm-strings.cpp [new file with mode: 0644]
etc/mtree/BSD.debug.dist
etc/mtree/BSD.usr.dist
lib/clang/freebsd_cc_version.h
lib/clang/headers/Makefile
lib/clang/include/VCSVersion.inc
lib/clang/include/clang/Basic/Version.inc
lib/clang/include/clang/Config/config.h
lib/clang/include/lld/Common/Version.inc
lib/clang/include/lldb/Host/Config.h
lib/clang/include/llvm/Config/config.h
lib/clang/include/llvm/Config/llvm-config.h
lib/clang/include/llvm/Support/VCSRevision.h
lib/clang/libclang/Makefile
lib/clang/liblldb/LLDBWrapLua.cpp [new file with mode: 0644]
lib/clang/liblldb/Makefile
lib/clang/libllvm/Makefile
lib/libclang_rt/Makefile.inc
share/mk/src.opts.mk
sys/sys/param.h
targets/pseudo/bootstrap-tools/Makefile
targets/pseudo/clang/Makefile.depend
tools/build/mk/OptionalObsoleteFiles.inc
tools/build/options/WITH_CLANG_FORMAT [new file with mode: 0644]
usr.bin/clang/Makefile
usr.bin/clang/bugpoint/bugpoint.1
usr.bin/clang/clang/clang.1
usr.bin/clang/llc/llc.1
usr.bin/clang/lldb/Makefile
usr.bin/clang/lldb/lldb.1
usr.bin/clang/lli/lli.1
usr.bin/clang/llvm-ar/Makefile
usr.bin/clang/llvm-ar/llvm-ar.1
usr.bin/clang/llvm-ar/llvm-ranlib.1 [new file with mode: 0644]
usr.bin/clang/llvm-as/llvm-as.1
usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1
usr.bin/clang/llvm-cov/llvm-cov.1
usr.bin/clang/llvm-cxxfilt/Makefile
usr.bin/clang/llvm-cxxfilt/llvm-cxxfilt.1 [new file with mode: 0644]
usr.bin/clang/llvm-diff/llvm-diff.1
usr.bin/clang/llvm-dis/llvm-dis.1
usr.bin/clang/llvm-dwarfdump/llvm-dwarfdump.1
usr.bin/clang/llvm-dwp/Makefile [new file with mode: 0644]
usr.bin/clang/llvm-extract/llvm-extract.1
usr.bin/clang/llvm-link/llvm-link.1
usr.bin/clang/llvm-mca/llvm-mca.1
usr.bin/clang/llvm-nm/llvm-nm.1
usr.bin/clang/llvm-objcopy/Makefile
usr.bin/clang/llvm-objcopy/llvm-objcopy.1 [new file with mode: 0644]
usr.bin/clang/llvm-objdump/llvm-objdump.1
usr.bin/clang/llvm-pdbutil/llvm-pdbutil.1
usr.bin/clang/llvm-profdata/llvm-profdata.1
usr.bin/clang/llvm-size/Makefile [new file with mode: 0644]
usr.bin/clang/llvm-size/llvm-size.1 [new file with mode: 0644]
usr.bin/clang/llvm-strings/Makefile [new file with mode: 0644]
usr.bin/clang/llvm-strings/llvm-strings.1 [new file with mode: 0644]
usr.bin/clang/llvm-symbolizer/Makefile
usr.bin/clang/llvm-symbolizer/llvm-addr2line.1 [new file with mode: 0644]
usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1
usr.bin/clang/llvm-tblgen/llvm-tblgen.1
usr.bin/clang/opt/opt.1