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

Loop alignment may be added inside the loop body

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 9
    • None
    • hotspot
    • None
    • b120

      When running scimark on aarch64:

       ;; B16: # B17 <- B21 top-of-loop Freq: 2305.21

        0x000003ffa126f710: add w17, w11, w12 ;*iadd {reexecute=0 rethrow=0 return_oop=0}
                                                      ; - jnt.scimark2.FFT::transform_internal@243 (line 129)

        0x000003ffa126f714: nop
        0x000003ffa126f718: nop
        0x000003ffa126f71c: nop ;*iconst_2 {reexecute=0 rethrow=0 return_oop=0}
                                                      ; - jnt.scimark2.FFT::transform_internal@238 (line 129)

       ;; B17: # B32 B18 <- B25 B16 Loop: B17-B16 inner Freq: 3056.06

        0x000003ffa126f720: lsl w16, w17, #1 ;*imul {reexecute=0 rethrow=0 return_oop=0}
                                                      ; - jnt.scimark2.FFT::transform_internal@244 (line 129)

      The 3 nops are added by the code that align loops: the top of loop block is first encountered and its alignment is set, the loop head is later encountered through the backbranch of an outer loop.

            roland Roland Westrelin
            roland Roland Westrelin
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: