llvm-6502/lib
Chris Lattner fdb19e5887 Fix PR2506 by being a bit more careful about reverse fact propagation when
disproving a condition.  This actually compiles the existing testcase
(udiv_select_to_select_shift) to:

define i64 @test(i64 %X, i1 %Cond) {
entry:
	%divisor1.t = lshr i64 %X, 3		; <i64> [#uses=1]
	%quotient2 = lshr i64 %X, 3		; <i64> [#uses=1]
	%sum = add i64 %divisor1.t, %quotient2		; <i64> [#uses=1]
	ret i64 %sum
}

instead of:

define i64 @test(i64 %X, i1 %Cond) {
entry:
	%quotient1.v = select i1 %Cond, i64 3, i64 4		; <i64> [#uses=1]
	%quotient1 = lshr i64 %X, %quotient1.v		; <i64> [#uses=1]
	%quotient2 = lshr i64 %X, 3		; <i64> [#uses=1]
	%sum = add i64 %quotient1, %quotient2		; <i64> [#uses=1]
	ret i64 %sum
}



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53534 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-14 00:15:52 +00:00
..
Analysis Stop creating extraneous smax/umax in SCEV. This removes a regression where we 2008-07-12 07:41:32 +00:00
Archive
AsmParser Align comments, colons and cases. Remove trailing 2008-07-11 07:37:30 +00:00
Bitcode Add a little wrapper header that is put around bc files when emitting 2008-07-09 05:14:23 +00:00
CodeGen Typos. 2008-07-12 02:22:07 +00:00
Debugger - Re-apply 52748 and friends with fix. GetConstantStringInfo() returns an empty string for ConstantAggregateZero case which surprises selectiondag. 2008-06-30 07:31:25 +00:00
ExecutionEngine Add a new hidden option to the interpreter to cause it to print 2008-07-08 17:25:49 +00:00
Linker The source and dest of an alias are *not* required to have the same type, 2008-07-10 01:09:33 +00:00
Support Back out 53476 and 53480 for now. Somehow they cause llc to miscompile 179.art. 2008-07-12 01:38:51 +00:00
System open plugins with RTLD_GLOBAL, pointed out by Bram Adams. 2008-07-10 00:52:20 +00:00
Target Implement llvm.atomic.cmp.swap.i32 on PPC. Patch by Gary Benson! 2008-07-12 02:23:19 +00:00
Transforms Fix PR2506 by being a bit more careful about reverse fact propagation when 2008-07-14 00:15:52 +00:00
VMCore Use find instead of lower_bound. 2008-07-11 20:58:19 +00:00
Makefile