source: soft/giet_vm/applications/rosenfeld/nrc2/include/nrarith2x.h

Last change on this file was 821, checked in by meunier, 8 years ago
  • Added several versions of rosenfeld: { SLOW, FAST } x { FEATURES, NO_FEATURES }
  • Added native linux compilation support
  • Added a script to check results natively
  • Started to refactor nrc code
File size: 1.9 KB
Line 
1/* ------------------- */
2/* --- nrarith2x.h --- */
3/* ------------------- */
4
5/*
6 * Copyright (c) 2000-2014, Lionel Lacassagne, All rights reserved
7 * Univ Paris Sud XI, CNRS
8*/
9
10#ifndef _NRARITH2X_H_
11#define _NRARITH2X_H_
12
13// Add conditionnel
14
15#define addcnz_type_matrix(t) \
16void short_name(t,addcnz_,matrix)(t ** src, int32_t nrl, int32_t nrh, int32_t ncl, int32_t nch, t cte, t ** dst)
17
18addcnz_type_matrix(int8_t);
19addcnz_type_matrix(uint8_t);
20addcnz_type_matrix(int16_t);
21addcnz_type_matrix(uint16_t);
22addcnz_type_matrix(int32_t);
23addcnz_type_matrix(uint32_t);
24addcnz_type_matrix(int64_t);
25addcnz_type_matrix(uint64_t);
26addcnz_type_matrix(float);
27addcnz_type_matrix(double);
28
29
30#define addandc_type_matrix(t) \
31void short_name(t,addandc_,matrix)(t ** src, int32_t nrl, int32_t nrh, int32_t ncl, int32_t nch, t cte, t ** dst)
32
33addandc_type_matrix(int8_t);
34addandc_type_matrix(uint8_t);
35addandc_type_matrix(int16_t);
36addandc_type_matrix(uint16_t);
37addandc_type_matrix(int32_t);
38addandc_type_matrix(uint32_t);
39addandc_type_matrix(int64_t);
40addandc_type_matrix(uint64_t);
41addandc_type_matrix(float);
42addandc_type_matrix(double);
43
44
45/* renvoie la somme des points de la matrice */
46
47#define sum_type_matrix(t,rt) \
48rt short_name(t,sum_,matrix)(t ** m, int32_t nrl, int32_t nrh,int32_t ncl, int32_t nch)
49
50sum_type_matrix(int8_t, int32_t);
51sum_type_matrix(uint8_t, uint32_t);
52sum_type_matrix(int16_t, int32_t);
53sum_type_matrix(uint16_t, uint32_t);
54sum_type_matrix(int32_t, int64_t);
55sum_type_matrix(uint32_t, uint64_t);
56sum_type_matrix(int64_t, int64_t);
57sum_type_matrix(uint64_t, uint64_t);
58sum_type_matrix(float, float);
59sum_type_matrix(double, double);
60
61
62
63#endif /* _NRUTIL_H_ */
64
65// Local Variables:
66// tab-width: 4
67// c-basic-offset: 4
68// c-file-offsets:((innamespace . 0)(inline-open . 0))
69// indent-tabs-mode: nil
70// End:
71
72// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
73
Note: See TracBrowser for help on using the repository browser.