HomePhabricator

[DAGCombiner] Do not generate ISD::ADDE node if adde is not legal for the…

Description

[DAGCombiner] Do not generate ISD::ADDE node if adde is not legal for the target when combine ISD::TRUNC node

Do not combine (trunc adde(X, Y, Carry)) into (adde trunc(X), trunc(Y), Carry),
if adde is not legal for the target. Even it's at type-legalize phase.
Because adde is special and will not be legalized at operation-legalize phase later.

This fixes: PR40922
https://bugs.llvm.org/show_bug.cgi?id=40922

Differential Revision: https://reviews.llvm.org//D60854

Details

Committed
wuzishApr 29 2019, 8:01 PM
Parents
rL359531: [analyzer] Treat functions without run-time branches as "small".
Branches
Unknown
Tags
Unknown