Changes in sasmodels/gen.py [3699587:df4dc86] in sasmodels


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/gen.py

    r3699587 rdf4dc86  
    226226// Note: if using a C++ compiler, then define kernel as extern "C" 
    227227#ifndef USE_OPENCL 
    228 #  include <math.h> 
     228#  ifdef __cplusplus 
     229     #include <cmath> 
     230     #if defined(_MSC_VER) 
     231     #define kernel extern "C" __declspec( dllexport ) 
     232     #else 
     233     #define kernel extern "C" 
     234     #endif 
     235     using namespace std; 
     236     inline void SINCOS(double angle, double &svar, double &cvar) 
     237       { svar=sin(angle); cvar=cos(angle); } 
     238#  else 
     239     #include <math.h> 
     240     #if defined(_MSC_VER) 
     241     #define kernel __declspec( dllexport ) 
     242     #else 
     243     #define kernel 
     244     #endif 
     245     #define SINCOS(angle,svar,cvar) do {svar=sin(angle);cvar=cos(angle);} while (0) 
     246#  endif 
    229247#  define global 
    230248#  define local 
    231249#  define constant const 
    232 #  define kernel 
    233 #  define SINCOS(angle,svar,cvar) do {svar=sin(angle);cvar=cos(angle);} while (0) 
    234250#  define powr(a,b) pow(a,b) 
    235251#else 
     
    422438    Convert code from double precision to single precision. 
    423439    """ 
    424     # Convert double keyword to float.  Accept an 'n' parameter for vector 
    425     # values, where n is 2, 4, 8 or 16. Assume complex numbers are represented 
    426     # as cdouble which is typedef'd to double2. 
    427     source = re.sub(r'(^|[^a-zA-Z0-9_]c?)double(([248]|16)?($|[^a-zA-Z0-9_]))', 
     440    source = re.sub(r'(^|[^a-zA-Z0-9_])double($|[^a-zA-Z0-9_])', 
    428441                    r'\1float\2', source) 
    429     # Convert floating point constants to single by adding 'f' to the end. 
    430     # OS/X driver complains if you don't do this. 
    431442    source = re.sub(r'[^a-zA-Z_](\d*[.]\d+|\d+[.]\d*)([eE][+-]?\d+)?', 
    432443                    r'\g<0>f', source) 
Note: See TracChangeset for help on using the changeset viewer.