llvm-6502/lib
Chris Lattner 97ae12a988 change iterator invalidation avoidance to just move the iterator backward
when something changes, instead of moving forward.  This allows us to 
simplify memset lowering, inserting the memset at the end of the range of 
stuff we're touching instead of at the start.

This, in turn, allows us to make use of the addressing instructions already
used in the function instead of inserting our own.  For example, we now
codegen:

	%tmp41 = getelementptr [8 x i8]* %ref_idx, i32 0, i32 0		; <i8*> [#uses=2]
	call void @llvm.memset.i64( i8* %tmp41, i8 -1, i64 8, i32 1 )

instead of:

	%tmp20 = getelementptr [8 x i8]* %ref_idx, i32 0, i32 7		; <i8*> [#uses=1]
	%ptroffset = getelementptr i8* %tmp20, i64 -7		; <i8*> [#uses=1]
	call void @llvm.memset.i64( i8* %ptroffset, i8 -1, i64 8, i32 1 )



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48940 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-29 05:15:47 +00:00
..
Analysis Don't include <map> in Pass.h, which doesn't need it. This requires 2008-03-21 23:51:57 +00:00
Archive Fix thinko: alias always defines new symbol. Even is aliasee itself is undefined. 2008-03-11 00:24:53 +00:00
AsmParser Add explicit keywords. 2008-03-25 22:06:05 +00:00
Bitcode Add explicit keywords. 2008-03-25 22:06:05 +00:00
CodeGen Remove some unneeded code for LiveInterval joining, and fix a bug in the Phi elimination algorithm where we were accidentally reasoning about 2008-03-29 01:58:47 +00:00
Debugger Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
ExecutionEngine Expose ExecutionEngine::getTargetData() to c and ocaml bindings. 2008-03-27 00:27:14 +00:00
Linker Ultimately resolve aliases during linking, if possible 2008-03-11 22:51:09 +00:00
Support Add explicit keywords. 2008-03-25 22:06:05 +00:00
System Revert r48676. I had plans for using it, but now it's just dead code. 2008-03-24 21:29:58 +00:00
Target Fix a tokenfactor node to use the load chain rather than the 2008-03-28 23:45:16 +00:00
Transforms change iterator invalidation avoidance to just move the iterator backward 2008-03-29 05:15:47 +00:00
VMCore Update example to new syntax. 2008-03-28 06:46:51 +00:00
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00