[cvs] / xvidcore / src / portab.h Repository:
ViewVC logotype

Diff of /xvidcore/src/portab.h

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

revision 1.20, Fri Jun 14 13:06:33 2002 UTC revision 1.21, Fri Jun 14 13:29:07 2002 UTC
# Line 49  Line 49 
49  #define uint32_t unsigned int  #define uint32_t unsigned int
50  #define int64_t __int64  #define int64_t __int64
51  #define uint64_t unsigned __int64  #define uint64_t unsigned __int64
52    #define ptr_t uint32_t
53    
54  #define EMMS() __asm {emms}  #define EMMS() __asm {emms}
55    
# Line 105  Line 106 
106  #define DEBUGCBR(A,B,C)  #define DEBUGCBR(A,B,C)
107  #endif  #endif
108    
 #define CACHE_LINE  16  
   
109  #if defined(LINUX)  #if defined(LINUX)
110    
111  #include <stdint.h>  #include <stdint.h>
112    
113  #define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \  #define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \
114          type name##_storage[(sizex)*(sizey)+(alignment)-1]; \          type name##_storage[(sizex)*(sizey)+(alignment)-1]; \
115          type * name = (type *) (((int32_t) name##_storage+(alignment - 1)) & ~((int32_t)(alignment)-1))          type * name = (type *) (((ptr_t) name##_storage+(alignment - 1)) & ~((ptr_t)(alignment)-1))
116    
117  #else  #else
118    
# Line 165  Line 164 
164          } while (tb != get_tbl());          } while (tb != get_tbl());
165          return (((int64_t) tu) << 32) | (int64_t) tb;          return (((int64_t) tu) << 32) | (int64_t) tb;
166  }  }
167    
168    #define ptr_t   uint32_t
169    
170    #define CACHE_LINE 16
171    
172    #elif defined(ARCH_IA64)
173    
174    #define ptr_t   uint64_t
175    
176    #define CACHE_LINE 32
177    
178    #define EMMS()
179    
180    // needed for bitstream.h
181    #define BSWAP(a) \
182             ((a) = ( ((a)&0xff)<<24) | (((a)&0xff00)<<8) | (((a)>>8)&0xff00) | (((a)>>24)&0xff))
183    
184    // rdtsc command most likely not supported,
185    // so just dummy code here
186    static __inline int64_t read_counter() {
187            return 0;
188    }
189    
190  #else  #else
191  #define BSWAP(a) __asm__ ( "bswapl %0\n" : "=r" (a) : "0" (a) )  #define BSWAP(a) __asm__ ( "bswapl %0\n" : "=r" (a) : "0" (a) )
192  #define EMMS() __asm__("emms\n\t")  #define EMMS() __asm__("emms\n\t")
# Line 185  Line 207 
207          return ts;          return ts;
208  }  }
209    
210    #define ptr_t   uint32_t
211    
212    #define CACHE_LINE 16
213    
214  #endif  #endif
215    
216  #else                                                   // OTHER OS  #else                                                   // OTHER OS
# Line 212  Line 238 
238          return 0;          return 0;
239  }  }
240    
241    #define ptr_t uint32_t
242    
243  #define CACHE_LINE  16  #define CACHE_LINE  16
244  #define CACHE_ALIGN  #define CACHE_ALIGN
 #define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \  
         type name[(sizex)*(sizey)]  
245    
246  #endif  #endif
247    

Legend:
Removed from v.1.20  
changed lines
  Added in v.1.21

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4