Skip to content

Commit cbf34e4

Browse files
authored
Merge branch 'FFTW:master' into master
2 parents 8806866 + 0842f00 commit cbf34e4

File tree

7 files changed

+37
-35
lines changed

7 files changed

+37
-35
lines changed

CMakeLists.txt

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,7 @@ if (HAVE_AVX2)
279279
list (APPEND SOURCEFILES ${fftw_dft_simd_avx2_SOURCE} ${fftw_rdft_simd_avx2_SOURCE})
280280
endif ()
281281

282-
set (FFTW_VERSION 3.3.9)
282+
set (FFTW_VERSION 3.3.10)
283283

284284
set (PREC_SUFFIX)
285285
if (ENABLE_FLOAT)
@@ -314,19 +314,29 @@ if (MSVC AND NOT (CMAKE_C_COMPILER_ID STREQUAL "Intel"))
314314
target_compile_definitions (${fftw3_lib} PRIVATE /bigobj)
315315
endif ()
316316
if (HAVE_SSE)
317-
target_compile_options (${fftw3_lib} PRIVATE ${SSE_FLAG})
317+
set_source_files_properties (${fftw_dft_simd_sse2_SOURCE}
318+
${fftw_rdft_simd_sse2_SOURCE}
319+
PROPERTIES COMPILE_FLAGS "${SSE_FLAG}")
318320
endif ()
319321
if (HAVE_SSE2)
320-
target_compile_options (${fftw3_lib} PRIVATE ${SSE2_FLAG})
322+
set_source_files_properties (${fftw_dft_simd_sse2_SOURCE}
323+
${fftw_rdft_simd_sse2_SOURCE}
324+
PROPERTIES COMPILE_FLAGS "${SSE2_FLAG}")
321325
endif ()
322326
if (HAVE_AVX)
323-
target_compile_options (${fftw3_lib} PRIVATE ${AVX_FLAG})
327+
set_source_files_properties (${fftw_dft_simd_avx_SOURCE}
328+
${fftw_rdft_simd_avx_SOURCE}
329+
PROPERTIES COMPILE_FLAGS "${AVX_FLAG}")
324330
endif ()
325331
if (HAVE_AVX2)
326-
target_compile_options (${fftw3_lib} PRIVATE ${AVX2_FLAG})
332+
set_source_files_properties (${fftw_dft_simd_avx2_SOURCE}
333+
${fftw_rdft_simd_avx2_SOURCE}
334+
PROPERTIES COMPILE_FLAGS "${AVX2_FLAG}")
327335
endif ()
328336
if (HAVE_FMA)
329-
target_compile_options (${fftw3_lib} PRIVATE ${FMA_FLAG})
337+
set_source_files_properties (${fftw_dft_simd_avx2_SOURCE}
338+
${fftw_rdft_simd_avx2_SOURCE}
339+
PROPERTIES COMPILE_FLAGS "${FMA_FLAG}")
330340
endif ()
331341
if (HAVE_LIBM)
332342
target_link_libraries (${fftw3_lib} m)

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -610,7 +610,7 @@ fi
610610

611611
dnl add gcc warnings, in debug/maintainer mode only
612612
if test "$enable_debug" = yes || test "$USE_MAINTAINER_MODE" = yes; then
613-
if test "$ac_test_CFLAGS" != "set"; then
613+
if test "x$ac_test_CFLAGS" != "xset" -a "x$ac_test_CFLAGS" != "xy"; then
614614
if test $ac_cv_prog_gcc = yes; then
615615
CFLAGS="$CFLAGS -Wall -W -Wcast-qual -Wpointer-arith -Wcast-align -pedantic -Wno-long-long -Wshadow -Wbad-function-cast -Wwrite-strings -Wstrict-prototypes -Wredundant-decls -Wnested-externs" # -Wundef -Wconversion -Wmissing-prototypes -Wmissing-declarations
616616
fi

doc/reference.texi

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ Include the @emph{same} @code{<fftw3.h>} header file.
103103
Replace all lowercase instances of @samp{fftw_} with @samp{fftwf_} or
104104
@samp{fftwl_} for single or long-double precision, respectively.
105105
(@code{fftw_complex} becomes @code{fftwf_complex}, @code{fftw_execute}
106-
becomes @code{fftwf_execute}, etcetera.)
106+
becomes @code{fftwf_execute}, etc.)
107107

108108
@item
109109
Uppercase names, i.e. names beginning with @samp{FFTW_}, remain the
@@ -176,7 +176,7 @@ fftw_complex *fftw_alloc_complex(size_t n);
176176
@findex fftw_alloc_complex
177177

178178
The equivalent functions in other precisions allocate arrays of @code{n}
179-
elements in that precision. e.g. @code{fftwf_alloc_real(n)} is
179+
elements in that precision, e.g. @code{fftwf_alloc_real(n)} is
180180
equivalent to @code{(float *) fftwf_malloc(sizeof(float) * n)}.
181181
@cindex precision
182182

@@ -234,7 +234,7 @@ accumulating wisdom information again.
234234
memory leaks, you must still call @code{fftw_destroy_plan} before
235235
executing @code{fftw_cleanup}.
236236

237-
Occasionally, it may useful to know FFTW's internal ``cost'' metric
237+
Occasionally, it may be useful to know FFTW's internal ``cost'' metric
238238
that it uses to compare plans to one another; this cost is
239239
proportional to an execution time of the plan, in undocumented units,
240240
if the plan was created with the @code{FFTW_MEASURE} or other
@@ -283,7 +283,7 @@ char *fftw_sprint_plan(const fftw_plan plan);
283283
@findex fftw_print_plan
284284

285285
This outputs a ``nerd-readable'' representation of the @code{plan} to
286-
the given file, to @code{stdout}, or two a newly allocated
286+
the given file, to @code{stdout}, or to a newly allocated
287287
NUL-terminated string (which the caller is responsible for deallocating
288288
with @code{free}), respectively.
289289

@@ -890,7 +890,7 @@ introduction to these transform kinds, see @ref{More DFTs of Real Data}.
890890
For dimension of size @code{n}, there is a corresponding ``logical''
891891
dimension @code{N} that determines the normalization (and the optimal
892892
factorization); the formula for @code{N} is given for each kind below.
893-
Also, with each transform kind is listed its corrsponding inverse
893+
Also, with each transform kind is listed its corresponding inverse
894894
transform. FFTW computes unnormalized transforms: a transform followed
895895
by its inverse will result in the original data multiplied by @code{N}
896896
(or the product of the @code{N}'s for each dimension, in
@@ -1044,7 +1044,7 @@ row-major subarrays of larger rank-@code{rank} arrays, described by
10441044
and @code{n} should be elementwise less than or equal to
10451045
@{@code{i},@code{o}@}@code{nembed}. Passing @code{NULL} for an
10461046
@code{nembed} parameter is equivalent to passing @code{n} (i.e. same
1047-
physical and logical dimensions, as in the basic interface.)
1047+
physical and logical dimensions, as in the basic interface).
10481048

10491049
The @code{stride} parameters indicate that the @code{j}-th element of
10501050
the input or output arrays is located at @code{j*istride} or
@@ -1125,7 +1125,7 @@ Like @code{fftw_plan_many_dft}, these two functions add @code{howmany},
11251125
@code{fftw_plan_dft_r2c} and @code{fftw_plan_dft_c2r} functions, but
11261126
otherwise behave the same as the basic interface.
11271127

1128-
The interpretation of @code{howmany}, @code{stride}, and @code{dist} are
1128+
The interpretation of @code{howmany}, @code{stride}, and @code{dist} is
11291129
the same as for @code{fftw_plan_many_dft}, above. Note that the
11301130
@code{stride} and @code{dist} for the real array are in units of
11311131
@code{double}, and for the complex array are in units of
@@ -1162,10 +1162,10 @@ fftw_plan fftw_plan_many_r2r(int rank, const int *n, int howmany,
11621162
@end example
11631163
@findex fftw_plan_many_r2r
11641164

1165-
Like @code{fftw_plan_many_dft}, this functions adds @code{howmany},
1165+
Like @code{fftw_plan_many_dft}, this function adds @code{howmany},
11661166
@code{nembed}, @code{stride}, and @code{dist} parameters to the
1167-
@code{fftw_plan_r2r} function, but otherwise behave the same as the
1168-
basic interface. The interpretation of those additional parameters are
1167+
@code{fftw_plan_r2r} function, but otherwise behaves the same as the
1168+
basic interface. The interpretation of those additional parameters is
11691169
the same as for @code{fftw_plan_many_dft}. (Of course, the
11701170
@code{stride} and @code{dist} parameters are now in units of
11711171
@code{double}, not @code{fftw_complex}.)
@@ -1282,7 +1282,7 @@ A row-major multidimensional array with dimensions @code{n[rank]}
12821282
(@pxref{Row-major Format}) corresponds to @code{dims[i].n} =
12831283
@code{n[i]} and the recurrence @code{dims[i].is} = @code{n[i+1] *
12841284
dims[i+1].is} (similarly for @code{os}). The stride of the last
1285-
(@code{i=rank-1}) dimension is the overall stride of the array.
1285+
(@code{i=rank-1}) dimension is the overall stride of the array,
12861286
e.g. to be equivalent to the advanced complex-DFT interface, you would
12871287
have @code{dims[rank-1].is} = @code{istride} and
12881288
@code{dims[rank-1].os} = @code{ostride}.
@@ -1566,7 +1566,7 @@ detailed below, provided that the following conditions are met:
15661566
@itemize @bullet
15671567

15681568
@item
1569-
The array size, strides, etcetera are the same (since those are set by
1569+
The array size, strides, etc. are the same (since those are set by
15701570
the plan).
15711571

15721572
@item
@@ -1621,7 +1621,7 @@ if necessary).
16211621
If you are tempted to use the new-array execute interface because you
16221622
want to transform a known bunch of arrays of the same size, you should
16231623
probably go use the advanced interface instead (@pxref{Advanced
1624-
Interface})).
1624+
Interface}).
16251625

16261626
The new-array execute functions are:
16271627

@@ -1723,7 +1723,7 @@ convenience, the following three ``wrapper'' routines are provided:
17231723
@code{filename} (which is created or overwritten), returning @code{1}
17241724
on success and @code{0} on failure. A lower-level function, which
17251725
requires you to open and close the file yourself (e.g. if you want to
1726-
write wisdom to a portion of a larger file) is
1726+
write wisdom to a portion of a larger file), is
17271727
@code{fftw_export_wisdom_to_file}. This writes the wisdom to the
17281728
current position in @code{output_file}, which should be open with
17291729
write permission; upon exit, the file remains open and is positioned
@@ -1771,7 +1771,7 @@ the following three ``wrapper'' routines are provided:
17711771
@code{fftw_import_wisdom_from_filename} reads wisdom from a file named
17721772
@code{filename}. A lower-level function, which requires you to open
17731773
and close the file yourself (e.g. if you want to read wisdom from a
1774-
portion of a larger file) is @code{fftw_import_wisdom_from_file}. This
1774+
portion of a larger file), is @code{fftw_import_wisdom_from_file}. This
17751775
reads wisdom from the current position in @code{input_file} (which
17761776
should be open with read permission); upon exit, the file remains
17771777
open, but the position of the read pointer is unspecified.
@@ -1812,7 +1812,7 @@ merely summarize them here, since they come with their own @code{man}
18121812
pages for Unix and GNU systems (with HTML versions on our web site).
18131813

18141814
The first program is @code{fftw-wisdom} (or @code{fftwf-wisdom} in
1815-
single precision, etcetera), which can be used to create a wisdom file
1815+
single precision, etc.), which can be used to create a wisdom file
18161816
containing plans for any of the transform sizes and types supported by
18171817
FFTW. It is preferable to create wisdom directly from your executable
18181818
(@pxref{Caveats in Using Wisdom}), but this program is useful for
@@ -2438,7 +2438,7 @@ peculiar array format described in more detail by @ref{Real-data DFT
24382438
Array Format}.
24392439

24402440
The multi-dimensional c2r transform is simply the unnormalized inverse
2441-
of the r2c transform. i.e. it is the same as FFTW's complex backward
2441+
of the r2c transform, i.e. it is the same as FFTW's complex backward
24422442
multi-dimensional DFT, operating on a Hermitian input array in the
24432443
peculiar format mentioned above and outputting a real array (since the
24442444
DFT output is purely real).

genfft/annotate.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ let reorder l =
8585
let b' = List.map (fun (a, _) -> a) c' in
8686
a :: (loop b') in
8787
let l' = List.map (fun x -> x, uniq (find_block_vars x)) l in
88-
(* start with smallest block --- does this matter ? *)
88+
(* start with smallest block --- does this matter? *)
8989
match l' with
9090
[] -> []
9191
| _ ->

genfft/c.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ and unparse_function = function
249249

250250

251251
(*************************************************************
252-
* traverse a a function and return a list of all expressions,
252+
* traverse a function and return a list of all expressions,
253253
* in the execution order
254254
**************************************************************)
255255
let rec fcn_to_expr_list = fun (Fcn (_, _, _, body)) -> ast_to_expr_list body

genfft/number.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
unity, since the Num package only supplies simple arithmetic. The
3434
arbitrary-precision operations in Num look like the normal
3535
operations except that they have an appended slash (e.g. +/ -/ */
36-
// etcetera). *)
36+
// etc.). *)
3737

3838
open Num
3939

tests/fftw-bench.c

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -291,13 +291,5 @@ void cleanup(void)
291291
FFTW(cleanup)();
292292
#endif
293293

294-
# ifdef FFTW_DEBUG_MALLOC
295-
{
296-
/* undocumented memory checker */
297-
FFTW_EXTERN void FFTW(malloc_print_minfo)(int v);
298-
FFTW(malloc_print_minfo)(verbose);
299-
}
300-
# endif
301-
302294
final_cleanup();
303295
}

0 commit comments

Comments
 (0)