/[pcre]/code/trunk/sljit/sljitConfigInternal.h
ViewVC logotype

Diff of /code/trunk/sljit/sljitConfigInternal.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1194 by zherczeg, Sun Oct 28 05:22:32 2012 UTC revision 1195 by zherczeg, Thu Nov 1 15:21:27 2012 UTC
# Line 33  Line 33 
33     Feature detection (boolean) macros:     Feature detection (boolean) macros:
34     SLJIT_32BIT_ARCHITECTURE : 32 bit architecture     SLJIT_32BIT_ARCHITECTURE : 32 bit architecture
35     SLJIT_64BIT_ARCHITECTURE : 64 bit architecture     SLJIT_64BIT_ARCHITECTURE : 64 bit architecture
36     SLJIT_WORD_SHIFT : the shift required to apply when accessing a sljit_w/sljit_uw array by index     SLJIT_WORD_SHIFT : the shift required to apply when accessing a sljit_sw/sljit_uw array by index
37     SLJIT_DOUBLE_SHIFT : the shift required to apply when accessing a double array by index     SLJIT_DOUBLE_SHIFT : the shift required to apply when accessing a double array by index
38     SLJIT_LITTLE_ENDIAN : little endian architecture     SLJIT_LITTLE_ENDIAN : little endian architecture
39     SLJIT_BIG_ENDIAN : big endian architecture     SLJIT_BIG_ENDIAN : big endian architecture
# Line 42  Line 42 
42     SLJIT_RETURN_ADDRESS_OFFSET : a return instruction always adds this offset to the return address     SLJIT_RETURN_ADDRESS_OFFSET : a return instruction always adds this offset to the return address
43    
44     Types and useful macros:     Types and useful macros:
45     sljit_b, sljit_ub : signed and unsigned 8 bit byte     sljit_sb, sljit_ub : signed and unsigned 8 bit byte
46     sljit_h, sljit_uh : signed and unsigned 16 bit half-word (short) type     sljit_sh, sljit_uh : signed and unsigned 16 bit half-word (short) type
47     sljit_i, sljit_ui : signed and unsigned 32 bit integer type     sljit_si, sljit_ui : signed and unsigned 32 bit integer type
48     sljit_w, sljit_uw : signed and unsigned machine word, enough to store a pointer     sljit_sw, sljit_uw : signed and unsigned machine word, enough to store a pointer
49     sljit_p           : unsgined pointer value (usually the same as sljit_uw, but     sljit_p : unsgined pointer value (usually the same as sljit_uw, but
50                         some 64 bit ABIs may use 32 bit pointers)               some 64 bit ABIs may use 32 bit pointers)
51     sljit_d           : double precision floating point value     sljit_s : single precision floating point value
52       sljit_d : double precision floating point value
53     SLJIT_CALL : C calling convention define for both calling JIT form C and C callbacks for JIT     SLJIT_CALL : C calling convention define for both calling JIT form C and C callbacks for JIT
54     SLJIT_W(number) : defining 64 bit constants on 64 bit architectures (compiler independent helper)     SLJIT_W(number) : defining 64 bit constants on 64 bit architectures (compiler independent helper)
55  */  */
# Line 240  Line 241 
241    
242  /* 8 bit byte type. */  /* 8 bit byte type. */
243  typedef unsigned char sljit_ub;  typedef unsigned char sljit_ub;
244  typedef signed char sljit_b;  typedef signed char sljit_sb;
245    
246  /* 16 bit half-word type. */  /* 16 bit half-word type. */
247  typedef unsigned short int sljit_uh;  typedef unsigned short int sljit_uh;
248  typedef signed short int sljit_h;  typedef signed short int sljit_sh;
249    
250  /* 32 bit integer type. */  /* 32 bit integer type. */
251  typedef unsigned int sljit_ui;  typedef unsigned int sljit_ui;
252  typedef signed int sljit_i;  typedef signed int sljit_si;
253    
254  /* Machine word type. Can encapsulate a pointer.  /* Machine word type. Can encapsulate a pointer.
255       32 bit for 32 bit machines.       32 bit for 32 bit machines.
# Line 257  typedef signed int sljit_i; Line 258  typedef signed int sljit_i;
258  /* Just to have something. */  /* Just to have something. */
259  #define SLJIT_WORD_SHIFT 0  #define SLJIT_WORD_SHIFT 0
260  typedef unsigned long int sljit_uw;  typedef unsigned long int sljit_uw;
261  typedef long int sljit_w;  typedef long int sljit_sw;
262  #elif !(defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) && !(defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64)  #elif !(defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) && !(defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64)
263  #define SLJIT_32BIT_ARCHITECTURE 1  #define SLJIT_32BIT_ARCHITECTURE 1
264  #define SLJIT_WORD_SHIFT 2  #define SLJIT_WORD_SHIFT 2
265  typedef unsigned int sljit_uw;  typedef unsigned int sljit_uw;
266  typedef int sljit_w;  typedef int sljit_sw;
267  #else  #else
268  #define SLJIT_64BIT_ARCHITECTURE 1  #define SLJIT_64BIT_ARCHITECTURE 1
269  #define SLJIT_WORD_SHIFT 3  #define SLJIT_WORD_SHIFT 3
270  #ifdef _WIN32  #ifdef _WIN32
271  typedef unsigned __int64 sljit_uw;  typedef unsigned __int64 sljit_uw;
272  typedef __int64 sljit_w;  typedef __int64 sljit_sw;
273  #else  #else
274  typedef unsigned long int sljit_uw;  typedef unsigned long int sljit_uw;
275  typedef long int sljit_w;  typedef long int sljit_sw;
276  #endif  #endif
277  #endif  #endif
278    
279  typedef sljit_uw sljit_p;  typedef sljit_uw sljit_p;
280    
281    /* Floating point types. */
282    typedef float sljit_s;
283  typedef double sljit_d;  typedef double sljit_d;
284    
285  /* Shift for pointer sized data. */  /* Shift for pointer sized data. */
# Line 419  SLJIT_API_FUNC_ATTRIBUTE void sljit_free Line 423  SLJIT_API_FUNC_ATTRIBUTE void sljit_free
423  #ifndef SLJIT_ASSERT  #ifndef SLJIT_ASSERT
424    
425  #define SLJIT_HALT_PROCESS() \  #define SLJIT_HALT_PROCESS() \
426          *((int*)0) = 0          *((sljit_si*)0) = 0
427    
428  #define SLJIT_ASSERT(x) \  #define SLJIT_ASSERT(x) \
429          do { \          do { \

Legend:
Removed from v.1194  
changed lines
  Added in v.1195

  ViewVC Help
Powered by ViewVC 1.1.5