LLVM backend for 6502
Go to file
Dan Gohman 40a5a1b39e Extend ScalarEvolution's multiple-exit support to compute exact
trip counts in more cases.

Generalize ScalarEvolution's isLoopGuardedByCond code to recognize
And and Or conditions, splitting the code out into an
isNecessaryCond helper function so that it can evaluate Ands and Ors
recursively, and make SCEVExpander be much more aggressive about
hoisting instructions out of loops.

test/CodeGen/X86/pr3495.ll has an additional instruction now, but
it appears to be due to an arbitrary register allocation difference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74048 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-24 01:18:18 +00:00
autoconf Work around build problem with OpenJDK, which defines X86 as a 2009-06-23 17:21:35 +00:00
bindings Give embedded metadata its own type instead of relying on EmptyStructTy. 2009-05-30 05:06:04 +00:00
cmake Reinstate target dependencies on Table_gen targets in CMake 2009-06-23 21:05:21 +00:00
docs Clarify that if the alignment is zero then an alignment 2009-06-20 13:26:06 +00:00
examples make sure that JIT examples link in their appropriate target. 2009-06-17 16:48:44 +00:00
include Extend ScalarEvolution's multiple-exit support to compute exact 2009-06-24 01:18:18 +00:00
lib Extend ScalarEvolution's multiple-exit support to compute exact 2009-06-24 01:18:18 +00:00
projects Revert r67655 and r67656, as they are breaking the build. I'm 2009-03-25 00:52:11 +00:00
runtime Drop toy GC runtime. 2009-03-02 03:46:48 +00:00
test Extend ScalarEvolution's multiple-exit support to compute exact 2009-06-24 01:18:18 +00:00
tools create an MCStreamer and provide it to AsmParser. 2009-06-24 00:52:40 +00:00
unittests Start MCAsmStreamer implementation. 2009-06-24 01:03:06 +00:00
utils Make llvmc work again. 2009-06-23 20:46:48 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Add a new codegen pass that normalizes dwarf exception handling 2009-05-22 20:36:31 +00:00
Xcode Remove Stacker.html from Xcode project. 2008-10-14 23:23:59 +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 Start flushing out MCContext. 2009-06-23 22:01:43 +00:00
configure Regenerate configure script 2009-06-23 17:22:05 +00:00
CREDITS.TXT Add myself to the list. 2009-06-23 17:03:23 +00:00
LICENSE.TXT Now that we have atomics support properly detected by configure, 2009-05-19 00:08:29 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Introduce new headers whose inclusion forces linking and 2009-06-16 20:12:29 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in Add a --enable-profiling option to configure to build Debug+Profile and 2009-04-17 14:49:22 +00:00
Makefile.rules Make llvmc work again. 2009-06-23 20:46:48 +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.