LLVM backend for 6502
Go to file
Tim Northover c0ecebb32b ScheduleDAG: record PhysReg dependencies represented by CopyFromReg nodes
x86's CMPXCHG -> EFLAGS consumer wasn't being recorded as a real EFLAGS
dependency because it was represented by a pair of CopyFromReg(EFLAGS) ->
CopyToReg(EFLAGS) nodes. ScheduleDAG was expecting the source to be an
implicit-def on the instruction, where the result numbers in the DAG and the
Uses list in TableGen matched up precisely.

The Copy notation seems much more robust, so this patch extends ScheduleDAG
rather than refactoring x86.

Should fix PR20376.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220529 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-23 22:31:48 +00:00
autoconf
bindings Add llvm-go tool. 2014-10-23 02:33:23 +00:00
cmake Add llvm-go tool. 2014-10-23 02:33:23 +00:00
docs Fix number of operands in documentation for minnum / maxnum 2014-10-22 18:25:02 +00:00
examples
include PR21189: Teach llvm-readobj to dump bits of COFF symbol subsections required to debug using VS2012+ 2014-10-23 22:25:31 +00:00
lib ScheduleDAG: record PhysReg dependencies represented by CopyFromReg nodes 2014-10-23 22:31:48 +00:00
projects
test ScheduleDAG: record PhysReg dependencies represented by CopyFromReg nodes 2014-10-23 22:31:48 +00:00
tools PR21189: Teach llvm-readobj to dump bits of COFF symbol subsections required to debug using VS2012+ 2014-10-23 22:25:31 +00:00
unittests Add unittest for extreme alignments. 2014-10-23 14:45:19 +00:00
utils
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt Adding llvm-shlib to CMake build system with a few new bells and whistles 2014-10-23 17:22:14 +00:00
CODE_OWNERS.TXT
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
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.