LLVM backend for 6502
Go to file
Jakob Stoklund Olesen 19d0bf3a92 Consider unknown alignment caused by OptimizeThumb2Instructions().
This function runs after all constant islands have been placed, and may
shrink some instructions to their 2-byte forms.  This can actually cause
some constant pool entries to move out of range because of growing
alignment padding.

Treat instructions that may be shrunk the same as inline asm - they
erode the known alignment bits.

Also reinstate an old assertion in verify(). It is correct now that
basic block offsets include alignments.

Add a single large test case that will hopefully exercise many parts of
the constant island pass.

<rdar://problem/10670199>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147885 91177308-0d34-0410-b5e6-96231b3b80d8
2012-01-10 22:32:14 +00:00
autoconf revert r147542 after comments from Joerg Sonnenberger 2012-01-05 18:28:46 +00:00
bindings Update OCaml bindings for the new half float type. 2011-12-28 18:51:08 +00:00
cmake revert r147542 after comments from Joerg Sonnenberger 2012-01-05 18:28:46 +00:00
docs Fix dead link 2012-01-07 04:11:27 +00:00
examples
include Let asm parser query asm syntax dialect. 2012-01-10 21:49:42 +00:00
lib Consider unknown alignment caused by OptimizeThumb2Instructions(). 2012-01-10 22:32:14 +00:00
projects revert r147542 after comments from Joerg Sonnenberger 2012-01-05 18:28:46 +00:00
runtime
test Consider unknown alignment caused by OptimizeThumb2Instructions(). 2012-01-10 22:32:14 +00:00
tools Remove unnecessary default cases in switches that cover all enum values. 2012-01-10 16:47:17 +00:00
unittests Undo the hack in r147427 and move this unittest to a better home. This 2012-01-02 09:19:48 +00:00
utils Record asm variant id in MatchEntry and check it while matching instruction. 2012-01-10 17:50:43 +00:00
.gitignore
CMakeLists.txt capitalize project name, reference bugzilla 2011-12-18 18:50:16 +00:00
configure revert r147542 after comments from Joerg Sonnenberger 2012-01-05 18:28:46 +00:00
CREDITS.TXT
LICENSE.TXT Happy new year 2012! 2012-01-01 08:16:56 +00:00
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in capitalize project name, reference bugzilla 2011-12-18 18:50:16 +00:00
Makefile.rules PR11642 has been fixed, enable -fvisibility-inlines-hidden everywhere. 2011-12-27 21:37:11 +00:00
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 HTML documentation provided in docs/index.html for further
assistance with LLVM.

If you're writing a package for LLVM, see docs/Packaging.html for our
suggestions.