LLVM backend for 6502
Go to file
Daniel Dunbar 6f5cc82686 Fix non-determinism in DAGISel emitter.
- This manifested as non-determinism in the .inc output in rare cases (when two
   distinct patterns ended up being equivalent, which is rather rare). That
   meant the pattern matching was non-deterministic, which could eventually mean
   the code generator selected different instructions based on the arch.

 - It's probably worth making the DAGISel ensure a total ordering (or force the
   user to), but the simple fix here is to totally order the Record* maps based
   on a unique ID.

 - PR4672, PR4711.

Yay:
--
ddunbar@giles:~$ cat ~/llvm.obj.64/lib/Target/*/*.inc | shasum
d1099ff34b21459a5a3e7021c225c080e6017ece  -
ddunbar@giles:~$ cat ~/llvm.obj.ppc/lib/Target/*/*.inc | shasum
d1099ff34b21459a5a3e7021c225c080e6017ece  -
--

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79846 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-23 09:47:37 +00:00
autoconf Update copyright date. 2009-08-22 21:00:33 +00:00
bindings Convert the rest of the ocaml types and functions to use context. 2009-08-19 17:32:24 +00:00
cmake CMake: Don't use copy_if_different for TableGen output, because it does not work with IDE targets 2009-08-22 07:00:18 +00:00
docs Don't install the man page for FileCheck 2009-08-23 05:24:49 +00:00
examples eliminate the std::ostream forms of the bitcode writing APIs. 2009-08-23 07:49:08 +00:00
include Fix some refactos for iostream changes (in -Asserts mode). 2009-08-23 08:50:52 +00:00
lib Fix windows build. 2009-08-23 08:57:52 +00:00
projects remove dead makefile flags. 2009-06-24 05:29:56 +00:00
runtime Don't try to build .bc version of libprofile if LLVMGCC isn't available. 2009-08-20 05:12:55 +00:00
test llvm-mc/Mach-O: Improve symbol table support: 2009-08-22 11:41:10 +00:00
tools eliminate the std::ostream forms of the bitcode writing APIs. 2009-08-23 07:49:08 +00:00
unittests convert all the constant range EXPECT_EQ tests to use EXPECT_TRUE since 2009-08-23 06:32:25 +00:00
utils Fix non-determinism in DAGISel emitter. 2009-08-23 09:47:37 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types. More to come. 2009-07-24 23:12:02 +00:00
Xcode Remove the IA-64 backend. 2009-07-24 00:30:09 +00:00
build-for-llvm-top.sh Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
CMakeLists.txt TOT is 2.7svn for CMake, too 2009-08-22 06:30:31 +00:00
configure Regenerate configure. 2009-08-22 21:01:26 +00:00
CREDITS.TXT Add myself to the blame list. 2009-08-20 15:20:15 +00:00
LICENSE.TXT one fewer license, yay. :) 2009-08-01 22:54:39 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Build runtime libraries by default. 2009-08-19 21:09:45 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in The attached patches attempt to fix cross builds. For example, if you 2009-08-18 00:40:33 +00:00
Makefile.rules Add a REQUIRES_FRAME_POINTER option to disable the frame pointer 2009-08-19 22:04:44 +00:00
ModuleInfo.txt Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
README.txt README.txt: test commit w/blank line appended 2009-03-23 21:00:45 +00:00

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 HTML documentation provided in docs/index.html for further
assistance with LLVM.