Conditional/call optimization

   foo ? bar(x) : bar(y)  ==>  bar(foo ? x : y)