PPC64: Implement special MachNodes for floating point CMove

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • 27
    • Affects Version/s: 27
    • Component/s: hotspot
    • None
    • Fix Understood
    • ppc

      Task is to implement MachNodes which match the following trees:
      match(Set dst (CMoveF (Binary cop (CmpF op1 op2)) (Binary src1 src2)));
      match(Set dst (CMoveD (Binary cop (CmpD op1 op2)) (Binary src1 src2)));
      match(Set dst (CMoveF (Binary cop (CmpD op1 op2)) (Binary src1 src2)));
      match(Set dst (CMoveD (Binary cop (CmpF op1 op2)) (Binary src1 src2)));
      (Note that we don't need to distinguish between F and D because Power always uses the double format for registers.)

      Power9 has useful instructions available:
      xscmpeqdp
      xscmpgedp
      xscmpgtdp
      xxsel

            Assignee:
            David Briemann
            Reporter:
            David Briemann
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: