brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · 88b31da Raw
23 lines · plain
1! test that -fveclib= is passed to the backend2! RUN: %if aarch64-registered-target %{ %flang -S -Ofast -target aarch64-unknown-linux-gnu -fveclib=SLEEF -o - %s | FileCheck %s --check-prefix=SLEEF %}3! RUN: %if x86-registered-target %{ %flang -S -Ofast -target x86_64-unknown-linux-gnu -fveclib=libmvec -o - %s | FileCheck %s %}4! RUN: %if aarch64-registered-target %{ %flang -S -Ofast -target aarch64-unknown-linux-gnu -fveclib=libmvec -march=armv8.2-a+nosve -o - %s | FileCheck %s --check-prefix=LIBMVEC-AARCH64-NEON %}5! RUN: %if aarch64-registered-target %{ %flang -S -Ofast -target aarch64-unknown-linux-gnu -fveclib=libmvec -march=armv8.2-a+sve -o - %s | FileCheck %s --check-prefix=LIBMVEC-AARCH64-SVE %}6! RUN: %if x86-registered-target %{ %flang -S -O3 -ffast-math -target x86_64-unknown-linux-gnu -fveclib=AMDLIBM -o - %s | FileCheck %s --check-prefix=AMDLIBM %}7! RUN: %flang -S -Ofast -fveclib=NoLibrary -o - %s | FileCheck %s --check-prefix=NOLIB8 9subroutine sb(a, b)10  real :: a(:), b(:)11  integer :: i12  do i=1,10013! check that we used a vectorized call to powf()14! CHECK: _ZGVbN4vv_powf15! SLEEF: _ZGVnN4vv_powf16! LIBMVEC-AARCH64-NEON: _ZGVnN4vv_powf17! LIBMVEC-AARCH64-SVE: _ZGVsMxvv_powf18! AMDLIBM: amd_vrs4_powf19! NOLIB: powf20    a(i) = a(i) ** b(i)21  end do22end subroutine23