Commit 09a8b7bb authored by Andreas Marek's avatar Andreas Marek
Browse files

Make ELPA (again) compile and run correctly with MPI and 32bit ints

parent d836eea2
......@@ -87,7 +87,7 @@ gnu-gnu-nompi-noopenmp-ilp64:
when: on_success
expire_in: 2 month
script:
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -xAVX\" FC=\"gfortram\" FCFLAGS=\"-O3 -xAVX\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MOMPI_NOOMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --disable-openmp --disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -mavx\" FC=\"gfortran\" FCFLAGS=\"-O3 -mavx\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_NOOMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --disable-openmp --disable-gpu --enable-avx --disable-avx2 --disable-avx512 --enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
 
 
# gnu-gnu-ilp64-nompi-openmp
......@@ -98,7 +98,7 @@ gnu-gnu-nompi-openmp-ilp64:
when: on_success
expire_in: 2 month
script:
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -xAVX\" FC=\"gfortram\" FCFLAGS=\"-O3 -xAVX\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MOMPI_OMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --enable-openmp --disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -mavx\" FC=\"gfortran\" FCFLAGS=\"-O3 -mavx\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_OMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --enable-openmp --disable-gpu --enable-avx --disable-avx2 --disable-avx512 --enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
 
 
# python tests
......
......@@ -59,6 +59,15 @@ export MKL_ANACONDA_INTEL_SCALAPACK_MPI_OMP_BASELINE="-L$ANACONDA_HOME/lib -lmkl
export MKL_ANACONDA_INTEL_SCALAPACK_FCFLAGS_MPI_OMP="-I$MKL_HOME/include/intel64/lp64"
export MKL_ANACONDA_INTEL_SCALAPACK_LDFLAGS_MPI_OMP="$MKL_ANACONDA_INTEL_SCALAPACK_MPI_OMP_BASELINE -Wl,-rpath,$ANACONDA_HOME/lib"
export MKL_GFORTRAN_SCALAPACK_NOMPI_NOOMP_ILP64_BASELINE="-L$MKL_HOME/lib/intel64 -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -lpthread"
export MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_NOOMP_ILP64="-I$MKL_HOME/include/intel64/ilp64"
export MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64="$MKL_GFORTRAN_SCALAPACK_NOMPI_NOOMP_ILP64_BASELINE -Wl,-rpath,$MKL_HOME/lib/intel64"
export MKL_GFORTRAN_SCALAPACK_NOMPI_OMP_ILP64_BASELINE="-L$MKL_HOME/lib/intel64 -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -lpthread"
export MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_OMP_ILP64="-I$MKL_HOME/include/intel64/ilp64"
export MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64="$MKL_GFORTRAN_SCALAPACK_NOMPI_OMP_ILP64_BASELINE -Wl,-rpath,$MKL_HOME/lib/intel64"
export ASAN_OPTIONS=suppressions=./ci_test_scripts/no_asan_for_mpi.supp,fast_unwind_on_malloc=0
export LSAN_OPTIONS=suppressions=./ci_test_scripts/no_lsan_for_mpi.supp
......
......@@ -343,12 +343,12 @@ ilp64_no_omp_tests = [
" expire_in: 2 month",
" script:",
' - ./ci_test_scripts/run_ci_tests.sh -c "'
'CC=\\"gcc\\" CFLAGS=\\"-O3 -xAVX\\" '
'FC=\\"gfortram\\" FCFLAGS=\\"-O3 -xAVX\\" '
'CC=\\"gcc\\" CFLAGS=\\"-O3 -mavx\\" '
'FC=\\"gfortran\\" FCFLAGS=\\"-O3 -mavx\\" '
'SCALAPACK_LDFLAGS=\\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64 \\" '
'SCALAPACK_FCFLAGS=\\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MOMPI_NOOMP_ILP64 \\" '
'SCALAPACK_FCFLAGS=\\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_NOOMP_ILP64 \\" '
'--enable-option-checking=fatal --with-mpi=no --disable-openmp '
'--disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }'
'--disable-gpu --enable-avx --disable-avx2 --disable-avx512 --enable-64bit-integer-support || { cat config.log; exit 1; }'
'" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE '
'-s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM',
"\n",
......@@ -361,12 +361,12 @@ ilp64_no_omp_tests = [
" expire_in: 2 month",
" script:",
' - ./ci_test_scripts/run_ci_tests.sh -c "'
'CC=\\"gcc\\" CFLAGS=\\"-O3 -xAVX\\" '
'FC=\\"gfortram\\" FCFLAGS=\\"-O3 -xAVX\\" '
'CC=\\"gcc\\" CFLAGS=\\"-O3 -mavx\\" '
'FC=\\"gfortran\\" FCFLAGS=\\"-O3 -mavx\\" '
'SCALAPACK_LDFLAGS=\\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64 \\" '
'SCALAPACK_FCFLAGS=\\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MOMPI_OMP_ILP64 \\" '
'SCALAPACK_FCFLAGS=\\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_OMP_ILP64 \\" '
'--enable-option-checking=fatal --with-mpi=no --enable-openmp '
'--disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }'
'--disable-gpu --enable-avx --disable-avx2 --disable-avx512 --enable-64bit-integer-support || { cat config.log; exit 1; }'
'" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE '
'-s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM',
"\n",
......
......@@ -144,9 +144,12 @@ then
echo "export TASKS=$mpiTasks" >> ./run_${CLUSTER}_1node_2GPU.sh
echo "make check TEST_FLAGS=\" $matrixSize $nrEV $blockSize \" " >> ./run_${CLUSTER}_1node_2GPU.sh
echo " " >> ./run_${CLUSTER}_1node_2GPU.sh
echo "exitCode=\$?" >> ./run_${CLUSTER}_1node_2GPU.sh
echo " " >> ./run_${CLUSTER}_1node_2GPU.sh
echo "#copy everything back from /tmp/elpa to runner directory" >> ./run_${CLUSTER}_1node_2GPU.sh
echo "cp -r * \$runner_path" >> ./run_${CLUSTER}_1node_2GPU.sh
echo "cd .. && rm -rf /tmp/elpa_\$SLURM_JOB_ID" >> ./run_${CLUSTER}_1node_2GPU.sh
echo "exit \$exitCode" >> ./run_${CLUSTER}_1node_2GPU.sh
echo " "
echo "Job script for the run"
......@@ -179,9 +182,12 @@ then
echo "export TASKS=$mpiTasks" >> ./run_${CLUSTER}_1node.sh
echo "make check TEST_FLAGS=\" $matrixSize $nrEV $blockSize \" " >> ./run_${CLUSTER}_1node.sh
echo " " >> ./run_${CLUSTER}_1node.sh
echo "exitCode=\$?" >> ./run_${CLUSTER}_1node.sh
echo " " >> ./run_${CLUSTER}_1node.sh
echo "#copy everything back from /tmp/elpa to runner directory" >> ./run_${CLUSTER}_1node.sh
echo "cp -r * \$runner_path" >> ./run_${CLUSTER}_1node.sh
echo "cd .. && rm -rf /tmp/elpa_\$SLURM_JOB_ID" >> ./run_${CLUSTER}_1node.sh
echo "exit \$exitCode" >> ./run_${CLUSTER}_1node.sh
echo " "
echo "Job script for the run"
......
......@@ -127,10 +127,12 @@ then
echo "export DISTCHECK_CONFIGURE_FLAGS=\" $distcheckConfigureArgs \" " >> ./run_${CLUSTER}_1node.sh
echo "make distcheck TEST_FLAGS=\" $matrixSize $nrEV $blockSize \" || { chmod u+rwX -R . ; exit 1 ; } " >> ./run_${CLUSTER}_1node.sh
echo " " >> ./run_${CLUSTER}_1node.sh
echo "exitCode=\$?" >> ./run_${CLUSTER}_1node.sh
echo " " >> ./run_${CLUSTER}_1node.sh
echo "#copy everything back from /tmp/elpa to runner directory" >> ./run_${CLUSTER}_1node.sh
echo "cp -r * \$runner_path" >> ./run_${CLUSTER}_1node.sh
echo "cd .. && rm -rf /tmp/elpa_\$SLURM_JOB_ID" >> ./run_${CLUSTER}_1node.sh
echo "exit \$exitCode" >> ./run_${CLUSTER}_1node.sh
echo " "
echo "Job script for the run"
cat ./run_${CLUSTER}_1node.sh
......
......@@ -175,12 +175,14 @@ then
echo "popd" >> ./run_${CLUSTER}_1node.sh
echo "pushd build" >> ./run_${CLUSTER}_1node.sh
echo "make distclean || { exit 1; }" >> ./run_${CLUSTER}_1node.sh
echo "exitCode=\$?" >> ./run_${CLUSTER}_1node.sh
echo "rm -rf installdest" >> ./run_${CLUSTER}_1node.sh
echo "popd" >> ./run_${CLUSTER}_1node.sh
echo " " >> ./run_${CLUSTER}_1node.sh
echo "#copy everything back from /tmp/elpa to runner directory" >> ./run_${CLUSTER}_1node.sh
echo "cp -r * \$runner_path" >> ./run_${CLUSTER}_1node.sh
echo "cd .. && rm -rf /tmp/elpa_\$SLURM_JOB_ID" >> ./run_${CLUSTER}_1node.sh
echo "exit \$exitCode" >> ./run_${CLUSTER}_1node.sh
echo " "
echo "Job script for the run"
cat ./run_${CLUSTER}_1node.sh
......
......@@ -109,7 +109,7 @@
use precision
use elpa_blas_interfaces
#ifdef WITH_MPI
use elpa_scalpack_interfaces
use elpa_scalapack_interfaces
#endif
use elpa_abstract_impl
......
......@@ -761,7 +761,7 @@
call PRECISION_TRMM('L', 'U', BLAS_TRANS_OR_CONJ, 'N', &
int(n_cols,kind=BLAS_KIND), int(l_cols,kind=BLAS_KIND), ONE, tmat(1,1,istep), &
int(ubound(tmat,dim=1),kind=BLAS_KIND), tmp1, int(n_cols,kind=BLAS_KIND)
int(ubound(tmat,dim=1),kind=BLAS_KIND), tmp1, int(n_cols,kind=BLAS_KIND))
call PRECISION_GEMM('N', 'N', int(l_rows,kind=BLAS_KIND), int(l_cols,kind=BLAS_KIND), &
int(n_cols,kind=BLAS_KIND), -ONE, hvm, int(ubound(hvm,dim=1),kind=BLAS_KIND), &
tmp1, int(n_cols,kind=BLAS_KIND), ONE, q_mat, int(ldq,kind=BLAS_KIND))
......
......@@ -74,7 +74,7 @@
#define cannons_triang_rectangular_c_impl_expand1(SUFFIX) cannons_triang_rectangular_c_impl_expand2(SUFFIX)
#define cannons_triang_rectangular_c_impl cannons_triang_rectangular_c_impl_expand1(ELPA_IMPL_SUFFIX)
void cannons_triang_rectangular_impl(math_type* U, math_type* B, C_INT_TYPE np_rows, C_INT_TYPE np_cols, C_INT_TYPE my_prow, C_INT_TYPE my_pcol, C_INT_TYPE_PTR U_desc, C_INT_TYPE_PTRb_desc, math_type *Res, MPI_Comm row_comm, MPI_Comm col_comm)
void cannons_triang_rectangular_impl(math_type* U, math_type* B, C_INT_TYPE np_rows, C_INT_TYPE np_cols, C_INT_TYPE my_prow, C_INT_TYPE my_pcol, C_INT_TYPE_PTR U_desc, C_INT_TYPE_PTR b_desc, math_type *Res, MPI_Comm row_comm, MPI_Comm col_comm)
{
// Cannons algorithm, Non-blocking version
// Input:
......
......@@ -75,7 +75,7 @@
#ifdef WITH_MPI
call cannons_reduction_&
&ELPA_IMPL_SUFFIX&
&(a, b, int(self%local_nrows,kind=kind=BLAS_KIND), int(self%local_ncols,kind=BLAS_KIND), &
&(a, b, int(self%local_nrows,kind=BLAS_KIND), int(self%local_ncols,kind=BLAS_KIND), &
int(sc_desc,kind=BLAS_KIND), tmp, int(BuffLevelInt,kind=BLAS_KIND), &
int(mpi_comm_rows,kind=BLAS_KIND), int(mpi_comm_cols,kind=BLAS_KIND))
#endif
......
......@@ -705,11 +705,11 @@
function zlange(NORM, M, N, A, LDA, WORK) result(norm2)
use PRECISION_MODULE
implicit none
character :: NORM
integer(kind=BLAS_KIND) :: M, N, LDA
complex(kind=ck8) :: A(lda, *)
complex(kind=ck8), intent(inout) :: work(*)
complex(kind=ck8) :: norm2
character :: NORM
integer(kind=BLAS_KIND) :: M, N, LDA
complex(kind=ck8) :: A(lda, *)
real(kind=rk8), intent(inout) :: work(*)
real(kind=rk8) :: norm2
end function
end interface
......@@ -877,11 +877,11 @@
function clange(NORM, M, N, A, LDA, WORK) result(norm2)
use PRECISION_MODULE
implicit none
character :: NORM
integer(kind=BLAS_KIND) :: M, N, LDA
complex(kind=ck4) :: A(lda, *)
complex(kind=ck4), intent(inout) :: work(*)
complex(kind=ck4) :: norm2
character :: NORM
integer(kind=BLAS_KIND) :: M, N, LDA
complex(kind=ck4) :: A(lda, *)
real(kind=rk4), intent(inout) :: work(*)
real(kind=rk4) :: norm2
end function
end interface
......
......@@ -41,9 +41,35 @@
! This file was written by A. Marek, MPCDF
!interface for descint
!interface for BLACS_Gridinit
!interface for BLACS_Gridinfo
interface
subroutine descinit(DESC, M, N, MB, NB, IRSRC, ICSRC, ICTXT, LLD, INFO)
use precision
implicit none
integer(kind=BLAS_KIND) :: DESC(*), M, N, MB, NB, IRSRC, ICSRC, LLD
integer(kind=BLAS_KIND), intent(inout) :: info
integer(kind=BLAS_KIND) :: ICTXT
end subroutine
end interface
interface
subroutine blacs_gridinit(ICONTXT, ORDER, NPROW, NPCOL)
use precision
implicit none
integer(kind=BLAS_KIND) :: ICONTXT
character(len=1) :: ORDER
integer(kind=BLAS_KIND) :: NPROW, NPCOL
end subroutine
end interface
interface
subroutine blacs_gridinfo(ICONTXT, NPROW, NPCOL, MYPROW, MYPCOL)
use precision
implicit none
integer(kind=BLAS_KIND) :: ICONTXT
integer(kind=BLAS_KIND), intent(inout) :: NPROW, NPCOL, MYPROW, MYPCOL
end subroutine
end interface
interface
function numroc(N, NB, IPROC, ISRCPROC, NPROCS) result(numr)
......@@ -209,8 +235,9 @@
implicit none
character :: norm
integer(kind=BLAS_KIND) :: m, n, ia, ja, desca(*)
complex(kind=ck8) :: a(*), work(*)
complex(kind=ck8) :: norm2
complex(kind=ck8) :: a(*)
real(kind=rk8) ::work(*)
real(kind=rk8) :: norm2
end function
end interface
......@@ -262,8 +289,9 @@
implicit none
character :: norm
integer(kind=BLAS_KIND) :: m, n, ia, ja, desca(*)
complex(kind=ck4) :: a(*), work(*)
complex(kind=ck4) :: norm2
complex(kind=ck4) :: a(*)
real(kind=rk4) ::work(*)
real(kind=rk4) :: norm2
end function
end interface
......@@ -6,7 +6,7 @@
#define C_INT_TYPE int
#endif
C_INT_TYPE numroc_(C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR^^^);
C_INT_TYPE numroc_(C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR);
void pdlacpy_(char*, C_INT_TYPE_PTR, C_INT_TYPE_PTR, double*, C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR, double*, C_INT_TYPE_PTR, C_INT_TYPE_PTR, C_INT_TYPE_PTR);
......
......@@ -51,6 +51,19 @@
#include <math.h>
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include <test/shared/generated.h>
#include <complex.h>
......
......@@ -51,6 +51,20 @@
#include <math.h>
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include <test/shared/generated.h>
int main(int argc, char** argv) {
......
......@@ -51,6 +51,18 @@
#include <math.h>
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include <test/shared/generated.h>
#include <complex.h>
......
......@@ -51,6 +51,19 @@
#include <math.h>
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include <test/shared/generated.h>
int main(int argc, char** argv) {
......
......@@ -51,6 +51,19 @@
#include <math.h>
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include <test/shared/generated.h>
#include <complex.h>
......
......@@ -52,6 +52,19 @@
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include "test/shared/generated.h"
#define DOUBLE_PRECISION_REAL 1
......
......@@ -51,6 +51,19 @@
#include <math.h>
#include <elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include <test/shared/generated.h>
#include <complex.h>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment