SuccessChanges

Summary

  1. [CommandObject] Remove unused function
  2. [X86] Add test cases for missed opportunities to use pack instructions for 512->256 truncates with prefer-vector-width=256 If the 512-bit vectors are going to be split anyway, then we are better off using pack to implicitly concatenate the 256 bit pieces.
  3. [Symbol] Remove commented out code from CompileUnit
  4. Revert r367501 "Create unique, but identically-named ELF sections..." This reverts commit fbc563e2cb6c5f1d0200b390513506b6aca4d2e9 "Create unique, but identically-named ELF sections for explicitly-sectioned functions and globals when using -function-sections and -data-sections." Reason for revert: sections are created with potentially wrong attributes.
  5. Add target requirements for those bots which don't handle x86.
  6. [NFC] Fixed newly added tests
  7. [NFC] Added tests for x/fabs(X) fold
  8. Add support for deterministically linked binaries on macOS to lldb. When ld64 links a binary deterministically using the flag ZERO_AR_DATE, it sets a timestamp of 0 for N_OSO members in the symtab section, rather than the usual last modified date of the object file. Prior to this patch, lldb would compare the timestamp from the N_OSO member against the last modified date of the object file, and skip loading the object file if there was a mismatch. This patch updates the logic to ignore the timestamp check if the N_OSO member has timestamp 0. The original logic was added in https://reviews.llvm.org/rL181631 as a safety check to avoid problems when debugging if the object file was out of date. This was prior to the introduction of deterministic build in ld64. lld still doesn't support deterministic build. Other code in llvm already relies on and uses the assumption that a timestamp of 0 means deterministic build. For example, commit 9ccfddc39d4d27f9b16fcc72ab30d483151d6d08 adds similar timestamp checking logic to dsymutil, but special cases timestamp 0. Likewise, commit 0d1bb79a0413f221432a7b1d0d2d10c84c4bbb99 adds a long comment describing deterministic archive, which mostly uses timestamp 0 for determinism. Patch from Erik Chen <erikchen@chromium.org>! Differential Revision: https://reviews.llvm.org/D65826
Revision 368208 by Jonas Devlieghere:
[CommandObject] Remove unused function
Change TypePath in RepositoryPath in Workspace
The file was modified/lldb/trunk/source/Commands/CommandObjectCommands.cpplldb.src/source/Commands/CommandObjectCommands.cpp
Revision 368207 by ctopper:
[X86] Add test cases for missed opportunities to use pack instructions for 512->256 truncates with prefer-vector-width=256

If the 512-bit vectors are going to be split anyway, then we are
better off using pack to implicitly concatenate the 256 bit pieces.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/CodeGen/X86/min-legal-vector-width.llllvm.src/test/CodeGen/X86/min-legal-vector-width.ll
Revision 368205 by xiaobai:
[Symbol] Remove commented out code from CompileUnit
Change TypePath in RepositoryPath in Workspace
The file was modified/lldb/trunk/source/Symbol/CompileUnit.cpplldb.src/source/Symbol/CompileUnit.cpp
Revision 368204 by inglorion:
Revert r367501 "Create unique, but identically-named ELF sections..."

This reverts commit fbc563e2cb6c5f1d0200b390513506b6aca4d2e9 "Create
unique, but identically-named ELF sections for explicitly-sectioned
functions and globals when using -function-sections and
-data-sections."

Reason for revert: sections are created with potentially wrong
attributes.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/TargetLoweringObjectFileImpl.cppllvm.src/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/elf-associated.llllvm.src/test/CodeGen/X86/elf-associated.ll
The file was removed/llvm/trunk/test/CodeGen/X86/explicit-elf-sections.llllvm.src/test/CodeGen/X86/explicit-elf-sections.ll
Revision 368202 by void:
Add target requirements for those bots which don't handle x86.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/CodeGen/pr41027.cclang.src/test/CodeGen/pr41027.c
Revision 368201 by xbolva00:
[NFC] Fixed newly added tests
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/Transforms/InstCombine/fabs-copysign.llllvm.src/test/Transforms/InstCombine/fabs-copysign.ll
Revision 368200 by xbolva00:
[NFC] Added tests for x/fabs(X) fold
Change TypePath in RepositoryPath in Workspace
The file was added/llvm/trunk/test/Transforms/InstCombine/fabs-copysign.llllvm.src/test/Transforms/InstCombine/fabs-copysign.ll
Revision 368199 by nico:
Add support for deterministically linked binaries on macOS to lldb.

When ld64 links a binary deterministically using the flag ZERO_AR_DATE,
it sets a timestamp of 0 for N_OSO members in the symtab section, rather
than the usual last modified date of the object file. Prior to this
patch, lldb would compare the timestamp from the N_OSO member against
the last modified date of the object file, and skip loading the object
file if there was a mismatch. This patch updates the logic to ignore the
timestamp check if the N_OSO member has timestamp 0.

The original logic was added in https://reviews.llvm.org/rL181631 as a
safety check to avoid problems when debugging if the object file was out
of date. This was prior to the introduction of deterministic build in
ld64. lld still doesn't support deterministic build.

Other code in llvm already relies on and uses the assumption that a
timestamp of 0 means deterministic build. For example, commit
9ccfddc39d4d27f9b16fcc72ab30d483151d6d08 adds similar timestamp checking
logic to dsymutil, but special cases timestamp 0. Likewise, commit
0d1bb79a0413f221432a7b1d0d2d10c84c4bbb99 adds a long comment describing
deterministic archive, which mostly uses timestamp 0 for determinism.

Patch from Erik Chen <erikchen@chromium.org>!

Differential Revision: https://reviews.llvm.org/D65826
Change TypePath in RepositoryPath in Workspace
The file was added/lldb/trunk/lit/SymbolFile/DWARF/deterministic-build.cpplldb.src/lit/SymbolFile/DWARF/deterministic-build.cpp
The file was modified/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpplldb.src/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp