Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8315545

C1: x86 cmove can use short branches

XMLWordPrintable

    • b14
    • x86

        Spotted this minor inefficiency when looking at profiling code. C1 profiling code uses `cmove`-s often, and often with immediates, so `LIR_Assembler::cmove` ends up emitting the real jump over the alternative branch. But the alternative branch is just `{reg,stack,const}2reg` conversion, and it is guaranteed to be short. Therefore, we can use the short branch for that forward jump.

              shade Aleksey Shipilev
              shade Aleksey Shipilev
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: