Mercurial > hg > octave-lyh
diff liboctave/mx-inlines.cc @ 10365:532802559f39
remove mx_*_dup relics from mx-inlines.cc
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Fri, 26 Feb 2010 12:22:00 +0100 |
parents | b47ab50a6aa8 |
children | e8811e5dd699 |
line wrap: on
line diff
--- a/liboctave/mx-inlines.cc +++ b/liboctave/mx-inlines.cc @@ -407,55 +407,6 @@ return true; } -#define OP_DUP_FCN(OP, F, R, T) \ - static inline R * \ - F (const T *x, size_t n) \ - { \ - R *r = 0; \ - if (n > 0) \ - { \ - r = new R [n]; \ - for (size_t i = 0; i < n; i++) \ - r[i] = OP (x[i]); \ - } \ - return r; \ - } - -OP_DUP_FCN (, mx_inline_dup, double, double) -OP_DUP_FCN (, mx_inline_dup, Complex, Complex) -OP_DUP_FCN (, mx_inline_dup, float, float) -OP_DUP_FCN (, mx_inline_dup, FloatComplex, FloatComplex) - -// These should really return a bool *. Also, they should probably be -// in with a collection of other element-by-element boolean ops. -OP_DUP_FCN (0.0 ==, mx_inline_not, double, double) -OP_DUP_FCN (0.0 ==, mx_inline_not, double, Complex) - -OP_DUP_FCN (, mx_inline_make_complex, Complex, double) - -OP_DUP_FCN (-, mx_inline_change_sign, double, double) -OP_DUP_FCN (-, mx_inline_change_sign, Complex, Complex) - -OP_DUP_FCN (std::abs, mx_inline_fabs_dup, double, double) -OP_DUP_FCN (std::abs, mx_inline_cabs_dup, double, Complex) -OP_DUP_FCN (real, mx_inline_real_dup, double, Complex) -OP_DUP_FCN (imag, mx_inline_imag_dup, double, Complex) -OP_DUP_FCN (conj, mx_inline_conj_dup, Complex, Complex) - -OP_DUP_FCN (0.0 ==, mx_inline_not, float, float) -OP_DUP_FCN (static_cast<float>(0.0) ==, mx_inline_not, float, FloatComplex) - -OP_DUP_FCN (, mx_inline_make_complex, FloatComplex, float) - -OP_DUP_FCN (-, mx_inline_change_sign, float, float) -OP_DUP_FCN (-, mx_inline_change_sign, FloatComplex, FloatComplex) - -OP_DUP_FCN (std::abs, mx_inline_fabs_dup, float, float) -OP_DUP_FCN (std::abs, mx_inline_cabs_dup, float, FloatComplex) -OP_DUP_FCN (real, mx_inline_real_dup, float, FloatComplex) -OP_DUP_FCN (imag, mx_inline_imag_dup, float, FloatComplex) -OP_DUP_FCN (conj, mx_inline_conj_dup, FloatComplex, FloatComplex) - // FIXME: Due to a performance defect in g++ (<= 4.3), std::norm is slow unless // ffast-math is on (not by default even with -O3). The following helper function // gives the expected straightforward implementation of std::norm.