FailedChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [CostModel][X86] Improve add vXi64 + fadd vXf64 reduction tests for SLM (details)
  2. [X86] Add 'mmx' to all CPUs that have a version of 'sse' and weren't (details)
  3. [X86] Add 'fxsr' feature to -march=pentium2 to match X86.td and gcc. (details)
  4. unwind: disable RTTI during the build of libunwind (details)
  5. [X86ISelLowering] Fixed typo in assert. NFCI. (details)
  6. [X86] Fix SLM v2f64 ADD/MUL + FP BLEND/HADD instruction schedules (details)
  7. [X86] Fix SLM v2i64 ADD/Sub/CMPEQ instruction schedules (details)
  8. [X86TargetTransformInfo] Fixed warning: Expression 'ISD == ISD::UREM' is (details)
  9. [Object][MachO] Rewrite macho-invalid-fat-arch-size into YAML (details)
  10. [GISel][ArtifactCombiner] Relax the constraint to combine unmerge with (details)
  11. [NFC] Add SUPPORT_PLUGINS to add_llvm_executable() (details)
  12. Fix a typo in my previous commit (details)
  13. Introduce llvm-install-name-tool (details)
  14. [clang-format] [NFC] update the documentation in Format.h to allow (details)
  15. [AArch64] Re-add patterns for (s/u)mull2. (details)
  16. [X86] Clamp large constant shift amounts for MMX shift intrinsics to (details)
  17. [lit] Protect full test suite from FILECHECK_OPTS (details)
Commit a091f70610687202104ad75a916048a190d872c2 by llvm-dev
[CostModel][X86] Improve add vXi64 + fadd vXf64 reduction tests for SLM
As noted on D59710 we weren't handling the high costs of these
operations on SLM.
The file was modifiedllvm/test/Analysis/CostModel/X86/reduction.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/reduce-add.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit ba73aad4f64f52f2acb5394210ed829355b44383 by craig.topper
[X86] Add 'mmx' to all CPUs that have a version of 'sse' and weren't
already enabling '3dnow'
All SSE capable CPUs have MMX. 3dnow implicitly enables MMX.
We have code that detects if sse is enabled and implicitly enables MMX
unless -mno-mmx is passed. So in most cases we were already enabling MMX
if march passed a CPU that supported SSE.
The exception to this is if you pass -march for a cpu supports SSE and
also pass -mno-sse. We should still enable MMX since its part of the CPU
capability.
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedclang/test/Preprocessor/x86_target_features.c
Commit a8ccb48f697d3fbe85c593248ff1053fdf522a6e by craig.topper
[X86] Add 'fxsr' feature to -march=pentium2 to match X86.td and gcc.
The file was modifiedclang/test/Preprocessor/predefined-arch-macros.c
The file was modifiedclang/lib/Basic/Targets/X86.cpp
Commit cbc872a63f81ad9482bb288165af63d7444fa3ed by Saleem Abdulrasool
unwind: disable RTTI during the build of libunwind
Disable the type information emission for libunwind.  libunwind does not
use `dynamic_cast`.  This results in a smaller binary, and more
importantly, avoids the dependency on libc++abi.  This ensures that we
have complete symbol resolution of symbols on ELF targets without
linking to the C++ runtime support library.  This change avoids the
emission of a reference to `__si_class_type_info`.
The file was modifiedlibunwind/src/CMakeLists.txt
Commit ca7f5becf9b71c23c8980d3a7280e4408e28bad2 by Dávid Bolvanský
[X86ISelLowering] Fixed typo in assert. NFCI.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit ad70d5f39ae99d9f5be582ad8979830f588e6802 by llvm-dev
[X86] Fix SLM v2f64 ADD/MUL + FP BLEND/HADD instruction schedules
Noticed while fixing the reduction costs for D59710 - the SLM model
doesn't account for the poor throughput of v2f64/v2i64 ops.
The file was modifiedllvm/lib/Target/X86/X86ScheduleSLM.td
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-sse2.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-sse41.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-sse3.s
Commit 1786047b910506e5a2189cadb8791bd2504b855e by llvm-dev
[X86] Fix SLM v2i64 ADD/Sub/CMPEQ instruction schedules
Noticed while fixing the reduction costs for D59710 - the SLM model
doesn't account for the poor throughput of v2i64 ops.
Numbers taken from Intel AOM (+ checked against Agner)
The file was modifiedllvm/lib/Target/X86/X86ScheduleSLM.td
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-sse2.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-sse41.s
Commit dad7a185101d23598d82147a4feed486ba0abafb by Dávid Bolvanský
[X86TargetTransformInfo] Fixed warning: Expression 'ISD == ISD::UREM' is
always true. NFCI.
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit 6da58e7e0fac1e421d6a5a6e48ed8836c67ac543 by Steven Wu
[Object][MachO] Rewrite macho-invalid-fat-arch-size into YAML
Summary: Rewrite one of the invalid macho test input file with YAML
file. The original invalid macho is breaking our internal test
infrastusture because it is too broken to be copy around.
Need to relax an assertion in the YAML/MachoEmitter to allow yaml2obj to
write an invalid object like this.
rdar://problem/56879982
Reviewers: beanz, mtrent
Reviewed By: beanz
Subscribers: hiraditya, jkorous, dexonsmith, ributzka, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69856
The file was modifiedllvm/test/Object/macho-invalid.test
The file was addedllvm/test/Object/Inputs/macho-invalid-fat-arch-size.yaml
The file was removedllvm/test/Object/Inputs/macho-invalid-fat-arch-size
The file was modifiedllvm/lib/ObjectYAML/MachOEmitter.cpp
Commit 52af7aedfe5dd5cfb1a6f486040a2549bbdbcf93 by qcolombet
[GISel][ArtifactCombiner] Relax the constraint to combine unmerge with
concat_vectors
The combine G_UNMERGE_VALUES with G_CONCAT_VECTORS used to only be
performed when the result type of the G_UNMERGE_VALUES was a vector
type. In other words, we were expecting that the G_UNMERGE_VALUES was
effectively the exact opposite of the G_CONCAT_VECTORS.
Lift that constraint by allowing any G_UNMERGE_VALUES to be combined
with any G_CONCAT_VECTORS (as long as the size of the different pieces
that we merge/unmerge match).
Differential Revision: https://reviews.llvm.org/D69288
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-unmerge-values.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-phi.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-combiner.mir
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/integration-shuffle-vector.ll
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
Commit 6740a88dc18d0be14926a5e709bd5062e31ee81c by daltenty
[NFC] Add SUPPORT_PLUGINS to add_llvm_executable()
Summary: this allows us to move logic about when it is appropriate set
LLVM_NO_DEAD_STRIP out of each tool and into add_llvm_executable, which
will enable future platform specific handling.
This is a follow on to the reverted D69356
Reviewers: hubert.reinterpretcast, beanz, lhames
Reviewed By: beanz
Subscribers: mgorny, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D69638
The file was modifiedllvm/tools/bugpoint/CMakeLists.txt
The file was modifiedllvm/tools/opt/CMakeLists.txt
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
The file was modifiedllvm/tools/llc/CMakeLists.txt
The file was modifiedclang/tools/driver/CMakeLists.txt
Commit 2293b3f169a27232a9f208ae157517b96ff9a4f0 by Steven Wu
Fix a typo in my previous commit
The file was modifiedllvm/lib/ObjectYAML/MachOEmitter.cpp
Commit b5913e6d2f6d13fb753df701619731ca11936316 by alexshap
Introduce llvm-install-name-tool
This diff adds a new "driver" for llvm-objcopy which is supposed to
emulate the behavior of install-name-tool.
Differential revision: https://reviews.llvm.org/D69146
Test plan: make check-all
The file was addedllvm/test/tools/llvm-objcopy/MachO/Inputs/i386.yaml
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-help-message.test
The file was addedllvm/tools/llvm-objcopy/InstallNameToolOpts.td
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-add-rpath.test
The file was addedllvm/test/tools/llvm-objcopy/MachO/Inputs/x86_64.yaml
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-version.test
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
Commit eadb65f273c076c4997b28a51f086eea505c3e78 by paulhoad
[clang-format] [NFC] update the documentation in Format.h to allow
dump_format_style.py to get a little closer to being correct. (part 2)
Summary: a change {D67541} cause LanguageStandard to now be subtly
different from all other clang-format options, in that the Enum value
(less the prefix) is not always allowed as valid as the configuration
option.
This caused the ClangFormatStyleOptions.rst and the Format.h to diverge
so that the ClangFormatStyleOptions.rst could no longer be generated
from the Format.h using dump_format_stlye.py
This fix tried to remedy that:
1) by allowing an additional comment (in Format.h) after the enum to be
used as the `in configuration ( XXXX )`  text, and changing the
dump_format_style.py to support that.
This makes the following code:
``` enum {
... LS_Cpp03, // c++03 LS_Cpp11, // c++11
...
};
```
would render as:
```* ``LS_Cpp03`` (in configuration: ``c++03``)
* ``LS_Cpp11`` (in configuration: ``c++11``)
```
And we also  move the deprecated alias into the text of the enum
(otherwise it won't be added at the end as an option)
This patch includes a couple of other whitespace changes which help
bring Format.h and ClangFormatStyleOptions.rst almost back into line and
regeneratable...  (there is still one more)
Reviewers: klimek, mitchell-stellar, sammccall
Reviewed By: mitchell-stellar, sammccall
Subscribers: mrexodia, cfe-commits
Tags: #clang, #clang-format
Differential Revision: https://reviews.llvm.org/D69433
The file was modifiedclang/include/clang/Format/Format.h
The file was modifiedclang/docs/tools/dump_format_style.py
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
Commit 35cf9a1fc5d2ab7c171c968737092874676ce8ea by efriedma
[AArch64] Re-add patterns for (s/u)mull2.
These patterns were added in D46009, but removed in D54276 due to
missing test coverage.
Differential Revision: https://reviews.llvm.org/D69831
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-smull.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
Commit 641d2e5232b423a7dd81afac94dd3db4412a4971 by craig.topper
[X86] Clamp large constant shift amounts for MMX shift intrinsics to
8-bits.
The MMX intrinsics for shift by immediate take a 32-bit shift amount but
the hardware for shifting by immediate only encodes 8-bits. For the
intrinsic we don't require the shift amount to fit in 8-bits in the
frontend because we don't check that its an immediate in the frontend.
If its is not an immediate we move it to an MMX register and use the
shift by register.
But if it is an immediate we'll use the shift by immediate instruction.
But we need to change the shift amount to 8-bits. We were previously
doing this accidentally by masking it in the encoder. But this can make
a large shift amount into a small in bounds shift amount. Instead we
should clamp larger shift amounts to 255 so that the they don't become
in bounds.
Fixes PR43922
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/mmx-arith.ll
Commit 6cecd3c3dbef48eca6c4cf2dcc2df3290ab91488 by jdenny.ornl
[lit] Protect full test suite from FILECHECK_OPTS
lit's test suite calls lit multiple times for various sample test
suites.  `FILECHECK_OPTS` is safe for FileCheck calls in lit's test
suite.  It's not safe for FileCheck calls in the sample test suites,
whose output affects the results of lit's test suite.
Without this patch, only one such sample test suite is protected from
`FILECHECK_OPTS`, and currently `shtest-shell.py` breaks with
`FILECHECK_OPTS=-vv`.  Moreover, it's hard to predict the future,
especially false passes.  Thus, this patch protects all existing and
future sample test suites from `FILECHECK_OPTS` (and the deprecated
`FILECHECK_DUMP_INPUT_ON_FAILURE`).
Reviewed By: probinson
Differential Revision: https://reviews.llvm.org/D65156
The file was modifiedllvm/utils/lit/tests/shtest-run-at-line.py
The file was modifiedllvm/utils/lit/tests/lit.cfg