llvm-mirror/lib
Evan Cheng a14fd26a8b Minor tweak to LowerUINT_TO_FP_i32. Bias (after scalar_to_vector) has two uses so we should make it the second source operand of ISD::OR so 2-address pass won't have to be smart about commuting.
%reg1024<def> = MOVSDrm %reg0, 1, %reg0, <cp#0>, Mem:LD(8,8) [ConstantPool + 0]
%reg1025<def> = MOVSD2PDrr %reg1024
%reg1026<def> = MOVDI2PDIrm <fi#-1>, 1, %reg0, 0, Mem:LD(4,16) [FixedStack-1 + 0]
%reg1027<def> = ORPSrr %reg1025<kill>, %reg1026<kill>
%reg1028<def> = MOVPD2SDrr %reg1027<kill>
%reg1029<def> = SUBSDrr %reg1028<kill>, %reg1024<kill>
%reg1030<def> = CVTSD2SSrr %reg1029<kill>
MOVSSmr <fi#0>, 1, %reg0, 0, %reg1030<kill>, Mem:ST(4,4) [FixedStack0 + 0]
%reg1031<def> = LD_Fp32m80 <fi#0>, 1, %reg0, 0, Mem:LD(4,16) [FixedStack0 + 0]
RET %reg1031<kill>, %ST0<imp-use,kill>

The reason 2-addr pass isn't smart enough to commute the ORPSrr is because it can't look pass the MOVSD2PDrr instruction.

llvm-svn: 62505
2009-01-19 08:19:57 +00:00
..
Analysis CMake: Add lib/Analysis/CaptureTracking.cpp 2009-01-18 13:14:11 +00:00
Archive Add the private linkage. 2009-01-15 20:18:42 +00:00
AsmParser Add the private linkage. 2009-01-15 20:18:42 +00:00
Bitcode use specialized accessor instead of plain getOperand(0) 2009-01-16 18:40:27 +00:00
CodeGen Few targets like PIC16 wants libcall generation for illegal type i16. 2009-01-18 18:25:27 +00:00
Debugger Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
ExecutionEngine don't assert and die on out of range (undefined) shifts. This fixes 2009-01-16 20:17:02 +00:00
Linker Add the private linkage. 2009-01-15 20:18:42 +00:00
Support Support for multi-valued options in CommandLine 2009-01-16 22:54:19 +00:00
System Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Target Minor tweak to LowerUINT_TO_FP_i32. Bias (after scalar_to_vector) has two uses so we should make it the second source operand of ISD::OR so 2-address pass won't have to be smart about commuting. 2009-01-19 08:19:57 +00:00
Transforms Fix PR3016, a bug which can occur do to an invalid assumption: 2009-01-19 02:46:28 +00:00
VMCore Add the private linkage. 2009-01-15 20:18:42 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00