llvm-project/llvm
Duncan P. N. Exon Smith 512601d77f Revert "Revert "Mark vastart_save_xmm_regs as changing EFLAGS""
This reverts commit r197481, recommiting r197469 with an extra fix.

The vastart_save_xmm_regs pseudo-instruction expands to a test and a
branch, so it modifies EFLAGS.  Mark it so, or else the scheduler might
place it in the middle of another test+branch.

This fixes a bug exposed by r192750, which changed the initial scheduler
to source-order as part of enabling the MI Scheduler for X86.

This re-commit changes the VASTART_SAVE_XMM_REGS custom inserter not to
try to save %flags, and adds a test that catches the bad behavior of
r197469.

<rdar://problem/15627766>

llvm-svn: 197503
2013-12-17 15:54:45 +00:00
..
autoconf Update to reflect the next release. 2013-11-20 10:10:50 +00:00
bindings [OCaml] Add a slash accidentally omitted from Makefile 2013-11-28 09:03:28 +00:00
cmake [CMake] ${LLVM_MAIN_SRC_DIR}/include can be represented as ${LLVM_MAIN_INCLUDE_DIR}. 2013-12-16 16:14:19 +00:00
docs Fix code sample in NVPTX examples: now it compiles to PTX and runs as expected. 2013-12-17 14:14:15 +00:00
examples [CMake] Update LLVM_LINK_COMPONENTS for each CMakeLists.txt. 2013-12-10 11:13:32 +00:00
include Revert r197438 and r197447 until we figure out how to avoid circular dependency at link time 2013-12-17 01:19:59 +00:00
lib Revert "Revert "Mark vastart_save_xmm_regs as changing EFLAGS"" 2013-12-17 15:54:45 +00:00
projects Revert "Revert "Windows: Add support for unicode command lines"" 2013-10-07 01:00:07 +00:00
test Revert "Revert "Mark vastart_save_xmm_regs as changing EFLAGS"" 2013-12-17 15:54:45 +00:00
tools llvm-config: Let directories aware of CMAKE_CFG_INTDIR. 2013-12-17 05:48:37 +00:00
unittests [block-freq] Add a right shift to BlockFrequency that saturates at 1. 2013-12-14 02:24:22 +00:00
utils Tweak lit/TestingConfig.py Py3-compatible. has_key is dead. 2013-12-17 04:14:50 +00:00
.arcconfig
.clang-format Add a clang-format file so that the tool can automatically detect the 2013-09-02 07:19:04 +00:00
.gitignore
CMakeLists.txt [CMake] Introduce LLVM_RUNTIME_OUTPUT_INTDIR and LLVM_LIBRARY_OUTPUT_INTDIR to reduce references to CMAKE_CFG_INTDIR. 2013-12-16 16:03:08 +00:00
CODE_OWNERS.TXT Update email address. 2013-12-04 09:42:49 +00:00
CREDITS.TXT Update CREDITS 2013-11-17 11:44:36 +00:00
LICENSE.TXT
LLVMBuild.txt Remove the very substantial, largely unmaintained legacy PGO 2013-10-02 15:42:23 +00:00
Makefile llvm-config: Fixup r197380, tweak for cross compilation. SYSTEM_LIBS should be --host's in BuildTools/llvm-config. 2013-12-16 13:09:06 +00:00
Makefile.common
Makefile.config.in
Makefile.rules Teach the Makefile build system how to handle SOURCES which include 2013-11-14 23:51:29 +00:00
README.txt Revert "Test commit to check e-mail address. Please discard this." 2013-10-04 10:59:13 +00:00
configure Update to reflect the next release. 2013-11-20 10:10:50 +00:00
llvm.spec.in

README.txt

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, 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're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.