Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[NFC] Testcase for Issue #1413 #1450

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions test/f90_correct/inc/pgmath_avx512.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#

$(TEST): run

EXTFLAGS=-O3 -march=x86-64 -mtune=core-avx2 -mfma -mavx -mavx2 -mllvm -force-vector-width=16

build: $(SRC)/$(TEST).f90
-$(RM) $(TEST).$(EXESUFFIX) core *.d *.mod FOR*.DAT FTN* ftn* fort.*
@echo ------------------------------------ building test $@
-$(CC) -c $(CFLAGS) $(SRC)/check.c -o check.$(OBJX)
-$(FC) -c $(FFLAGS) $(EXTFLAGS) $(LDFLAGS) $(SRC)/$(TEST).f90 -o $(TEST).$(OBJX)
-$(FC) $(FFLAGS) $(LDFLAGS) $(TEST).$(OBJX) check.$(OBJX) $(LIBS) -o $(TEST).$(EXESUFFIX)


run:
@echo ------------------------------------ executing test $(TEST)
$(TEST).$(EXESUFFIX)

verify: ;

10 changes: 10 additions & 0 deletions test/f90_correct/lit/pgmath_avx512.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#
# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

# Shared lit script for each tests. Run bash commands that run tests with make.

# REQUIRES: x86_64-host
# RUN: env KEEP_FILES=%keep FLAGS=%flags TEST_SRC=%/s MAKE_FILE_DIR=%/S/.. bash %/S/runmake | tee %/t
# RUN: cat %t | FileCheck %S/runmake
37 changes: 37 additions & 0 deletions test/f90_correct/src/pgmath_avx512.f90
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
!
! Part of the LLVM Project, under the Apache License v2.0 with LLVM
! Exceptions.
! See https://llvm.org/LICENSE.txt for license information.
! SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
!
! Test for USE statement when there is rename of user-defined operator in the
! ONLY option.
! REQUIRES: x86_64-registered-target

program main
real (kind=8) :: a(128), b(128), c(128)
integer :: res,expect
res=1
expect=2
do i=1,100
c(i) = log(a(i)) + log(b(i))
enddo
call sub1(a,b,c,128,res)
call check(res,expect,1);

contains

subroutine sub1(a,b,c,N,res)
real(kind=8), intent(in) :: a(:), b(:)
real(kind=8), intent (out) :: c(:)
integer, intent(IN) :: N
integer, intent(OUT) :: res

do i=1,N,16
c(i) = exp(log(a(i))) + dlog(b(i))
enddo
res=2
end subroutine

end program

Loading