LLVM backend for 6502
Go to file
Chris Lattner b374b90e81 Fix PR4834, a tricky case where the inliner would resolve an
indirect function pointer, inline it, then go to delete the body.
The problem is that the callgraph had other references to the function,
though the inliner had no way to know it, so we got a dangling pointer
and an invalid iterator out of the deal.

The fix to this is pretty simple: stop the inliner from deleting the
function by knowing that there are references to it.  Do this by making
CallGraphNodes contain a refcount.  This requires moving deletion of 
available_externally functions to the module-level cleanup sweep where
it belongs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80533 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-31 03:15:49 +00:00
autoconf install-sh chmods to 0755 by default, and this causes 'git diff' to show 2009-08-28 16:12:48 +00:00
bindings Fix header comment for bindings/ocaml/llvm/Makefile. 2009-08-30 23:41:20 +00:00
cmake CMake: updated library dependencies. 2009-08-31 01:58:50 +00:00
docs Add regular expression matching support, based on OpenBSD regexec()/regcomp() 2009-08-30 08:24:09 +00:00
examples Allocate the module provider in the Kaleidoscope code on the heap, not the stack, so that it can be properly deleted. Also update the tutorial with the new code. This fixes PR4762, hopefully better than the last time. 2009-08-26 20:58:25 +00:00
include Fix PR4834, a tricky case where the inliner would resolve an 2009-08-31 03:15:49 +00:00
lib Fix PR4834, a tricky case where the inliner would resolve an 2009-08-31 03:15:49 +00:00
projects install-sh chmods to 0755 by default, and this causes 'git diff' to show 2009-08-28 16:12:48 +00:00
runtime Read Makefile.config before using LLVMGCC. 2009-08-28 16:13:45 +00:00
test Fix PR4834, a tricky case where the inliner would resolve an 2009-08-31 03:15:49 +00:00
tools Fix some nasty callgraph dangling pointer problems in 2009-08-31 00:19:58 +00:00
unittests update unit test for previous change. 2009-08-31 00:28:46 +00:00
utils PR4795: Remove EEVT::isFP, isInt and isVec types used by TableGen's type 2009-08-29 05:53:25 +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 revert r78628 and r78803 as these are not needed any more 2009-08-25 23:02:21 +00:00
configure install-sh chmods to 0755 by default, and this causes 'git diff' to show 2009-08-28 16:12:48 +00:00
CREDITS.TXT Add myself to the blame list. 2009-08-20 15:20:15 +00:00
LICENSE.TXT Add regular expression matching support, based on OpenBSD regexec()/regcomp() 2009-08-30 08:24:09 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile re-apply r80197, now that iterator.h is not mentioned any more 2009-08-27 17:07:35 +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 Fix creation of .bca libraries with EXPORTED_SYMBOLS_LIST, this was putting the 2009-08-28 16:14:46 +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.