@@ -30,6 +30,77 @@ if(WIN32)
30
30
endif ()
31
31
endif ()
32
32
33
+ set (_elementwise_sources
34
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/elementwise_common.cpp
35
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/abs.cpp
36
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/acos.cpp
37
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/acosh.cpp
38
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/add.cpp
39
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/asin.cpp
40
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/asinh.cpp
41
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/atan.cpp
42
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/atan2.cpp
43
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/atanh.cpp
44
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/bitwise_and.cpp
45
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/bitwise_invert.cpp
46
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/bitwise_left_shift.cpp
47
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/bitwise_or.cpp
48
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/bitwise_right_shift.cpp
49
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/bitwise_xor.cpp
50
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/cbrt.cpp
51
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/ceil.cpp
52
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/conj.cpp
53
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/copysign.cpp
54
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/cos.cpp
55
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/cosh.cpp
56
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/equal.cpp
57
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/exp.cpp
58
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/exp2.cpp
59
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/expm1.cpp
60
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/floor_divide.cpp
61
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/floor.cpp
62
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/greater_equal.cpp
63
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/greater.cpp
64
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/hypot.cpp
65
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/imag.cpp
66
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/isfinite.cpp
67
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/isinf.cpp
68
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/isnan.cpp
69
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/less_equal.cpp
70
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/less.cpp
71
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/log.cpp
72
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/log1p.cpp
73
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/log2.cpp
74
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/log10.cpp
75
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/logaddexp.cpp
76
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/logical_and.cpp
77
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/logical_not.cpp
78
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/logical_or.cpp
79
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/logical_xor.cpp
80
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/maximum.cpp
81
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/minimum.cpp
82
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/multiply.cpp
83
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/negative.cpp
84
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/not_equal.cpp
85
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/positive.cpp
86
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/pow.cpp
87
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/proj.cpp
88
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/real.cpp
89
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/remainder.cpp
90
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/round.cpp
91
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/rsqrt.cpp
92
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/sign.cpp
93
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/signbit.cpp
94
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/sin.cpp
95
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/sinh.cpp
96
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/sqrt.cpp
97
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/square.cpp
98
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/subtract.cpp
99
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/tan.cpp
100
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/tanh.cpp
101
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/true_divide.cpp
102
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/trunc.cpp
103
+ )
33
104
set (_tensor_impl_sources
34
105
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/tensor_py.cpp
35
106
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/accumulators.cpp
@@ -47,13 +118,12 @@ set(_tensor_impl_sources
47
118
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/where.cpp
48
119
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/boolean_reductions.cpp
49
120
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/device_support_queries.cpp
50
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions1.cpp
51
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions2.cpp
52
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions3.cpp
53
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions4.cpp
54
121
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/repeat.cpp
55
122
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/reduction_over_axis.cpp
56
123
)
124
+ list (APPEND _tensor_impl_sources
125
+ ${_elementwise_sources}
126
+ )
57
127
58
128
set (python_module_name _tensor_impl )
59
129
pybind11_add_module (${python_module_name} MODULE ${_tensor_impl_sources} )
@@ -66,11 +136,10 @@ endif()
66
136
set (_no_fast_math_sources
67
137
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/full_ctor.cpp
68
138
${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/linear_sequences.cpp
69
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions1.cpp
70
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions2.cpp
71
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions3.cpp
72
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions4.cpp
73
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/reduction_over_axis.cpp
139
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/reduction_over_axis.cpp
140
+ )
141
+ list (APPEND _no_fast_math_sources
142
+ ${_elementwise_sources}
74
143
)
75
144
foreach (_src_fn ${_no_fast_math_sources} )
76
145
get_source_file_property (_cmpl_options_prop ${_src_fn} COMPILE_OPTIONS )
@@ -82,7 +151,8 @@ foreach(_src_fn ${_no_fast_math_sources})
82
151
endforeach ()
83
152
if (UNIX )
84
153
set_source_files_properties (
85
- ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions.cpp
154
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/abs.cpp
155
+ ${CMAKE_CURRENT_SOURCE_DIR} /libtensor/source/elementwise_functions/sqrt.cpp
86
156
PROPERTIES COMPILE_DEFINITIONS "USE_STD_ABS_FOR_COMPLEX_TYPES;USE_STD_SQRT_FOR_COMPLEX_TYPES" )
87
157
endif ()
88
158
target_compile_options (${python_module_name} PRIVATE -fno-sycl-id-queries-fit-in-int )
0 commit comments