finalyze moving
This commit is contained in:
21
tests/sapfor/create_nested_loops/program.expected.f90
Normal file
21
tests/sapfor/create_nested_loops/program.expected.f90
Normal file
@@ -0,0 +1,21 @@
|
||||
program basiccreatenestedloops
|
||||
parameter (nx = 10,ny = 10)
|
||||
integer a(nx,ny),b(nx,ny)
|
||||
integer i,j,inv
|
||||
print *, "TEST START"
|
||||
do j = 1,ny
|
||||
do i = 1,nx
|
||||
a(i,j) = 1
|
||||
b(i,j) = 2
|
||||
enddo
|
||||
enddo
|
||||
do j = 1,ny
|
||||
do i = 1,nx
|
||||
inv = nx * ny
|
||||
a(i,j) = 1 + b(i,j) * inv
|
||||
enddo
|
||||
enddo
|
||||
print *, "Result",a(1,1),a(nx,1)
|
||||
print *, "TEST END"
|
||||
end
|
||||
|
||||
23
tests/sapfor/create_nested_loops/program.f90
Normal file
23
tests/sapfor/create_nested_loops/program.f90
Normal file
@@ -0,0 +1,23 @@
|
||||
program BasicCreateNestedLoops
|
||||
parameter (nx = 10, ny = 10)
|
||||
integer a(nx, ny), b(nx, ny)
|
||||
integer i, j, inv
|
||||
|
||||
print *, "TEST START"
|
||||
do j = 1, ny
|
||||
do i = 1, nx
|
||||
a(i, j) = 1
|
||||
b(i, j) = 2
|
||||
enddo
|
||||
enddo
|
||||
|
||||
do j = 1, ny
|
||||
inv = nx * ny
|
||||
do i = 1, nx
|
||||
a(i, j) = 1 + b(i, j) * inv
|
||||
enddo
|
||||
enddo
|
||||
|
||||
print*, "Result", a(1, 1), a(nx, 1)
|
||||
print *, "TEST END"
|
||||
end
|
||||
8
tests/sapfor/create_nested_loops/test.bat
Normal file
8
tests/sapfor/create_nested_loops/test.bat
Normal file
@@ -0,0 +1,8 @@
|
||||
setlocal
|
||||
rmdir /s /q sapfor_out
|
||||
SET PARSER_EXEC=..\..\..\_bin\x64\Debug\Parser.exe
|
||||
SET SAPFOR_EXEC=..\..\..\_bin\x64\Debug\Sapfor.exe
|
||||
%PARSER_EXEC% program.f90
|
||||
if not exist "sapfor_out" mkdir sapfor_out
|
||||
%SAPFOR_EXEC% -pass 3 -F sapfor_out -print
|
||||
FC /w program.expected.f90 sapfor_out/program.f90
|
||||
26
tests/sapfor/create_nested_loops/test.sh
Normal file
26
tests/sapfor/create_nested_loops/test.sh
Normal file
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
../../clean.sh
|
||||
source ../../env.sh
|
||||
../../../_bin/$PARSER_EXEC program.f90
|
||||
gfortran program.f90 -o program.exe
|
||||
./program.exe > program.out.txt
|
||||
mkdir sapfor_out
|
||||
../../../_bin/$SAPFOR_EXEC -pass 3 -F sapfor_out -print
|
||||
gfortran sapfor_out/program.f90 -o sapfor_out/program.exe
|
||||
sapfor_out/program.exe > sapfor_out/program.out.txt
|
||||
diff program.out.txt sapfor_out/program.out.txt > diff.txt
|
||||
if [ -s diff.txt ]; then
|
||||
(>&2 echo "ERROR: Sapfor result program behavior differs from original program")
|
||||
echo "ERROR: Sapfor result program behavior differs from original program" > FAILURE
|
||||
else
|
||||
echo "Sapfor result program behavior is same as original program"
|
||||
echo "Checking sources"
|
||||
diff -b program.expected.f90 sapfor_out/program.f90 > diff.txt
|
||||
if [ -s diff.txt ]; then
|
||||
(>&2 echo "ERROR: Sapfor result program code differs from original program")
|
||||
echo "ERROR: Sapfor result program code differs from original program" > FAILURE
|
||||
else
|
||||
echo "SUCCESS: Sapfor result as expected (sources and compiled)"
|
||||
echo "SUCCESS: Sapfor result as expected (sources and compiled)" > SUCCESS
|
||||
fi
|
||||
fi
|
||||
Reference in New Issue
Block a user