- Timestamp:
- 05/07/19 14:20:33 (6 years ago)
- Location:
- trunk/HeuristicLab.ExtLibs/HeuristicLab.NativeInterpreter/0.1
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/HeuristicLab.ExtLibs/HeuristicLab.NativeInterpreter/0.1/NativeInterpreter-0.1/src/interpreter.h
r16701 r16905 118 118 case OpCodes::CubeRoot: 119 119 { 120 in.value = hl_ pow(code[in.childIndex].value, 1./3.);120 in.value = hl_cbrt(code[in.childIndex].value); 121 121 break; 122 122 } … … 272 272 case OpCodes::CubeRoot: 273 273 { 274 pow(in.buf, code[in.childIndex].buf, 1./3.);274 cbrt(in.buf, code[in.childIndex].buf); 275 275 break; 276 276 } -
trunk/HeuristicLab.ExtLibs/HeuristicLab.NativeInterpreter/0.1/NativeInterpreter-0.1/src/vector_operations.h
r16701 r16905 17 17 #define hl_sqrt vdt::fast_sqrt 18 18 #define hl_pow vdt::fast_pow 19 #define hl_cbrt std::cbrt 19 20 #define hl_round vdt::fast_round 20 21 #define hl_inv vdt::fast_inv … … 28 29 #define hl_sqrt std::sqrt 29 30 #define hl_pow std::pow 31 #define hl_cbrt std::cbrt 30 32 #define hl_round std::round 31 33 #define hl_inv(x) 1. / x; … … 56 58 inline void pow(double* __restrict a, double const * __restrict b) noexcept { FOR(i) a[i] = hl_pow(a[i], hl_round(b[i])); }; 57 59 inline void root(double* __restrict a, double const * __restrict b) noexcept { FOR(i) a[i] = hl_pow(a[i], 1. / hl_round(b[i])); }; 60 inline void cbrt(double* __restrict a, double const * __restrict b) noexcept { FOR(i) a[i] = hl_cbrt(b[i]); }; 58 61 inline void square(double* __restrict a, double const * __restrict b) noexcept { FOR(i) a[i] = hl_pow(b[i], 2.); }; 59 62 inline void inv(double* __restrict a, double const * __restrict b) noexcept { FOR(i) a[i] = hl_inv(b[i]); } … … 81 84 inline void round(double* __restrict a) noexcept { FOR(i) a[i] = hl_round(a[i]); } 82 85 inline void square(double* __restrict a) noexcept { FOR(i) a[i] = hl_pow(a[i], 2.); } 86 inline void cbrt(double* __restrict a) noexcept { FOR(i) a[i] = hl_cbrt(a[i]); } 83 87 84 88 #undef FOR
Note: See TracChangeset
for help on using the changeset viewer.