[PATCH] D17898: Implement expansion of {s,u}{min,max}

Jan Vesely via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 9 16:02:31 PST 2016


jvesely added a comment.

In http://reviews.llvm.org/D17898#368335, @arsenm wrote:

> What is emitting the illegal min/max?


the culprit is SelectionDAGBuilder::visitSelect(const User &I), in lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:2598.
 it transforms specifc single use comparisons into min/max.

It does not check legality of min/max operations. even for the operations it does check, it considers type after type legalization (so the check would pass on r600). The comment on line 2610 indicates that it intentionally relies on type legalizer handling illegal ops/types.


Repository:
  rL LLVM

http://reviews.llvm.org/D17898





More information about the llvm-commits mailing list