Actually, disable this code for now. More analysis and improvements to

the X86 backend are needed before this should be enabled by default.

llvm-svn: 44657
This commit is contained in:
Chris Lattner 2007-12-06 07:44:31 +00:00
parent 7c709a5d08
commit b5fdfb9612
2 changed files with 7 additions and 0 deletions

View File

@ -2134,6 +2134,12 @@ SDOperand DAGCombiner::visitXOR(SDNode *N) {
/// visitShiftByConstant - Handle transforms common to the three shifts, when
/// the shift amount is a constant.
SDOperand DAGCombiner::visitShiftByConstant(SDNode *N, unsigned Amt) {
// FIXME: disable this for now. This pessimizes some common cases like:
//
//void foo(int *X, int i) { X[i & 1235] = 1; }
//int bar(int *X, int i) { return X[i & 255]; }
return SDOperand();
SDNode *LHS = N->getOperand(0).Val;
if (!LHS->hasOneUse()) return SDOperand();

View File

@ -1,4 +1,5 @@
; RUN: llvm-as < %s | llc | not grep shrl
; XFAIL: *
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
target triple = "i686-apple-darwin8"