Add a hook to find out how the target handles shift amounts that are out of

range.  Either they are undefined (the default), they mask the shift amount
to the size of the register (X86, Alpha, etc), or they extend the shift (PPC).

This defaults to undefined, which is conservatively correct.

llvm-svn: 19677
This commit is contained in:
Chris Lattner 2005-01-19 03:36:14 +00:00
parent 9aa4886283
commit a05cd83d2f
1 changed files with 1 additions and 0 deletions

View File

@ -25,6 +25,7 @@ TargetLowering::TargetLowering(TargetMachine &tm)
IsLittleEndian = TD.isLittleEndian();
ShiftAmountTy = SetCCResultTy = PointerTy = getValueType(TD.getIntPtrType());
ShiftAmtHandling = Undefined;
memset(RegClassForVT, 0,MVT::LAST_VALUETYPE*sizeof(TargetRegisterClass*));
}