()
| 634 | // If any input is a float, flip to a float-flavored opcode and widen any |
| 635 | // non-float input. |
| 636 | public final Node widen() { |
| 637 | if( !hasFloatInput() ) return this; |
| 638 | Node flt = copyF(); |
| 639 | if( flt==null ) return this; |
| 640 | for( int i=1; i<nIns(); i++ ) |
| 641 | flt.setDef(i, in(i)._type instanceof TypeFloat ? in(i) : new ToFloatNode(in(i)).peephole()); |
| 642 | kill(); |
| 643 | return flt; |
| 644 | } |
| 645 | private boolean hasFloatInput() { |
| 646 | for( int i=1; i<nIns(); i++ ) |
| 647 | if( in(i)._type instanceof TypeFloat ) |