llvm-6502/lib
Chris Lattner 10c0d9179e optimize "p != gep p, ..." better. This allows us to compile
getelementptr-seteq.ll into:

define i1 @test(i64 %X, %S* %P) {
	%C = icmp eq i64 %X, -1		; <i1> [#uses=1]
	ret i1 %C
}

instead of:

define i1 @test(i64 %X, %S* %P) {
	%A.idx.mask = and i64 %X, 4611686018427387903		; <i64> [#uses=1]
	%C = icmp eq i64 %A.idx.mask, 4611686018427387903		; <i1> [#uses=1]
	ret i1 %C
}

And fixes the second half of PR2235.  This speeds up the insertion sort
case by 45%, from 1.12s to 0.77s.  In practice, this will significantly
speed up for loops structured like:

for (double *P = Base + N; P != Base; --P)
  ...

Which happens frequently for C++ iterators.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50079 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-22 02:53:33 +00:00
..
Analysis Fix the way AliasSet::print prints "may alias". 2008-04-21 19:48:48 +00:00
Archive Change the MemoryBuffer::getFile* methods to take just a pointer to the 2008-04-01 18:04:03 +00:00
AsmParser regenerate 2008-04-20 00:41:19 +00:00
Bitcode Switch to using Simplified ConstantFP::get API. 2008-04-20 00:41:09 +00:00
CodeGen Fix an out-of-bounds access in -view-sunit-dags in the case of an 2008-04-21 20:07:30 +00:00
Debugger Change the MemoryBuffer::getFile* methods to take just a pointer to the 2008-04-01 18:04:03 +00:00
ExecutionEngine Be pessimistic in computing the buffer size when aligning. 2008-04-20 23:39:44 +00:00
Linker Revert r49614. As Dan pointed out, some of these aren't correct. 2008-04-14 17:38:21 +00:00
Support Check that APFloat::convert is not trying to target 2008-04-20 01:34:03 +00:00
System Restore code to disable crash catcher on older OS X systems 2008-04-12 00:47:46 +00:00
Target Implement an x86-64 ABI detail of passing structs by hidden first 2008-04-21 23:59:07 +00:00
Transforms optimize "p != gep p, ..." better. This allows us to compile 2008-04-22 02:53:33 +00:00
VMCore more fallout from Nicholas' asmprinter patch. 2008-04-22 02:45:44 +00:00
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00