llvm-project/llvm/lib
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
..
Analysis [block-freq] Teach branch probability how to return the edge weight in between a BasicBlock and one of its successors. 2013-12-14 02:24:25 +00:00
AsmParser Debug Info: drop debug info via upgrading path if version number does not match. 2013-12-02 21:29:56 +00:00
Bitcode Remove unused value. 2013-12-07 02:27:52 +00:00
CodeGen Allow MachineCSE to coalesce trivial subregister copies the same way that it coalesces normal copies. 2013-12-17 04:50:45 +00:00
DebugInfo DebugInfo: Move type units into the debug_types section with appropriate comdat grouping and type unit headers 2013-12-13 21:33:40 +00:00
ExecutionEngine There are no __register_frame and __deregister_frame functions 2013-12-17 08:40:11 +00:00
IR Revert r197438 and r197447 until we figure out how to avoid circular dependency at link time 2013-12-17 01:19:59 +00:00
IRReader [llvm-c] Expose IRReader interface 2013-11-06 09:21:15 +00:00
LTO Add TargetLibraryInfo in LTO passes builder 2013-12-12 01:37:39 +00:00
Linker Revert "Move copying of global initializers below the cloning of functions." 2013-11-09 00:43:18 +00:00
MC DebugInfo: Move type units into the debug_types section with appropriate comdat grouping and type unit headers 2013-12-13 21:33:40 +00:00
Object Fix a pair of array index checks. 2013-12-06 02:33:38 +00:00
Option Avoid buffer copies when a Twine already is a StringRef. 2013-12-03 18:18:28 +00:00
Support Revert r197438 and r197447 until we figure out how to avoid circular dependency at link time 2013-12-17 01:19:59 +00:00
TableGen Fix most memory leaks in tablegen. 2013-10-31 04:07:41 +00:00
Target Revert "Revert "Mark vastart_save_xmm_regs as changing EFLAGS"" 2013-12-17 15:54:45 +00:00
Transforms LoopVectorizer: Don't if-convert constant expressions that can trap 2013-12-17 01:11:01 +00:00
CMakeLists.txt Move LTO support library to a component, allowing it to be tested 2013-09-24 23:52:22 +00:00
LLVMBuild.txt Move LTO support library to a component, allowing it to be tested 2013-09-24 23:52:22 +00:00
Makefile Reformat Makefile. No other changes. 2013-10-30 04:03:03 +00:00