LLVM backend for 6502
Go to file
Bill Wendling c83693f5b0 N.B. This is with the new EH scheme:
The blocks with invokes have branches to the dispatch block, because that more
correctly models the behavior of the CFG. The dispatch of course has edges to
the landing pads. Those landing pads could contain invokes, which then have
branches back to the dispatch. This creates a loop. The machine LICM pass looks
at this loop and thinks it can hoist elements out of it. But because the
dispatch is an alternate entry point into the program, the hoisted instructions
won't be executed.

I wasn't able to get a testcase which was small and could reproduce all of the
time. The function_try_block.cpp in llvm-test was where this showed up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141726 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-11 22:42:31 +00:00
autoconf We're no longer going to bother supporting platforms that don't 2011-09-23 00:53:10 +00:00
bindings ocaml/C bindings: type->isSized() 2011-10-06 12:13:28 +00:00
cmake Add -D__STDC_FORMAT_MACROS to use PRIx64. 2011-10-11 12:51:44 +00:00
docs Clean up a few references to System/. We still have docs/SystemLibrary.html 2011-10-11 20:02:52 +00:00
examples Changed comments on foreign C++ exceptions (generated with type info 7), 2011-09-28 10:53:56 +00:00
include Support/DataTypes.h: Clean up some types and add matching (but presumably 2011-10-11 20:02:49 +00:00
lib N.B. This is with the new EH scheme: 2011-10-11 22:42:31 +00:00
projects
runtime Include direct.h for _mkdir on mingw32 too. 2011-10-08 15:49:19 +00:00
test ARM assembly parsing and encoding for LDC{2}{L}/STC{2}{L} instructions. 2011-10-11 21:55:36 +00:00
tools llvm-objdump.cpp: Use PRIx64 as format specifier for int64_t. 2011-10-11 12:51:50 +00:00
unittests Fix APInt::operator*= so that it computes the correct result for large integers where there is unsigned overflow. Fix APFloat::toString so that it doesn't depend on the incorrect behavior in common cases (and computes the correct result in some rare cases). Fixes PR11086. 2011-10-07 23:40:49 +00:00
utils Remove extra semicolon. 2011-10-11 19:53:40 +00:00
.gitignore Revert change made in .gitignore. 2011-09-24 01:37:58 +00:00
build-for-llvm-top.sh
CMakeLists.txt Build system infrastructure for multiple tblgens. 2011-10-06 01:51:51 +00:00
configure We're no longer going to bother supporting platforms that don't 2011-09-23 00:53:10 +00:00
CREDITS.TXT Claimed. 2011-09-19 05:34:10 +00:00
LICENSE.TXT
llvm.spec.in
Makefile Add clang-tblgen to OPTIONAL_DIRS when building native tools for the 2011-10-08 00:27:38 +00:00
Makefile.common
Makefile.config.in Remove the rest of the compiler checking from the top level configure 2011-09-21 00:53:42 +00:00
Makefile.rules Add -D__STDC_FORMAT_MACROS to use PRIx64. 2011-10-11 12:51:44 +00:00
ModuleInfo.txt
README.txt Test commit 2011-09-21 03:34:31 +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.

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