[llvm] [AArch64] Enable maximising scalable vector bandwidth (PR #166748)

Shunsuke Watanabe via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 2 23:00:36 PST 2025


s-watanabe314 wrote:

@sdesmalen-arm @MacDue 
Thank you for the patch! The 12 tests including the program mentioned above have been resolved by #170315.
However, other Fortran tests are still failing. Could you please investigate these as well? I apologize for not sharing them in advance.

The two failing tests are listed below. The environment and options are the same as before: AWS Graviton3 with `-O3 -march=armv8.4-a+sve -msve-vector-bits=256`.

- [0630_0026.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0630/0630_0026.f)
```
      DIMENSION B(100),C(100,100)
      do j=1,100
      do i=1,100
       b(i) = i +j
       c(i,j) = i+ j + 1
      enddo
      enddo
      m = 100
      n = 100
      call sub(B,C,M,N)
      write(6,*) c
      stop
      end
      SUBROUTINE SUB(B,C,M,N)
      real * 8,pointer :: ap(:)
      real * 8,dimension(100),target :: a
      dimension  B(100),C(100,100)
      ap=>a

      do i=1,100
       a(i) = i
      enddo

      DO J=1,100 
       DO I=1,M 
        A(I) = B(I)
       ENDDO
       DO I=1,N 
        C(I,J) = A(I)
       ENDDO
      ENDDO
      PRINT*, C
      end

```
- [0630_0028.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0630/0630_0028.f)
```
      real * 8 :: a(100)
      DIMENSION B(100),C(100,100)
      do j=1,100
      do i=1,100
       a(i) = i
       b(i) = i +j
       c(i,j) = i+ j + 1
      enddo
      enddo
      m = 50
      n=51
      call sub(A,B,C,M,N)
      write(6,*) c
      contains
       SUBROUTINE SUB(A,B,C,M,N)
       real * 8 :: a(*)
       dimension  B(100),c(100,100)

       DO J=1,100 
        DO I=1,M 
         A(I) = B(I)
        ENDDO
        DO I=1,N 
         C(I,J) = A(I)
        ENDDO
       ENDDO
       PRINT*, C
       end subroutine sub
      end
 ```

For reference, the following are the 12 tests that were resolved by #170315:
- [0035_0013.cc](https://github.com/fujitsu/compiler-test-suite/blob/main/C%2B%2B/0035/0035_0013.cc)
- [0356_0117.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0356/0356_0117.f)
- [0363_0136.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0363/0363_0136.f)
- [0363_0137.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0363/0363_0137.f)
- [0363_0265.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0363/0363_0265.f)
- [0363_0266.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0363/0363_0266.f)
- [0363_0339.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0363/0363_0339.f)
- [0363_0340.f](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0363/0363_0340.f)
- [0681_0041.f90](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0681/0681_0041.f90)
- [0681_0043.f90](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0681/0681_0043.f90)
- [0683_0150.f90](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0683/0683_0150.f90)
- [0683_0152.f90](https://github.com/fujitsu/compiler-test-suite/blob/main/Fortran/0683/0683_0152.f90)

https://github.com/llvm/llvm-project/pull/166748


More information about the llvm-commits mailing list