mirror of
https://github.com/intel/llvm.git
synced 2026-02-03 19:18:13 +08:00
LSR fix: "Special" users are just like "Basic" users but allow -1 scale.
llvm-svn: 158536
This commit is contained in:
@@ -1308,8 +1308,8 @@ static bool isLegalUse(const TargetLowering::AddrMode &AM,
|
||||
return !AM.BaseGV && AM.Scale == 0 && AM.BaseOffs == 0;
|
||||
|
||||
case LSRUse::Special:
|
||||
// Only handle -1 scales, or no scale.
|
||||
return AM.Scale == 0 || AM.Scale == -1;
|
||||
// Special case Basic to handle -1 scales.
|
||||
return !AM.BaseGV && (AM.Scale == 0 || AM.Scale == -1) && AM.BaseOffs == 0;
|
||||
}
|
||||
|
||||
llvm_unreachable("Invalid LSRUse Kind!");
|
||||
|
||||
Reference in New Issue
Block a user