forked from OSchip/llvm-project
CodeGen: Default overflow operations to expand so we don't have to assume targets are lying
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewed-by: ab Differential Revision: http://reviews.llvm.org/D9265 llvm-svn: 236119
This commit is contained in:
parent
cca29e8f6e
commit
7539548738
|
@ -1245,12 +1245,6 @@ void SelectionDAGLegalize::LegalizeOp(SDNode *Node) {
|
|||
break;
|
||||
case ISD::EXTRACT_ELEMENT:
|
||||
case ISD::FLT_ROUNDS_:
|
||||
case ISD::SADDO:
|
||||
case ISD::SSUBO:
|
||||
case ISD::UADDO:
|
||||
case ISD::USUBO:
|
||||
case ISD::SMULO:
|
||||
case ISD::UMULO:
|
||||
case ISD::FPOWI:
|
||||
case ISD::MERGE_VALUES:
|
||||
case ISD::EH_RETURN:
|
||||
|
|
|
@ -804,6 +804,14 @@ void TargetLoweringBase::initActions() {
|
|||
setOperationAction(ISD::FMAXNUM, VT, Expand);
|
||||
setOperationAction(ISD::FMAD, VT, Expand);
|
||||
|
||||
// Overflow operations default to expand
|
||||
setOperationAction(ISD::SADDO, VT, Expand);
|
||||
setOperationAction(ISD::SSUBO, VT, Expand);
|
||||
setOperationAction(ISD::UADDO, VT, Expand);
|
||||
setOperationAction(ISD::USUBO, VT, Expand);
|
||||
setOperationAction(ISD::SMULO, VT, Expand);
|
||||
setOperationAction(ISD::UMULO, VT, Expand);
|
||||
|
||||
// These library functions default to expand.
|
||||
setOperationAction(ISD::FROUND, VT, Expand);
|
||||
|
||||
|
|
Loading…
Reference in New Issue