Lines Matching full:select
75 /// %D = select %cond, %C, %A
77 /// %C = select %cond, %B, 0
80 /// Assuming that the specified instruction is an operand to the select, return
82 /// equal the other incoming value of the select.
103 /// function, return the identity constant that goes into the select.
122 /// FoldSelectOpOp - Here we have (select c, TI, FI), and we know that TI and FI
133 // The select condition may be a vector. We may only change the operand
143 // Fold this by inserting a select from the input values.
209 /// FoldSelectIntoOp - Try fold the select into one of the operands to
229 // Avoid creating select between 2 constants unless it's selecting
264 // Avoid creating select between 2 constants unless it's selecting
354 /// (select (icmp eq (and X, C1), 0), Y, (or Y, C2))
364 /// 2. The select operands are reversed
429 // here, so make sure the select is the only user.
512 // Move ICI instruction right before the select instruction. Otherwise
554 // arms of the select. See if substituting this value into the arm and
593 /// CanSelectOperandBeMappingIntoPredBlock - SI is a select whose condition is a
600 /// Z = select X, Y, 0
619 // Otherwise, if the PHI and select are defined in the same block and if V is
659 /// with the non-constant value and a power of two we can turn the select
676 // If both select arms are non-zero see if we have a select of the form
695 // Make sure the mask in the 'and' and one of the select arms is a power of 2.
707 // If types don't match we can still convert the select by introducing a zext
743 // Change: A = select B, true, C --> A = or B, C
746 // Change: A = select B, false, C --> A = and !B, C
752 // Change: A = select B, C, false --> A = and B, C
755 // Change: A = select B, C, true --> A = or !B, C
760 // select a, b, a -> a&b
761 // select a, a, b -> a|b
767 // select a, ~a, b -> (~a)&b
768 // select a, b, ~a -> (~a)|b
778 // select C, 1, 0 -> zext C to int
782 // select C, -1, 0 -> sext C to int
786 // select C, 0, 1 -> zext !C to int
792 // select C, 0, -1 -> sext !C to int
871 // Turn (select C, (op X, Y), (op X, Z)) -> (op X, (select C, Y, Z))
876 // Turn select C, (X+Y), (X-Y) --> (X+(select C, Y, (-Y))). This is
900 // select C, (add X, Y), (sub X, Z)
924 // See if we can fold the select into one of our operands.
950 // See if we can fold the select into a phi node if the condition is a select.