llvm-project/llvm
Craig Topper b2b6a54f84 [X86] Add support for -mvzeroupper and -mno-vzeroupper to match gcc
-mvzeroupper will force the vzeroupper insertion pass to run on
CPUs that normally wouldn't. -mno-vzeroupper disables it on CPUs
where it normally runs.

To support this with the default feature handling in clang, we
need a vzeroupper feature flag in X86.td. Since this flag has
the opposite polarity of the fast-partial-ymm-or-zmm-write we
used to use to disable the pass, we now need to add this new
flag to every CPU except KNL/KNM and BTVER2 to keep identical
behavior.

Remove -fast-partial-ymm-or-zmm-write which is no longer used.

Differential Revision: https://reviews.llvm.org/D69786
2019-11-04 11:03:54 -08:00
..
benchmarks
bindings Update version number in llvm python bindings 2019-10-25 17:14:11 -04:00
cmake Revert "[NFC] Rename LLVM_NO_DEAD_STRIP" 2019-10-30 14:56:20 -04:00
docs [X86] Add support for -mvzeroupper and -mno-vzeroupper to match gcc 2019-11-04 11:03:54 -08:00
examples Break out OrcError and RPC 2019-10-29 17:31:28 -07:00
include createMCObjectStreamer - fix uninitialized variable warning. NFCI. 2019-11-04 17:24:34 +00:00
lib [X86] Add support for -mvzeroupper and -mno-vzeroupper to match gcc 2019-11-04 11:03:54 -08:00
projects Add few docs and implementation of strcpy and strcat. 2019-10-04 17:30:54 +00:00
resources
runtimes
test [X86] Add support for -mvzeroupper and -mno-vzeroupper to match gcc 2019-11-04 11:03:54 -08:00
tools [llvm-readobj] Change errors to warnings for symbol section name dumping 2019-11-04 12:04:04 +00:00
unittests Revert "[LV] Apply sink-after & interleave-groups as VPlan transformations (NFC)" 2019-11-04 15:04:42 +01:00
utils [lit] Move measurement of testing time out of Run.execute 2019-11-04 10:16:24 -08:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt build: remove `LLVM_CXX_STD` extension point 2019-10-25 11:51:47 -07:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt Test commit. 2019-10-03 14:57:49 +00:00
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

The LLVM Compiler Infrastructure
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.