[all-commits] [llvm/llvm-project] fadd1e: [AArch64] Enable CmpBcc fusion for Neoverse-v2 (#9...

Elvina Yakubova via All-commits all-commits at lists.llvm.org
Tue Jun 4 07:10:04 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fadd1ec536ce76acfd572364b0e118da54116e94
      https://github.com/llvm/llvm-project/commit/fadd1ec536ce76acfd572364b0e118da54116e94
  Author: Elvina Yakubova <eyakubova at nvidia.com>
  Date:   2024-06-04 (Tue, 04 Jun 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Processors.td
    A llvm/test/CodeGen/AArch64/misched-fusion-cmp-bcc.ll

  Log Message:
  -----------
  [AArch64] Enable CmpBcc fusion for Neoverse-v2 (#90608)

This adds compare and branch instructions fusion for Neoverse V2.
According to the Software Optimization Guide:
Specific Aarch64 instruction pairs that can be fused are as follows: 
CMP/CMN (immediate) + B.cond
CMP/CMN (register) + B.cond

Performance for SPEC2017 is neutral, but another benchmark improves
significantly.
Results for SPEC2017 on a Neoverse V2:
500.perlbench 0%
502.gcc_r 0%
505.mcf_r -0.15%
523.xalancbmk_r -0.43%
525.x264_r 0%
531.deepsjeng_r 0%
541.leela_r -0.16%
557.xz_r -0.47%



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list