liboil.h   liboil.h 
skipping to change at line 37 skipping to change at line 37
#ifndef _LIBOIL_H_ #ifndef _LIBOIL_H_
#define _LIBOIL_H_ #define _LIBOIL_H_
#include <stdint.h> #include <stdint.h>
#include <liboil/liboilfuncs.h> #include <liboil/liboilfuncs.h>
void oil_init (void); void oil_init (void);
/**
* oil_memcpy:
* @dest:
* @src:
* @n_bytes:
*
* Macro that uses oil_copy_u8() to provide an implementation of
* memcpy(). Note that oil_copy_u8() is optimized for short copies,
* and may be very slow for large copies compared to alternatives,
* including the system memcpy().
*/
#define oil_memcpy(dest,src,n_bytes) \ #define oil_memcpy(dest,src,n_bytes) \
oil_copy_u8((void *)(dest),(void *)(src),(n_bytes)) oil_copy_u8((void *)(dest),(void *)(src),(n_bytes))
/**
* oil_trans8x8_s16:
* @dest:
* @dstr:
* @src:
* @sstr:
*
* Macro wrapping trans8x8_u16().
*/
#define oil_trans8x8_s16(dest, dstr, src, sstr) \ #define oil_trans8x8_s16(dest, dstr, src, sstr) \
oil_trans8x8_u16((uint16_t *)dest, dstr, (uint16_t *)src, sstr) oil_trans8x8_u16((uint16_t *)dest, dstr, (uint16_t *)src, sstr)
#endif #endif
 End of changes. 2 change blocks. 
0 lines changed or deleted 20 lines changed or added


 liboilclasses.h   liboilclasses.h 
skipping to change at line 289 skipping to change at line 289
OIL_DECLARE_CLASS(trans8x8_u32); OIL_DECLARE_CLASS(trans8x8_u32);
OIL_DECLARE_CLASS(trans8x8_u8); OIL_DECLARE_CLASS(trans8x8_u8);
OIL_DECLARE_CLASS(unzigzag8x8_s16); OIL_DECLARE_CLASS(unzigzag8x8_s16);
OIL_DECLARE_CLASS(utf8_validate); OIL_DECLARE_CLASS(utf8_validate);
OIL_DECLARE_CLASS(uyvy2ayuv); OIL_DECLARE_CLASS(uyvy2ayuv);
OIL_DECLARE_CLASS(vectoradd_f32); OIL_DECLARE_CLASS(vectoradd_f32);
OIL_DECLARE_CLASS(vectoradd_f64); OIL_DECLARE_CLASS(vectoradd_f64);
OIL_DECLARE_CLASS(vectoradd_s16); OIL_DECLARE_CLASS(vectoradd_s16);
OIL_DECLARE_CLASS(vectoradd_s32); OIL_DECLARE_CLASS(vectoradd_s32);
OIL_DECLARE_CLASS(vectoradd_s8); OIL_DECLARE_CLASS(vectoradd_s8);
OIL_DECLARE_CLASS(vectoradd_s_f32);
OIL_DECLARE_CLASS(vectoradd_s_f64);
OIL_DECLARE_CLASS(vectoradd_s_s16);
OIL_DECLARE_CLASS(vectoradd_s_s8);
OIL_DECLARE_CLASS(vectoradd_s_u16);
OIL_DECLARE_CLASS(vectoradd_s_u8);
OIL_DECLARE_CLASS(vectoradd_u16); OIL_DECLARE_CLASS(vectoradd_u16);
OIL_DECLARE_CLASS(vectoradd_u32); OIL_DECLARE_CLASS(vectoradd_u32);
OIL_DECLARE_CLASS(vectoradd_u8); OIL_DECLARE_CLASS(vectoradd_u8);
OIL_DECLARE_CLASS(yuv2rgbx_sub2_u8); OIL_DECLARE_CLASS(yuv2rgbx_sub2_u8);
OIL_DECLARE_CLASS(yuv2rgbx_sub4_u8); OIL_DECLARE_CLASS(yuv2rgbx_sub4_u8);
OIL_DECLARE_CLASS(yuv2rgbx_u8); OIL_DECLARE_CLASS(yuv2rgbx_u8);
OIL_DECLARE_CLASS(yuyv2ayuv); OIL_DECLARE_CLASS(yuyv2ayuv);
OIL_DECLARE_CLASS(yvyu2ayuv); OIL_DECLARE_CLASS(yvyu2ayuv);
OIL_DECLARE_CLASS(zigzag8x8_s16); OIL_DECLARE_CLASS(zigzag8x8_s16);
 End of changes. 1 change blocks. 
0 lines changed or deleted 6 lines changed or added


 liboildebug.h   liboildebug.h 
skipping to change at line 33 skipping to change at line 33
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_DEBUG_H_ #ifndef _LIBOIL_DEBUG_H_
#define _LIBOIL_DEBUG_H_ #define _LIBOIL_DEBUG_H_
#include <stdarg.h> #include <stdarg.h>
/**
* OilDebugPrintFunc:
* @level: the debug level
* @file: name of the file where the debug message occurs
* @func: name of the function where the debug message occurs
* @line: line in the file where the debug message occurs
* @format: a printf format
* @varargs: varargs for the printf format
*
* Typedef describing functions that can be registered using
* oil_debug_set_print_function() so that it is called to
* print debugging messages.
*/
typedef void (*OilDebugPrintFunc) (int level, const char *file, typedef void (*OilDebugPrintFunc) (int level, const char *file,
const char *func, int line, const char *format, va_list varargs); const char *func, int line, const char *format, va_list varargs);
/**
* OilDebugLevel:
*
* Enumeration describing debug levels in Liboil.
*/
typedef enum { typedef enum {
OIL_DEBUG_NONE = 0, OIL_DEBUG_NONE = 0,
OIL_DEBUG_ERROR, OIL_DEBUG_ERROR,
OIL_DEBUG_WARNING, OIL_DEBUG_WARNING,
OIL_DEBUG_INFO, OIL_DEBUG_INFO,
OIL_DEBUG_DEBUG, OIL_DEBUG_DEBUG,
OIL_DEBUG_LOG OIL_DEBUG_LOG
} OilDebugLevel; } OilDebugLevel;
/**
* OIL_ERROR:
*
* Macro to call OIL_DEBUG_PRINT() with a level of #OIL_DEBUG_ERROR.
*/
#define OIL_ERROR(...) OIL_DEBUG_PRINT(OIL_DEBUG_ERROR, __VA_ARGS__) #define OIL_ERROR(...) OIL_DEBUG_PRINT(OIL_DEBUG_ERROR, __VA_ARGS__)
/**
* OIL_WARNING:
*
* Macro to call OIL_DEBUG_PRINT() with a level of #OIL_DEBUG_WARNING.
*/
#define OIL_WARNING(...) OIL_DEBUG_PRINT(OIL_DEBUG_WARNING, __VA_ARGS__) #define OIL_WARNING(...) OIL_DEBUG_PRINT(OIL_DEBUG_WARNING, __VA_ARGS__)
/**
* OIL_INFO:
*
* Macro to call OIL_DEBUG_PRINT() with a level of #OIL_DEBUG_INFO.
*/
#define OIL_INFO(...) OIL_DEBUG_PRINT(OIL_DEBUG_INFO, __VA_ARGS__) #define OIL_INFO(...) OIL_DEBUG_PRINT(OIL_DEBUG_INFO, __VA_ARGS__)
/**
* OIL_DEBUG:
*
* Macro to call OIL_DEBUG_PRINT() with a level of #OIL_DEBUG_DEBUG.
*/
#define OIL_DEBUG(...) OIL_DEBUG_PRINT(OIL_DEBUG_DEBUG, __VA_ARGS__) #define OIL_DEBUG(...) OIL_DEBUG_PRINT(OIL_DEBUG_DEBUG, __VA_ARGS__)
/**
* OIL_LOG:
*
* Macro to call OIL_DEBUG_PRINT() with a level of #OIL_DEBUG_LOG.
*/
#define OIL_LOG(...) OIL_DEBUG_PRINT(OIL_DEBUG_LOG, __VA_ARGS__) #define OIL_LOG(...) OIL_DEBUG_PRINT(OIL_DEBUG_LOG, __VA_ARGS__)
/**
* OIL_FUNCTION:
*
* Internal macro that points to __PRETTY_FUNCTION__ or __func__
* if the former is not available.
*/
#if defined (__GNUC__) || defined (__PRETTY_FUNCTION__) #if defined (__GNUC__) || defined (__PRETTY_FUNCTION__)
#define OIL_FUNCTION __PRETTY_FUNCTION__ #define OIL_FUNCTION __PRETTY_FUNCTION__
#elif defined(__func__) #elif defined(__func__)
#define OIL_FUNCTION __func__ #define OIL_FUNCTION __func__
#else #else
#define OIL_FUNCTION "" #define OIL_FUNCTION ""
#endif #endif
/**
* OIL_DEBUG_PRINT:
* @level:
* @...:
*
* Macro to call _oil_debug_print() with the correct values for
* the name of the source file, line of source file, and function.
*/
#define OIL_DEBUG_PRINT(level, ...) do { \ #define OIL_DEBUG_PRINT(level, ...) do { \
_oil_debug_print((level), __FILE__, OIL_FUNCTION, __LINE__, __VA_ARGS__); \ _oil_debug_print((level), __FILE__, OIL_FUNCTION, __LINE__, __VA_ARGS__); \
}while(0) }while(0)
void oil_debug_set_print_function (OilDebugPrintFunc func); void oil_debug_set_print_function (OilDebugPrintFunc func);
int oil_debug_get_level (void); int oil_debug_get_level (void);
void oil_debug_set_level (int level); void oil_debug_set_level (int level);
void _oil_debug_init (void); void _oil_debug_init (void);
 End of changes. 9 change blocks. 
0 lines changed or deleted 57 lines changed or added


 liboilfuncs.h   liboilfuncs.h 
skipping to change at line 61 skipping to change at line 61
extern OilFunctionClass *oil_function_class_ptr_abs_u8_s8; extern OilFunctionClass *oil_function_class_ptr_abs_u8_s8;
typedef void (*_oil_type_abs_u8_s8)(uint8_t * dest, int dstr, const int8_t * src, int sstr, int n); typedef void (*_oil_type_abs_u8_s8)(uint8_t * dest, int dstr, const int8_t * src, int sstr, int n);
#define oil_abs_u8_s8 ((_oil_type_abs_u8_s8)(*(void **)oil_function_class_p tr_abs_u8_s8)) #define oil_abs_u8_s8 ((_oil_type_abs_u8_s8)(*(void **)oil_function_class_p tr_abs_u8_s8))
extern OilFunctionClass *oil_function_class_ptr_add_f32; extern OilFunctionClass *oil_function_class_ptr_add_f32;
typedef void (*_oil_type_add_f32)(float * d, const float * s1, const float * s2, int n); typedef void (*_oil_type_add_f32)(float * d, const float * s1, const float * s2, int n);
#define oil_add_f32 ((_oil_type_add_f32)(*(void **)oil_function_class_ptr_a dd_f32)) #define oil_add_f32 ((_oil_type_add_f32)(*(void **)oil_function_class_ptr_a dd_f32))
extern OilFunctionClass *oil_function_class_ptr_argb_paint_u8; extern OilFunctionClass *oil_function_class_ptr_argb_paint_u8;
typedef void (*_oil_type_argb_paint_u8)(uint8_t * i_4xn, const uint8_t * s1 _4, const uint8_t * s2_n, int n); typedef void (*_oil_type_argb_paint_u8)(uint8_t * i_4xn, const uint8_t * s1 _4, const uint8_t * s2_n, int n);
#define oil_argb_paint_u8 ((_oil_type_argb_paint_u8)(*(void **)oil_function _class_ptr_argb_paint_u8)) #define oil_argb_paint_u8 ((_oil_type_argb_paint_u8)(*(void **)oil_function _class_ptr_argb_paint_u8))
extern OilFunctionClass *oil_function_class_ptr_average2_u8; extern OilFunctionClass *oil_function_class_ptr_average2_u8;
typedef void (*_oil_type_average2_u8)(uint8_t * dest, int dstr, const uint8 _t * src1, int sstr1, const uint8_t * src2, int sstr2, int n); typedef void (*_oil_type_average2_u8)(uint8_t * d, int dstr, const uint8_t * s1, int sstr1, const uint8_t * s2, int sstr2, int n);
#define oil_average2_u8 ((_oil_type_average2_u8)(*(void **)oil_function_cla ss_ptr_average2_u8)) #define oil_average2_u8 ((_oil_type_average2_u8)(*(void **)oil_function_cla ss_ptr_average2_u8))
extern OilFunctionClass *oil_function_class_ptr_ayuv2argb_u8; extern OilFunctionClass *oil_function_class_ptr_ayuv2argb_u8;
typedef void (*_oil_type_ayuv2argb_u8)(uint8_t * d_4xn, const uint8_t * s_4 xn, int n); typedef void (*_oil_type_ayuv2argb_u8)(uint8_t * d_4xn, const uint8_t * s_4 xn, int n);
#define oil_ayuv2argb_u8 ((_oil_type_ayuv2argb_u8)(*(void **)oil_function_c lass_ptr_ayuv2argb_u8)) #define oil_ayuv2argb_u8 ((_oil_type_ayuv2argb_u8)(*(void **)oil_function_c lass_ptr_ayuv2argb_u8))
extern OilFunctionClass *oil_function_class_ptr_ayuv2uyvy; extern OilFunctionClass *oil_function_class_ptr_ayuv2uyvy;
typedef void (*_oil_type_ayuv2uyvy)(uint32_t * d_n, const uint32_t * s_n, i nt n); typedef void (*_oil_type_ayuv2uyvy)(uint32_t * d_n, const uint32_t * s_n, i nt n);
#define oil_ayuv2uyvy ((_oil_type_ayuv2uyvy)(*(void **)oil_function_class_p tr_ayuv2uyvy)) #define oil_ayuv2uyvy ((_oil_type_ayuv2uyvy)(*(void **)oil_function_class_p tr_ayuv2uyvy))
extern OilFunctionClass *oil_function_class_ptr_ayuv2yuyv; extern OilFunctionClass *oil_function_class_ptr_ayuv2yuyv;
typedef void (*_oil_type_ayuv2yuyv)(uint32_t * d_n, const uint32_t * s_n, i nt n); typedef void (*_oil_type_ayuv2yuyv)(uint32_t * d_n, const uint32_t * s_n, i nt n);
#define oil_ayuv2yuyv ((_oil_type_ayuv2yuyv)(*(void **)oil_function_class_p tr_ayuv2yuyv)) #define oil_ayuv2yuyv ((_oil_type_ayuv2yuyv)(*(void **)oil_function_class_p tr_ayuv2yuyv))
skipping to change at line 418 skipping to change at line 418
extern OilFunctionClass *oil_function_class_ptr_copy_u8; extern OilFunctionClass *oil_function_class_ptr_copy_u8;
typedef void (*_oil_type_copy_u8)(uint8_t * dest, const uint8_t * src, int n); typedef void (*_oil_type_copy_u8)(uint8_t * dest, const uint8_t * src, int n);
#define oil_copy_u8 ((_oil_type_copy_u8)(*(void **)oil_function_class_ptr_c opy_u8)) #define oil_copy_u8 ((_oil_type_copy_u8)(*(void **)oil_function_class_ptr_c opy_u8))
extern OilFunctionClass *oil_function_class_ptr_dct36_f32; extern OilFunctionClass *oil_function_class_ptr_dct36_f32;
typedef void (*_oil_type_dct36_f32)(float * d_36, int dstr, const float * s _36, int sstr); typedef void (*_oil_type_dct36_f32)(float * d_36, int dstr, const float * s _36, int sstr);
#define oil_dct36_f32 ((_oil_type_dct36_f32)(*(void **)oil_function_class_p tr_dct36_f32)) #define oil_dct36_f32 ((_oil_type_dct36_f32)(*(void **)oil_function_class_p tr_dct36_f32))
extern OilFunctionClass *oil_function_class_ptr_dequantize8x8_s16; extern OilFunctionClass *oil_function_class_ptr_dequantize8x8_s16;
typedef void (*_oil_type_dequantize8x8_s16)(int16_t * d_8x8, int dstr, cons t int16_t * s1_8x8, int sstr1, const int16_t * s2_8x8, int sstr2); typedef void (*_oil_type_dequantize8x8_s16)(int16_t * d_8x8, int dstr, cons t int16_t * s1_8x8, int sstr1, const int16_t * s2_8x8, int sstr2);
#define oil_dequantize8x8_s16 ((_oil_type_dequantize8x8_s16)(*(void **)oil_ function_class_ptr_dequantize8x8_s16)) #define oil_dequantize8x8_s16 ((_oil_type_dequantize8x8_s16)(*(void **)oil_ function_class_ptr_dequantize8x8_s16))
extern OilFunctionClass *oil_function_class_ptr_diff8x8_average_s16_u8; extern OilFunctionClass *oil_function_class_ptr_diff8x8_average_s16_u8;
typedef void (*_oil_type_diff8x8_average_s16_u8)(int16_t * d_64, const uint 8_t * s1_8x8, int ss1, const uint8_t * s2_8x8, int ss2, const uint8_t * s3_ 8x8, int ss3); typedef void (*_oil_type_diff8x8_average_s16_u8)(int16_t * d_8x8, const uin t8_t * s1_8x8, int ss1, const uint8_t * s2_8x8, int ss2, const uint8_t * s3 _8x8, int ss3);
#define oil_diff8x8_average_s16_u8 ((_oil_type_diff8x8_average_s16_u8)(*(vo id **)oil_function_class_ptr_diff8x8_average_s16_u8)) #define oil_diff8x8_average_s16_u8 ((_oil_type_diff8x8_average_s16_u8)(*(vo id **)oil_function_class_ptr_diff8x8_average_s16_u8))
extern OilFunctionClass *oil_function_class_ptr_diff8x8_const128_s16_u8; extern OilFunctionClass *oil_function_class_ptr_diff8x8_const128_s16_u8;
typedef void (*_oil_type_diff8x8_const128_s16_u8)(int16_t * d_64, const uin t8_t * s1_8x8, int ss1); typedef void (*_oil_type_diff8x8_const128_s16_u8)(int16_t * d_8x8, const ui nt8_t * s1_8x8, int ss1);
#define oil_diff8x8_const128_s16_u8 ((_oil_type_diff8x8_const128_s16_u8)(*( void **)oil_function_class_ptr_diff8x8_const128_s16_u8)) #define oil_diff8x8_const128_s16_u8 ((_oil_type_diff8x8_const128_s16_u8)(*( void **)oil_function_class_ptr_diff8x8_const128_s16_u8))
extern OilFunctionClass *oil_function_class_ptr_diff8x8_s16_u8; extern OilFunctionClass *oil_function_class_ptr_diff8x8_s16_u8;
typedef void (*_oil_type_diff8x8_s16_u8)(int16_t * d_64, const uint8_t * s1 _8x8, int ss1, const uint8_t * s2_8x8, int ss2); typedef void (*_oil_type_diff8x8_s16_u8)(int16_t * d_8x8, const uint8_t * s 1_8x8, int ss1, const uint8_t * s2_8x8, int ss2);
#define oil_diff8x8_s16_u8 ((_oil_type_diff8x8_s16_u8)(*(void **)oil_functi on_class_ptr_diff8x8_s16_u8)) #define oil_diff8x8_s16_u8 ((_oil_type_diff8x8_s16_u8)(*(void **)oil_functi on_class_ptr_diff8x8_s16_u8))
extern OilFunctionClass *oil_function_class_ptr_diffsquaresum_f64; extern OilFunctionClass *oil_function_class_ptr_diffsquaresum_f64;
typedef void (*_oil_type_diffsquaresum_f64)(double * d_1, const double * sr c1, int sstr1, const double * src2, int sstr2, int n); typedef void (*_oil_type_diffsquaresum_f64)(double * d_1, const double * sr c1, int sstr1, const double * src2, int sstr2, int n);
#define oil_diffsquaresum_f64 ((_oil_type_diffsquaresum_f64)(*(void **)oil_ function_class_ptr_diffsquaresum_f64)) #define oil_diffsquaresum_f64 ((_oil_type_diffsquaresum_f64)(*(void **)oil_ function_class_ptr_diffsquaresum_f64))
extern OilFunctionClass *oil_function_class_ptr_divide_f32; extern OilFunctionClass *oil_function_class_ptr_divide_f32;
typedef void (*_oil_type_divide_f32)(float * d, const float * s1, const flo at * s2, int n); typedef void (*_oil_type_divide_f32)(float * d, const float * s1, const flo at * s2, int n);
#define oil_divide_f32 ((_oil_type_divide_f32)(*(void **)oil_function_class _ptr_divide_f32)) #define oil_divide_f32 ((_oil_type_divide_f32)(*(void **)oil_function_class _ptr_divide_f32))
extern OilFunctionClass *oil_function_class_ptr_err_inter8x8_u8; extern OilFunctionClass *oil_function_class_ptr_err_inter8x8_u8;
typedef void (*_oil_type_err_inter8x8_u8)(uint32_t * d_1, const uint8_t * s 1_8x8, int ss1, const uint8_t * s2_8x8, int ss2); typedef void (*_oil_type_err_inter8x8_u8)(uint32_t * d_1, const uint8_t * s 1_8x8, int ss1, const uint8_t * s2_8x8, int ss2);
#define oil_err_inter8x8_u8 ((_oil_type_err_inter8x8_u8)(*(void **)oil_func tion_class_ptr_err_inter8x8_u8)) #define oil_err_inter8x8_u8 ((_oil_type_err_inter8x8_u8)(*(void **)oil_func tion_class_ptr_err_inter8x8_u8))
skipping to change at line 595 skipping to change at line 595
extern OilFunctionClass *oil_function_class_ptr_sad8x8_s16_2; extern OilFunctionClass *oil_function_class_ptr_sad8x8_s16_2;
typedef void (*_oil_type_sad8x8_s16_2)(uint32_t * d_1, const int16_t * s1_8 x8, int ss1, const int16_t * s2_8x8, int ss2); typedef void (*_oil_type_sad8x8_s16_2)(uint32_t * d_1, const int16_t * s1_8 x8, int ss1, const int16_t * s2_8x8, int ss2);
#define oil_sad8x8_s16_2 ((_oil_type_sad8x8_s16_2)(*(void **)oil_function_c lass_ptr_sad8x8_s16_2)) #define oil_sad8x8_s16_2 ((_oil_type_sad8x8_s16_2)(*(void **)oil_function_c lass_ptr_sad8x8_s16_2))
extern OilFunctionClass *oil_function_class_ptr_sad8x8_u8; extern OilFunctionClass *oil_function_class_ptr_sad8x8_u8;
typedef void (*_oil_type_sad8x8_u8)(uint32_t * d_1, const uint8_t * s1_8x8, int ss1, const uint8_t * s2_8x8, int ss2); typedef void (*_oil_type_sad8x8_u8)(uint32_t * d_1, const uint8_t * s1_8x8, int ss1, const uint8_t * s2_8x8, int ss2);
#define oil_sad8x8_u8 ((_oil_type_sad8x8_u8)(*(void **)oil_function_class_p tr_sad8x8_u8)) #define oil_sad8x8_u8 ((_oil_type_sad8x8_u8)(*(void **)oil_function_class_p tr_sad8x8_u8))
extern OilFunctionClass *oil_function_class_ptr_sad8x8_u8_avg; extern OilFunctionClass *oil_function_class_ptr_sad8x8_u8_avg;
typedef void (*_oil_type_sad8x8_u8_avg)(uint32_t * d_1, const uint8_t * s1_ 8x8, int ss1, const uint8_t * s2_8x8, const uint8_t * s3_8x8, int ss2); typedef void (*_oil_type_sad8x8_u8_avg)(uint32_t * d_1, const uint8_t * s1_ 8x8, int ss1, const uint8_t * s2_8x8, const uint8_t * s3_8x8, int ss2);
#define oil_sad8x8_u8_avg ((_oil_type_sad8x8_u8_avg)(*(void **)oil_function _class_ptr_sad8x8_u8_avg)) #define oil_sad8x8_u8_avg ((_oil_type_sad8x8_u8_avg)(*(void **)oil_function _class_ptr_sad8x8_u8_avg))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_f32; extern OilFunctionClass *oil_function_class_ptr_scalaradd_f32;
typedef void (*_oil_type_scalaradd_f32)(float * dest, int dstr, const float * src, int sstr, const float * s2_1, int n); typedef void (*_oil_type_scalaradd_f32)(float * d, int dstr, const float * s1, int sstr, const float * s2_1, int n);
#define oil_scalaradd_f32 ((_oil_type_scalaradd_f32)(*(void **)oil_function _class_ptr_scalaradd_f32)) #define oil_scalaradd_f32 ((_oil_type_scalaradd_f32)(*(void **)oil_function _class_ptr_scalaradd_f32))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_f32_ns; extern OilFunctionClass *oil_function_class_ptr_scalaradd_f32_ns;
typedef void (*_oil_type_scalaradd_f32_ns)(float * d, const float * s1, con st float * s2_1, int n); typedef void (*_oil_type_scalaradd_f32_ns)(float * d, const float * s1, con st float * s2_1, int n);
#define oil_scalaradd_f32_ns ((_oil_type_scalaradd_f32_ns)(*(void **)oil_fu nction_class_ptr_scalaradd_f32_ns)) #define oil_scalaradd_f32_ns ((_oil_type_scalaradd_f32_ns)(*(void **)oil_fu nction_class_ptr_scalaradd_f32_ns))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_f64; extern OilFunctionClass *oil_function_class_ptr_scalaradd_f64;
typedef void (*_oil_type_scalaradd_f64)(double * dest, int dstr, const doub le * src, int sstr, const double * s2_1, int n); typedef void (*_oil_type_scalaradd_f64)(double * d, int dstr, const double * s1, int sstr, const double * s2_1, int n);
#define oil_scalaradd_f64 ((_oil_type_scalaradd_f64)(*(void **)oil_function _class_ptr_scalaradd_f64)) #define oil_scalaradd_f64 ((_oil_type_scalaradd_f64)(*(void **)oil_function _class_ptr_scalaradd_f64))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_s16; extern OilFunctionClass *oil_function_class_ptr_scalaradd_s16;
typedef void (*_oil_type_scalaradd_s16)(int16_t * dest, int dstr, const int 16_t * src, int sstr, const int16_t * s2_1, int n); typedef void (*_oil_type_scalaradd_s16)(int16_t * d, int dstr, const int16_ t * s1, int sstr, const int16_t * s2_1, int n);
#define oil_scalaradd_s16 ((_oil_type_scalaradd_s16)(*(void **)oil_function _class_ptr_scalaradd_s16)) #define oil_scalaradd_s16 ((_oil_type_scalaradd_s16)(*(void **)oil_function _class_ptr_scalaradd_s16))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_s32; extern OilFunctionClass *oil_function_class_ptr_scalaradd_s32;
typedef void (*_oil_type_scalaradd_s32)(int32_t * dest, int dstr, const int 32_t * src, int sstr, const int32_t * s2_1, int n); typedef void (*_oil_type_scalaradd_s32)(int32_t * d, int dstr, const int32_ t * s1, int sstr, const int32_t * s2_1, int n);
#define oil_scalaradd_s32 ((_oil_type_scalaradd_s32)(*(void **)oil_function _class_ptr_scalaradd_s32)) #define oil_scalaradd_s32 ((_oil_type_scalaradd_s32)(*(void **)oil_function _class_ptr_scalaradd_s32))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_s8; extern OilFunctionClass *oil_function_class_ptr_scalaradd_s8;
typedef void (*_oil_type_scalaradd_s8)(int8_t * dest, int dstr, const int8_ t * src, int sstr, const int8_t * s2_1, int n); typedef void (*_oil_type_scalaradd_s8)(int8_t * d, int dstr, const int8_t * s1, int sstr, const int8_t * s2_1, int n);
#define oil_scalaradd_s8 ((_oil_type_scalaradd_s8)(*(void **)oil_function_c lass_ptr_scalaradd_s8)) #define oil_scalaradd_s8 ((_oil_type_scalaradd_s8)(*(void **)oil_function_c lass_ptr_scalaradd_s8))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_u16; extern OilFunctionClass *oil_function_class_ptr_scalaradd_u16;
typedef void (*_oil_type_scalaradd_u16)(uint16_t * dest, int dstr, const ui nt16_t * src, int sstr, const uint16_t * s2_1, int n); typedef void (*_oil_type_scalaradd_u16)(uint16_t * d, int dstr, const uint1 6_t * s1, int sstr, const uint16_t * s2_1, int n);
#define oil_scalaradd_u16 ((_oil_type_scalaradd_u16)(*(void **)oil_function _class_ptr_scalaradd_u16)) #define oil_scalaradd_u16 ((_oil_type_scalaradd_u16)(*(void **)oil_function _class_ptr_scalaradd_u16))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_u32; extern OilFunctionClass *oil_function_class_ptr_scalaradd_u32;
typedef void (*_oil_type_scalaradd_u32)(uint32_t * dest, int dstr, const ui nt32_t * src, int sstr, const uint32_t * s2_1, int n); typedef void (*_oil_type_scalaradd_u32)(uint32_t * d, int dstr, const uint3 2_t * s1, int sstr, const uint32_t * s2_1, int n);
#define oil_scalaradd_u32 ((_oil_type_scalaradd_u32)(*(void **)oil_function _class_ptr_scalaradd_u32)) #define oil_scalaradd_u32 ((_oil_type_scalaradd_u32)(*(void **)oil_function _class_ptr_scalaradd_u32))
extern OilFunctionClass *oil_function_class_ptr_scalaradd_u8; extern OilFunctionClass *oil_function_class_ptr_scalaradd_u8;
typedef void (*_oil_type_scalaradd_u8)(uint8_t * dest, int dstr, const uint 8_t * src, int sstr, const uint8_t * s2_1, int n); typedef void (*_oil_type_scalaradd_u8)(uint8_t * d, int dstr, const uint8_t * s1, int sstr, const uint8_t * s2_1, int n);
#define oil_scalaradd_u8 ((_oil_type_scalaradd_u8)(*(void **)oil_function_c lass_ptr_scalaradd_u8)) #define oil_scalaradd_u8 ((_oil_type_scalaradd_u8)(*(void **)oil_function_c lass_ptr_scalaradd_u8))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_f32; extern OilFunctionClass *oil_function_class_ptr_scalarmult_f32;
typedef void (*_oil_type_scalarmult_f32)(float * dest, int dstr, const floa t * src, int sstr, const float * s2_1, int n); typedef void (*_oil_type_scalarmult_f32)(float * d, int dstr, const float * s1, int sstr, const float * s2_1, int n);
#define oil_scalarmult_f32 ((_oil_type_scalarmult_f32)(*(void **)oil_functi on_class_ptr_scalarmult_f32)) #define oil_scalarmult_f32 ((_oil_type_scalarmult_f32)(*(void **)oil_functi on_class_ptr_scalarmult_f32))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_f64; extern OilFunctionClass *oil_function_class_ptr_scalarmult_f64;
typedef void (*_oil_type_scalarmult_f64)(double * dest, int dstr, const dou ble * src, int sstr, const double * s2_1, int n); typedef void (*_oil_type_scalarmult_f64)(double * d, int dstr, const double * s1, int sstr, const double * s2_1, int n);
#define oil_scalarmult_f64 ((_oil_type_scalarmult_f64)(*(void **)oil_functi on_class_ptr_scalarmult_f64)) #define oil_scalarmult_f64 ((_oil_type_scalarmult_f64)(*(void **)oil_functi on_class_ptr_scalarmult_f64))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_s16; extern OilFunctionClass *oil_function_class_ptr_scalarmult_s16;
typedef void (*_oil_type_scalarmult_s16)(int16_t * dest, int dstr, const in t16_t * src, int sstr, const int16_t * s2_1, int n); typedef void (*_oil_type_scalarmult_s16)(int16_t * d, int dstr, const int16 _t * s1, int sstr, const int16_t * s2_1, int n);
#define oil_scalarmult_s16 ((_oil_type_scalarmult_s16)(*(void **)oil_functi on_class_ptr_scalarmult_s16)) #define oil_scalarmult_s16 ((_oil_type_scalarmult_s16)(*(void **)oil_functi on_class_ptr_scalarmult_s16))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_s32; extern OilFunctionClass *oil_function_class_ptr_scalarmult_s32;
typedef void (*_oil_type_scalarmult_s32)(int32_t * dest, int dstr, const in t32_t * src, int sstr, const int32_t * s2_1, int n); typedef void (*_oil_type_scalarmult_s32)(int32_t * d, int dstr, const int32 _t * s1, int sstr, const int32_t * s2_1, int n);
#define oil_scalarmult_s32 ((_oil_type_scalarmult_s32)(*(void **)oil_functi on_class_ptr_scalarmult_s32)) #define oil_scalarmult_s32 ((_oil_type_scalarmult_s32)(*(void **)oil_functi on_class_ptr_scalarmult_s32))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_s8; extern OilFunctionClass *oil_function_class_ptr_scalarmult_s8;
typedef void (*_oil_type_scalarmult_s8)(int8_t * dest, int dstr, const int8 _t * src, int sstr, const int8_t * s2_1, int n); typedef void (*_oil_type_scalarmult_s8)(int8_t * d, int dstr, const int8_t * s1, int sstr, const int8_t * s2_1, int n);
#define oil_scalarmult_s8 ((_oil_type_scalarmult_s8)(*(void **)oil_function _class_ptr_scalarmult_s8)) #define oil_scalarmult_s8 ((_oil_type_scalarmult_s8)(*(void **)oil_function _class_ptr_scalarmult_s8))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_u16; extern OilFunctionClass *oil_function_class_ptr_scalarmult_u16;
typedef void (*_oil_type_scalarmult_u16)(uint16_t * dest, int dstr, const u int16_t * src, int sstr, const uint16_t * s2_1, int n); typedef void (*_oil_type_scalarmult_u16)(uint16_t * d, int dstr, const uint 16_t * s1, int sstr, const uint16_t * s2_1, int n);
#define oil_scalarmult_u16 ((_oil_type_scalarmult_u16)(*(void **)oil_functi on_class_ptr_scalarmult_u16)) #define oil_scalarmult_u16 ((_oil_type_scalarmult_u16)(*(void **)oil_functi on_class_ptr_scalarmult_u16))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_u32; extern OilFunctionClass *oil_function_class_ptr_scalarmult_u32;
typedef void (*_oil_type_scalarmult_u32)(uint32_t * dest, int dstr, const u int32_t * src, int sstr, const uint32_t * s2_1, int n); typedef void (*_oil_type_scalarmult_u32)(uint32_t * d, int dstr, const uint 32_t * s1, int sstr, const uint32_t * s2_1, int n);
#define oil_scalarmult_u32 ((_oil_type_scalarmult_u32)(*(void **)oil_functi on_class_ptr_scalarmult_u32)) #define oil_scalarmult_u32 ((_oil_type_scalarmult_u32)(*(void **)oil_functi on_class_ptr_scalarmult_u32))
extern OilFunctionClass *oil_function_class_ptr_scalarmult_u8; extern OilFunctionClass *oil_function_class_ptr_scalarmult_u8;
typedef void (*_oil_type_scalarmult_u8)(uint8_t * dest, int dstr, const uin t8_t * src, int sstr, const uint8_t * s2_1, int n); typedef void (*_oil_type_scalarmult_u8)(uint8_t * d, int dstr, const uint8_ t * s1, int sstr, const uint8_t * s2_1, int n);
#define oil_scalarmult_u8 ((_oil_type_scalarmult_u8)(*(void **)oil_function _class_ptr_scalarmult_u8)) #define oil_scalarmult_u8 ((_oil_type_scalarmult_u8)(*(void **)oil_function _class_ptr_scalarmult_u8))
extern OilFunctionClass *oil_function_class_ptr_scalarmultiply_f32_ns; extern OilFunctionClass *oil_function_class_ptr_scalarmultiply_f32_ns;
typedef void (*_oil_type_scalarmultiply_f32_ns)(float * d, const float * s1 , const float * s2_1, int n); typedef void (*_oil_type_scalarmultiply_f32_ns)(float * d, const float * s1 , const float * s2_1, int n);
#define oil_scalarmultiply_f32_ns ((_oil_type_scalarmultiply_f32_ns)(*(void **)oil_function_class_ptr_scalarmultiply_f32_ns)) #define oil_scalarmultiply_f32_ns ((_oil_type_scalarmultiply_f32_ns)(*(void **)oil_function_class_ptr_scalarmultiply_f32_ns))
extern OilFunctionClass *oil_function_class_ptr_scaleconv_f32_s16; extern OilFunctionClass *oil_function_class_ptr_scaleconv_f32_s16;
typedef void (*_oil_type_scaleconv_f32_s16)(float * dest, const int16_t * s rc, int n, const double * s2_1, const double * s3_1); typedef void (*_oil_type_scaleconv_f32_s16)(float * dest, const int16_t * s rc, int n, const double * s2_1, const double * s3_1);
#define oil_scaleconv_f32_s16 ((_oil_type_scaleconv_f32_s16)(*(void **)oil_ function_class_ptr_scaleconv_f32_s16)) #define oil_scaleconv_f32_s16 ((_oil_type_scaleconv_f32_s16)(*(void **)oil_ function_class_ptr_scaleconv_f32_s16))
extern OilFunctionClass *oil_function_class_ptr_scaleconv_f32_s32; extern OilFunctionClass *oil_function_class_ptr_scaleconv_f32_s32;
typedef void (*_oil_type_scaleconv_f32_s32)(float * dest, const int32_t * s rc, int n, const double * s2_1, const double * s3_1); typedef void (*_oil_type_scaleconv_f32_s32)(float * dest, const int32_t * s rc, int n, const double * s2_1, const double * s3_1);
#define oil_scaleconv_f32_s32 ((_oil_type_scaleconv_f32_s32)(*(void **)oil_ function_class_ptr_scaleconv_f32_s32)) #define oil_scaleconv_f32_s32 ((_oil_type_scaleconv_f32_s32)(*(void **)oil_ function_class_ptr_scaleconv_f32_s32))
skipping to change at line 721 skipping to change at line 721
extern OilFunctionClass *oil_function_class_ptr_scaleconv_u32_f64; extern OilFunctionClass *oil_function_class_ptr_scaleconv_u32_f64;
typedef void (*_oil_type_scaleconv_u32_f64)(uint32_t * dest, const double * src, int n, const double * s2_1, const double * s3_1); typedef void (*_oil_type_scaleconv_u32_f64)(uint32_t * dest, const double * src, int n, const double * s2_1, const double * s3_1);
#define oil_scaleconv_u32_f64 ((_oil_type_scaleconv_u32_f64)(*(void **)oil_ function_class_ptr_scaleconv_u32_f64)) #define oil_scaleconv_u32_f64 ((_oil_type_scaleconv_u32_f64)(*(void **)oil_ function_class_ptr_scaleconv_u32_f64))
extern OilFunctionClass *oil_function_class_ptr_scaleconv_u8_f32; extern OilFunctionClass *oil_function_class_ptr_scaleconv_u8_f32;
typedef void (*_oil_type_scaleconv_u8_f32)(uint8_t * dest, const float * sr c, int n, const double * s2_1, const double * s3_1); typedef void (*_oil_type_scaleconv_u8_f32)(uint8_t * dest, const float * sr c, int n, const double * s2_1, const double * s3_1);
#define oil_scaleconv_u8_f32 ((_oil_type_scaleconv_u8_f32)(*(void **)oil_fu nction_class_ptr_scaleconv_u8_f32)) #define oil_scaleconv_u8_f32 ((_oil_type_scaleconv_u8_f32)(*(void **)oil_fu nction_class_ptr_scaleconv_u8_f32))
extern OilFunctionClass *oil_function_class_ptr_scaleconv_u8_f64; extern OilFunctionClass *oil_function_class_ptr_scaleconv_u8_f64;
typedef void (*_oil_type_scaleconv_u8_f64)(uint8_t * dest, const double * s rc, int n, const double * s2_1, const double * s3_1); typedef void (*_oil_type_scaleconv_u8_f64)(uint8_t * dest, const double * s rc, int n, const double * s2_1, const double * s3_1);
#define oil_scaleconv_u8_f64 ((_oil_type_scaleconv_u8_f64)(*(void **)oil_fu nction_class_ptr_scaleconv_u8_f64)) #define oil_scaleconv_u8_f64 ((_oil_type_scaleconv_u8_f64)(*(void **)oil_fu nction_class_ptr_scaleconv_u8_f64))
extern OilFunctionClass *oil_function_class_ptr_scanlinescale2_u8; extern OilFunctionClass *oil_function_class_ptr_scanlinescale2_u8;
typedef void (*_oil_type_scanlinescale2_u8)(uint8_t * dest, const uint8_t * src, int n); typedef void (*_oil_type_scanlinescale2_u8)(uint8_t * d, const uint8_t * s, int n);
#define oil_scanlinescale2_u8 ((_oil_type_scanlinescale2_u8)(*(void **)oil_ function_class_ptr_scanlinescale2_u8)) #define oil_scanlinescale2_u8 ((_oil_type_scanlinescale2_u8)(*(void **)oil_ function_class_ptr_scanlinescale2_u8))
extern OilFunctionClass *oil_function_class_ptr_sign_f32; extern OilFunctionClass *oil_function_class_ptr_sign_f32;
typedef void (*_oil_type_sign_f32)(float * d, const float * s, int n); typedef void (*_oil_type_sign_f32)(float * d, const float * s, int n);
#define oil_sign_f32 ((_oil_type_sign_f32)(*(void **)oil_function_class_ptr _sign_f32)) #define oil_sign_f32 ((_oil_type_sign_f32)(*(void **)oil_function_class_ptr _sign_f32))
extern OilFunctionClass *oil_function_class_ptr_sincos_f64; extern OilFunctionClass *oil_function_class_ptr_sincos_f64;
typedef void (*_oil_type_sincos_f64)(double * dest1, double * dest2, int n, const double * s1_1, const double * s2_1); typedef void (*_oil_type_sincos_f64)(double * dest1, double * dest2, int n, const double * s1_1, const double * s2_1);
#define oil_sincos_f64 ((_oil_type_sincos_f64)(*(void **)oil_function_class _ptr_sincos_f64)) #define oil_sincos_f64 ((_oil_type_sincos_f64)(*(void **)oil_function_class _ptr_sincos_f64))
extern OilFunctionClass *oil_function_class_ptr_splat_u32; extern OilFunctionClass *oil_function_class_ptr_splat_u32;
typedef void (*_oil_type_splat_u32)(uint32_t * dest, int dstr, const uint32 _t * s1_1, int n); typedef void (*_oil_type_splat_u32)(uint32_t * dest, int dstr, const uint32 _t * s1_1, int n);
#define oil_splat_u32 ((_oil_type_splat_u32)(*(void **)oil_function_class_p tr_splat_u32)) #define oil_splat_u32 ((_oil_type_splat_u32)(*(void **)oil_function_class_p tr_splat_u32))
extern OilFunctionClass *oil_function_class_ptr_splat_u32_ns; extern OilFunctionClass *oil_function_class_ptr_splat_u32_ns;
typedef void (*_oil_type_splat_u32_ns)(uint32_t * dest, const uint32_t * s1 _1, int n); typedef void (*_oil_type_splat_u32_ns)(uint32_t * dest, const uint32_t * s1 _1, int n);
#define oil_splat_u32_ns ((_oil_type_splat_u32_ns)(*(void **)oil_function_c lass_ptr_splat_u32_ns)) #define oil_splat_u32_ns ((_oil_type_splat_u32_ns)(*(void **)oil_function_c lass_ptr_splat_u32_ns))
extern OilFunctionClass *oil_function_class_ptr_splat_u8; extern OilFunctionClass *oil_function_class_ptr_splat_u8;
typedef void (*_oil_type_splat_u8)(uint8_t * dest, int dstr, const uint8_t * s1_1, int n); typedef void (*_oil_type_splat_u8)(uint8_t * dest, int dstr, const uint8_t * s1_1, int n);
#define oil_splat_u8 ((_oil_type_splat_u8)(*(void **)oil_function_class_ptr _splat_u8)) #define oil_splat_u8 ((_oil_type_splat_u8)(*(void **)oil_function_class_ptr _splat_u8))
extern OilFunctionClass *oil_function_class_ptr_splat_u8_ns; extern OilFunctionClass *oil_function_class_ptr_splat_u8_ns;
typedef void (*_oil_type_splat_u8_ns)(uint8_t * dest, const uint8_t * s1_1, int n); typedef void (*_oil_type_splat_u8_ns)(uint8_t * dest, const uint8_t * s1_1, int n);
#define oil_splat_u8_ns ((_oil_type_splat_u8_ns)(*(void **)oil_function_cla ss_ptr_splat_u8_ns)) #define oil_splat_u8_ns ((_oil_type_splat_u8_ns)(*(void **)oil_function_cla ss_ptr_splat_u8_ns))
extern OilFunctionClass *oil_function_class_ptr_squaresum_f64; extern OilFunctionClass *oil_function_class_ptr_squaresum_f64;
typedef void (*_oil_type_squaresum_f64)(double * dest, const double * src, int n); typedef void (*_oil_type_squaresum_f64)(double * d, const double * s, int n );
#define oil_squaresum_f64 ((_oil_type_squaresum_f64)(*(void **)oil_function _class_ptr_squaresum_f64)) #define oil_squaresum_f64 ((_oil_type_squaresum_f64)(*(void **)oil_function _class_ptr_squaresum_f64))
extern OilFunctionClass *oil_function_class_ptr_subtract_f32; extern OilFunctionClass *oil_function_class_ptr_subtract_f32;
typedef void (*_oil_type_subtract_f32)(float * d, const float * s1, const f loat * s2, int n); typedef void (*_oil_type_subtract_f32)(float * d, const float * s1, const f loat * s2, int n);
#define oil_subtract_f32 ((_oil_type_subtract_f32)(*(void **)oil_function_c lass_ptr_subtract_f32)) #define oil_subtract_f32 ((_oil_type_subtract_f32)(*(void **)oil_function_c lass_ptr_subtract_f32))
extern OilFunctionClass *oil_function_class_ptr_sum_f64; extern OilFunctionClass *oil_function_class_ptr_sum_f64;
typedef void (*_oil_type_sum_f64)(double * dest, const double * src, int ss tr, int n); typedef void (*_oil_type_sum_f64)(double * d_1, const double * s, int sstr, int n);
#define oil_sum_f64 ((_oil_type_sum_f64)(*(void **)oil_function_class_ptr_s um_f64)) #define oil_sum_f64 ((_oil_type_sum_f64)(*(void **)oil_function_class_ptr_s um_f64))
extern OilFunctionClass *oil_function_class_ptr_tablelookup_u8; extern OilFunctionClass *oil_function_class_ptr_tablelookup_u8;
typedef void (*_oil_type_tablelookup_u8)(uint8_t * d, int ds, const uint8_t * s1, int ss1, const uint8_t * s2_256, int ss2, int n); typedef void (*_oil_type_tablelookup_u8)(uint8_t * d, int ds, const uint8_t * s1, int ss1, const uint8_t * s2_256, int ss2, int n);
#define oil_tablelookup_u8 ((_oil_type_tablelookup_u8)(*(void **)oil_functi on_class_ptr_tablelookup_u8)) #define oil_tablelookup_u8 ((_oil_type_tablelookup_u8)(*(void **)oil_functi on_class_ptr_tablelookup_u8))
extern OilFunctionClass *oil_function_class_ptr_trans8x8_f64; extern OilFunctionClass *oil_function_class_ptr_trans8x8_f64;
typedef void (*_oil_type_trans8x8_f64)(double * d_8x8, int ds, const double * s_8x8, int ss); typedef void (*_oil_type_trans8x8_f64)(double * d_8x8, int ds, const double * s_8x8, int ss);
#define oil_trans8x8_f64 ((_oil_type_trans8x8_f64)(*(void **)oil_function_c lass_ptr_trans8x8_f64)) #define oil_trans8x8_f64 ((_oil_type_trans8x8_f64)(*(void **)oil_function_c lass_ptr_trans8x8_f64))
extern OilFunctionClass *oil_function_class_ptr_trans8x8_u16; extern OilFunctionClass *oil_function_class_ptr_trans8x8_u16;
typedef void (*_oil_type_trans8x8_u16)(uint16_t * d_8x8, int ds, const uint 16_t * s_8x8, int ss); typedef void (*_oil_type_trans8x8_u16)(uint16_t * d_8x8, int ds, const uint 16_t * s_8x8, int ss);
#define oil_trans8x8_u16 ((_oil_type_trans8x8_u16)(*(void **)oil_function_c lass_ptr_trans8x8_u16)) #define oil_trans8x8_u16 ((_oil_type_trans8x8_u16)(*(void **)oil_function_c lass_ptr_trans8x8_u16))
skipping to change at line 775 skipping to change at line 775
extern OilFunctionClass *oil_function_class_ptr_unzigzag8x8_s16; extern OilFunctionClass *oil_function_class_ptr_unzigzag8x8_s16;
typedef void (*_oil_type_unzigzag8x8_s16)(int16_t * d_8x8, int ds, const in t16_t * s_8x8, int ss); typedef void (*_oil_type_unzigzag8x8_s16)(int16_t * d_8x8, int ds, const in t16_t * s_8x8, int ss);
#define oil_unzigzag8x8_s16 ((_oil_type_unzigzag8x8_s16)(*(void **)oil_func tion_class_ptr_unzigzag8x8_s16)) #define oil_unzigzag8x8_s16 ((_oil_type_unzigzag8x8_s16)(*(void **)oil_func tion_class_ptr_unzigzag8x8_s16))
extern OilFunctionClass *oil_function_class_ptr_utf8_validate; extern OilFunctionClass *oil_function_class_ptr_utf8_validate;
typedef void (*_oil_type_utf8_validate)(int32_t * d_1, const uint8_t * s, i nt n); typedef void (*_oil_type_utf8_validate)(int32_t * d_1, const uint8_t * s, i nt n);
#define oil_utf8_validate ((_oil_type_utf8_validate)(*(void **)oil_function _class_ptr_utf8_validate)) #define oil_utf8_validate ((_oil_type_utf8_validate)(*(void **)oil_function _class_ptr_utf8_validate))
extern OilFunctionClass *oil_function_class_ptr_uyvy2ayuv; extern OilFunctionClass *oil_function_class_ptr_uyvy2ayuv;
typedef void (*_oil_type_uyvy2ayuv)(uint32_t * d_n, const uint32_t * s_n, i nt n); typedef void (*_oil_type_uyvy2ayuv)(uint32_t * d_n, const uint32_t * s_n, i nt n);
#define oil_uyvy2ayuv ((_oil_type_uyvy2ayuv)(*(void **)oil_function_class_p tr_uyvy2ayuv)) #define oil_uyvy2ayuv ((_oil_type_uyvy2ayuv)(*(void **)oil_function_class_p tr_uyvy2ayuv))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_f32; extern OilFunctionClass *oil_function_class_ptr_vectoradd_f32;
typedef void (*_oil_type_vectoradd_f32)(float * dest, int dstr, const float * src1, int sstr1, const float * src2, int sstr2, int n, const float * s3_ 1, const float * s4_1); typedef void (*_oil_type_vectoradd_f32)(float * d, int dstr, const float * s1, int sstr1, const float * s2, int sstr2, int n, const float * s3_1, cons t float * s4_1);
#define oil_vectoradd_f32 ((_oil_type_vectoradd_f32)(*(void **)oil_function _class_ptr_vectoradd_f32)) #define oil_vectoradd_f32 ((_oil_type_vectoradd_f32)(*(void **)oil_function _class_ptr_vectoradd_f32))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_f64; extern OilFunctionClass *oil_function_class_ptr_vectoradd_f64;
typedef void (*_oil_type_vectoradd_f64)(double * dest, int dstr, const doub le * src1, int sstr1, const double * src2, int sstr2, int n, const double * s3_1, const double * s4_1); typedef void (*_oil_type_vectoradd_f64)(double * d, int dstr, const double * s1, int sstr1, const double * s2, int sstr2, int n, const double * s3_1, const double * s4_1);
#define oil_vectoradd_f64 ((_oil_type_vectoradd_f64)(*(void **)oil_function _class_ptr_vectoradd_f64)) #define oil_vectoradd_f64 ((_oil_type_vectoradd_f64)(*(void **)oil_function _class_ptr_vectoradd_f64))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s16; extern OilFunctionClass *oil_function_class_ptr_vectoradd_s16;
typedef void (*_oil_type_vectoradd_s16)(int16_t * dest, int dstr, const int 16_t * src1, int sstr1, const int16_t * src2, int sstr2, int n, const int16 _t * s3_1, const int16_t * s4_1); typedef void (*_oil_type_vectoradd_s16)(int16_t * d, int dstr, const int16_ t * s1, int sstr1, const int16_t * s2, int sstr2, int n, const int16_t * s3 _1, const int16_t * s4_1);
#define oil_vectoradd_s16 ((_oil_type_vectoradd_s16)(*(void **)oil_function _class_ptr_vectoradd_s16)) #define oil_vectoradd_s16 ((_oil_type_vectoradd_s16)(*(void **)oil_function _class_ptr_vectoradd_s16))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s32; extern OilFunctionClass *oil_function_class_ptr_vectoradd_s32;
typedef void (*_oil_type_vectoradd_s32)(int32_t * dest, int dstr, const int 32_t * src1, int sstr1, const int32_t * src2, int sstr2, int n, const int32 _t * s3_1, const int32_t * s4_1); typedef void (*_oil_type_vectoradd_s32)(int32_t * d, int dstr, const int32_ t * s1, int sstr1, const int32_t * s2, int sstr2, int n, const int32_t * s3 _1, const int32_t * s4_1);
#define oil_vectoradd_s32 ((_oil_type_vectoradd_s32)(*(void **)oil_function _class_ptr_vectoradd_s32)) #define oil_vectoradd_s32 ((_oil_type_vectoradd_s32)(*(void **)oil_function _class_ptr_vectoradd_s32))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s8; extern OilFunctionClass *oil_function_class_ptr_vectoradd_s8;
typedef void (*_oil_type_vectoradd_s8)(int8_t * dest, int dstr, const int8_ t * src1, int sstr1, const int8_t * src2, int sstr2, int n, const int8_t * s3_1, const int8_t * s4_1); typedef void (*_oil_type_vectoradd_s8)(int8_t * d, int dstr, const int8_t * s1, int sstr1, const int8_t * s2, int sstr2, int n, const int8_t * s3_1, c onst int8_t * s4_1);
#define oil_vectoradd_s8 ((_oil_type_vectoradd_s8)(*(void **)oil_function_c lass_ptr_vectoradd_s8)) #define oil_vectoradd_s8 ((_oil_type_vectoradd_s8)(*(void **)oil_function_c lass_ptr_vectoradd_s8))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s_f32;
typedef void (*_oil_type_vectoradd_s_f32)(float * d, int dstr, const float
* s1, int sstr1, const float * s2, int sstr2, int n);
#define oil_vectoradd_s_f32 ((_oil_type_vectoradd_s_f32)(*(void **)oil_func
tion_class_ptr_vectoradd_s_f32))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s_f64;
typedef void (*_oil_type_vectoradd_s_f64)(double * d, int dstr, const doubl
e * s1, int sstr1, const double * s2, int sstr2, int n);
#define oil_vectoradd_s_f64 ((_oil_type_vectoradd_s_f64)(*(void **)oil_func
tion_class_ptr_vectoradd_s_f64))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s_s16;
typedef void (*_oil_type_vectoradd_s_s16)(int16_t * d, int dstr, const int1
6_t * s1, int sstr1, const int16_t * s2, int sstr2, int n);
#define oil_vectoradd_s_s16 ((_oil_type_vectoradd_s_s16)(*(void **)oil_func
tion_class_ptr_vectoradd_s_s16))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s_s8;
typedef void (*_oil_type_vectoradd_s_s8)(int8_t * d, int dstr, const int8_t
* s1, int sstr1, const int8_t * s2, int sstr2, int n);
#define oil_vectoradd_s_s8 ((_oil_type_vectoradd_s_s8)(*(void **)oil_functi
on_class_ptr_vectoradd_s_s8))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s_u16;
typedef void (*_oil_type_vectoradd_s_u16)(uint16_t * d, int dstr, const uin
t16_t * s1, int sstr1, const uint16_t * s2, int sstr2, int n);
#define oil_vectoradd_s_u16 ((_oil_type_vectoradd_s_u16)(*(void **)oil_func
tion_class_ptr_vectoradd_s_u16))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_s_u8;
typedef void (*_oil_type_vectoradd_s_u8)(uint8_t * d, int dstr, const uint8
_t * s1, int sstr1, const uint8_t * s2, int sstr2, int n);
#define oil_vectoradd_s_u8 ((_oil_type_vectoradd_s_u8)(*(void **)oil_functi
on_class_ptr_vectoradd_s_u8))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_u16; extern OilFunctionClass *oil_function_class_ptr_vectoradd_u16;
typedef void (*_oil_type_vectoradd_u16)(uint16_t * dest, int dstr, const ui nt16_t * src1, int sstr1, const uint16_t * src2, int sstr2, int n, const ui nt16_t * s3_1, const uint16_t * s4_1); typedef void (*_oil_type_vectoradd_u16)(uint16_t * d, int dstr, const uint1 6_t * s1, int sstr1, const uint16_t * s2, int sstr2, int n, const uint16_t * s3_1, const uint16_t * s4_1);
#define oil_vectoradd_u16 ((_oil_type_vectoradd_u16)(*(void **)oil_function _class_ptr_vectoradd_u16)) #define oil_vectoradd_u16 ((_oil_type_vectoradd_u16)(*(void **)oil_function _class_ptr_vectoradd_u16))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_u32; extern OilFunctionClass *oil_function_class_ptr_vectoradd_u32;
typedef void (*_oil_type_vectoradd_u32)(uint32_t * dest, int dstr, const ui nt32_t * src1, int sstr1, const uint32_t * src2, int sstr2, int n, const ui nt32_t * s3_1, const uint32_t * s4_1); typedef void (*_oil_type_vectoradd_u32)(uint32_t * d, int dstr, const uint3 2_t * s1, int sstr1, const uint32_t * s2, int sstr2, int n, const uint32_t * s3_1, const uint32_t * s4_1);
#define oil_vectoradd_u32 ((_oil_type_vectoradd_u32)(*(void **)oil_function _class_ptr_vectoradd_u32)) #define oil_vectoradd_u32 ((_oil_type_vectoradd_u32)(*(void **)oil_function _class_ptr_vectoradd_u32))
extern OilFunctionClass *oil_function_class_ptr_vectoradd_u8; extern OilFunctionClass *oil_function_class_ptr_vectoradd_u8;
typedef void (*_oil_type_vectoradd_u8)(uint8_t * dest, int dstr, const uint 8_t * src1, int sstr1, const uint8_t * src2, int sstr2, int n, const uint8_ t * s3_1, const uint8_t * s4_1); typedef void (*_oil_type_vectoradd_u8)(uint8_t * d, int dstr, const uint8_t * s1, int sstr1, const uint8_t * s2, int sstr2, int n, const uint8_t * s3_ 1, const uint8_t * s4_1);
#define oil_vectoradd_u8 ((_oil_type_vectoradd_u8)(*(void **)oil_function_c lass_ptr_vectoradd_u8)) #define oil_vectoradd_u8 ((_oil_type_vectoradd_u8)(*(void **)oil_function_c lass_ptr_vectoradd_u8))
extern OilFunctionClass *oil_function_class_ptr_yuv2rgbx_sub2_u8; extern OilFunctionClass *oil_function_class_ptr_yuv2rgbx_sub2_u8;
typedef void (*_oil_type_yuv2rgbx_sub2_u8)(uint8_t * d_4xn, const uint8_t * src1, const uint8_t * src2, const uint8_t * src3, int n); typedef void (*_oil_type_yuv2rgbx_sub2_u8)(uint8_t * d_4xn, const uint8_t * src1, const uint8_t * src2, const uint8_t * src3, int n);
#define oil_yuv2rgbx_sub2_u8 ((_oil_type_yuv2rgbx_sub2_u8)(*(void **)oil_fu nction_class_ptr_yuv2rgbx_sub2_u8)) #define oil_yuv2rgbx_sub2_u8 ((_oil_type_yuv2rgbx_sub2_u8)(*(void **)oil_fu nction_class_ptr_yuv2rgbx_sub2_u8))
extern OilFunctionClass *oil_function_class_ptr_yuv2rgbx_sub4_u8; extern OilFunctionClass *oil_function_class_ptr_yuv2rgbx_sub4_u8;
typedef void (*_oil_type_yuv2rgbx_sub4_u8)(uint8_t * d_4xn, const uint8_t * src1, const uint8_t * src2, const uint8_t * src3, int n); typedef void (*_oil_type_yuv2rgbx_sub4_u8)(uint8_t * d_4xn, const uint8_t * src1, const uint8_t * src2, const uint8_t * src3, int n);
#define oil_yuv2rgbx_sub4_u8 ((_oil_type_yuv2rgbx_sub4_u8)(*(void **)oil_fu nction_class_ptr_yuv2rgbx_sub4_u8)) #define oil_yuv2rgbx_sub4_u8 ((_oil_type_yuv2rgbx_sub4_u8)(*(void **)oil_fu nction_class_ptr_yuv2rgbx_sub4_u8))
extern OilFunctionClass *oil_function_class_ptr_yuv2rgbx_u8; extern OilFunctionClass *oil_function_class_ptr_yuv2rgbx_u8;
typedef void (*_oil_type_yuv2rgbx_u8)(uint8_t * d_4xn, const uint8_t * src1 , const uint8_t * src2, const uint8_t * src3, int n); typedef void (*_oil_type_yuv2rgbx_u8)(uint8_t * d_4xn, const uint8_t * src1 , const uint8_t * src2, const uint8_t * src3, int n);
#define oil_yuv2rgbx_u8 ((_oil_type_yuv2rgbx_u8)(*(void **)oil_function_cla ss_ptr_yuv2rgbx_u8)) #define oil_yuv2rgbx_u8 ((_oil_type_yuv2rgbx_u8)(*(void **)oil_function_cla ss_ptr_yuv2rgbx_u8))
 End of changes. 32 change blocks. 
31 lines changed or deleted 61 lines changed or added


 liboilfunction.h   liboilfunction.h 
skipping to change at line 33 skipping to change at line 33
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_FUNCTION_H_ #ifndef _LIBOIL_FUNCTION_H_
#define _LIBOIL_FUNCTION_H_ #define _LIBOIL_FUNCTION_H_
#include <liboil/liboiltypes.h> #include <liboil/liboiltypes.h>
/**
* OIL_CHECK_PROTOTYPE:
* @a:
*
* Macro used internally to implement the --enable-prototype-checking
* configure option.
*/
#ifdef LIBOIL_STRICT_PROTOTYPES #ifdef LIBOIL_STRICT_PROTOTYPES
#include <liboil/liboilfuncs.h> #include <liboil/liboilfuncs.h>
#define LIBOIL_CHECK_PROTOTYPE(a) a #define OIL_CHECK_PROTOTYPE(a) a
#else #else
#define LIBOIL_CHECK_PROTOTYPE(a) #define OIL_CHECK_PROTOTYPE(a)
#endif #endif
/**
* OIL_OPT_MANGLE:
*
* Used internally to implement the --enable-alternate-optimizations
* configure option.
*/
/**
* OIL_OPT_FLAG_MANGLE:
*
* Used internally to implement the --enable-alternate-optimizations
* configure option.
*/
/**
* OIL_NO_CLASSES:
*
* Used internally to implement the --enable-alternate-optimizations
* configure option.
*/
/**
* OIL_OPT_SUFFIX:
*
* Used internally to implement the --enable-alternate-optimizations
* configure option.
*/
#ifndef OIL_OPT_MANGLE #ifndef OIL_OPT_MANGLE
#define OIL_OPT_MANGLE(a) a #define OIL_OPT_MANGLE(a) a
#define OIL_OPT_FLAG_MANGLE(a) a #define OIL_OPT_FLAG_MANGLE(a) a
#else #else
#define OIL_NO_CLASSES #define OIL_NO_CLASSES
#define OIL_OPT_FLAG_MANGLE(a) (((a)&(~OIL_IMPL_FLAG_REF)) | OIL_IMPL_FLAG_ OPT) #define OIL_OPT_FLAG_MANGLE(a) (((a)&(~OIL_IMPL_FLAG_REF)) | OIL_IMPL_FLAG_ OPT)
#endif #endif
#ifndef OIL_OPT_SUFFIX #ifndef OIL_OPT_SUFFIX
#define OIL_OPT_SUFFIX #define OIL_OPT_SUFFIX
#endif #endif
/**
* OilFunctionClass:
*
* An opaque structure representing a function class.
*
*/
struct _OilFunctionClass { struct _OilFunctionClass {
/*< private >*/
void *func; void *func;
const char *name; const char *name;
const char *desc; const char *desc;
OilTestFunction test_func; OilTestFunction test_func;
OilFunctionImpl *first_impl; OilFunctionImpl *first_impl;
OilFunctionImpl *reference_impl; OilFunctionImpl *reference_impl;
OilFunctionImpl *chosen_impl; OilFunctionImpl *chosen_impl;
const char *prototype; const char *prototype;
}; };
/**
* OilFunctionImpl:
*
* An opaque structure representing a function implementation.
*
*/
struct _OilFunctionImpl { struct _OilFunctionImpl {
/*< private >*/
void *next; void *next;
OilFunctionClass *klass; OilFunctionClass *klass;
void *func; void *func;
unsigned int flags; unsigned int flags;
const char *name; const char *name;
double profile_ave; double profile_ave;
double profile_std; double profile_std;
}; };
/**
* OIL_GET:
* @ptr:
* @offset:
* @type:
*
* Offsets @ptr by @offset number of bytes, and dereferences it
* as type @type. Note that the offset is in bytes, and not in
* the size of the pointer type.
*/
#define OIL_GET(ptr, offset, type) (*(type *)((uint8_t *)ptr + (offset)) ) #define OIL_GET(ptr, offset, type) (*(type *)((uint8_t *)ptr + (offset)) )
/**
* OIL_OFFSET:
* @ptr:
* @offset:
*
* Add @offset bytes to the pointer @ptr.
*/
#define OIL_OFFSET(ptr, offset) ((void *)((uint8_t *)ptr + (offset)) ) #define OIL_OFFSET(ptr, offset) ((void *)((uint8_t *)ptr + (offset)) )
/**
* OIL_INCREMENT:
* @ptr:
* @offset:
*
* Increments the pointer @ptr by @offset number of bytes.
*/
#define OIL_INCREMENT(ptr, offset) (ptr = (void *)((uint8_t *)ptr + (offset )) ) #define OIL_INCREMENT(ptr, offset) (ptr = (void *)((uint8_t *)ptr + (offset )) )
#define OIL_IMPL_FLAG_REF (1<<0) /**
#define OIL_IMPL_FLAG_OPT (1<<1) * OilImplFlag:
#define OIL_IMPL_FLAG_ASM (1<<2) *
#define OIL_IMPL_FLAG_DISABLED (1<<3) * Implementation flags independent of CPU type.
*/
typedef enum {
OIL_IMPL_FLAG_REF = (1<<0),
OIL_IMPL_FLAG_OPT = (1<<1),
OIL_IMPL_FLAG_ASM = (1<<2),
OIL_IMPL_FLAG_DISABLED = (1<<3)
} OilImplFlag;
/**
* OIL_CPU_FLAG_MASK:
*
* Mask describing which bits in #OilImplFlag depend on the current
* CPU.
*/
#define OIL_CPU_FLAG_MASK 0xffff0000 #define OIL_CPU_FLAG_MASK 0xffff0000
/* i386 */ /**
#define OIL_IMPL_FLAG_CMOV (1<<16) * OilImplFlagI386:
#define OIL_IMPL_FLAG_MMX (1<<17) *
#define OIL_IMPL_FLAG_SSE (1<<18) * Implementation flags for CPU features on i386.
#define OIL_IMPL_FLAG_MMXEXT (1<<19) */
#define OIL_IMPL_FLAG_SSE2 (1<<20) typedef enum {
#define OIL_IMPL_FLAG_3DNOW (1<<21) OIL_IMPL_FLAG_CMOV = (1<<16),
#define OIL_IMPL_FLAG_3DNOWEXT (1<<22) OIL_IMPL_FLAG_MMX = (1<<17),
#define OIL_IMPL_FLAG_SSE3 (1<<23) OIL_IMPL_FLAG_SSE = (1<<18),
OIL_IMPL_FLAG_MMXEXT = (1<<19),
/* powerpc */ OIL_IMPL_FLAG_SSE2 = (1<<20),
#define OIL_IMPL_FLAG_ALTIVEC (1<<16) OIL_IMPL_FLAG_3DNOW = (1<<21),
OIL_IMPL_FLAG_3DNOWEXT = (1<<22),
OIL_IMPL_FLAG_SSE3 = (1<<23)
} OilImplFlagI386;
/**
* OilImplFlagPowerPC:
*
* Implementation flags for CPU features on PowerPC.
*/
typedef enum {
OIL_IMPL_FLAG_ALTIVEC = (1<<16)
} OilImplFlagPowerPC;
/**
* OIL_DECLARE_CLASS:
* @klass: the name of a function class (without the oil_ prefix)
*
* Declares the Liboil function class @klass.
*/
#define OIL_DECLARE_CLASS(klass) \ #define OIL_DECLARE_CLASS(klass) \
extern OilFunctionClass _oil_function_class_ ## klass extern OilFunctionClass _oil_function_class_ ## klass
/**
* SECTION:liboilmacros
* @title: Macros
* @short_description: Macros
*/
#ifndef OIL_NO_CLASSES #ifndef OIL_NO_CLASSES
/**
* OIL_DEFINE_CLASS_FULL:
* @klass: name of class to declare (without oil_ prefix)
* @string: prototype of class
* @test: test function
*
* Defines a #OilFunctionClass structure for @klass. Classes
* defined this way will be automatically at Liboil initialization
* time.
*/
#define OIL_DEFINE_CLASS_FULL(klass, string, test) \ #define OIL_DEFINE_CLASS_FULL(klass, string, test) \
OilFunctionClass _oil_function_class_ ## klass = { \ OilFunctionClass _oil_function_class_ ## klass = { \
NULL, \ NULL, \
#klass , \ #klass , \
NULL, \ NULL, \
test, \ test, \
NULL, \ NULL, \
NULL, \ NULL, \
NULL, \ NULL, \
string \ string \
}; \ }; \
OilFunctionClass *oil_function_class_ptr_ ## klass = \ OilFunctionClass *oil_function_class_ptr_ ## klass = \
&_oil_function_class_ ## klass &_oil_function_class_ ## klass
#else #else
#define OIL_DEFINE_CLASS_FULL(klass, string, test) \ #define OIL_DEFINE_CLASS_FULL(klass, string, test) \
OIL_DECLARE_CLASS(klass) OIL_DECLARE_CLASS(klass)
#endif #endif
/**
* OIL_DEFINE_CLASS:
* @klass: name of class to declare (without oil_ prefix)
* @string: prototype of class
*
* Defines a #OilFunctionClass structure for @klass. Classes
* defined this way will be automatically at Liboil initialization
* time.
*/
#define OIL_DEFINE_CLASS(klass, string) \ #define OIL_DEFINE_CLASS(klass, string) \
OIL_DEFINE_CLASS_FULL (klass, string, NULL) OIL_DEFINE_CLASS_FULL (klass, string, NULL)
/**
* OIL_DEFINE_IMPL_FULL:
* @function: name of function
* @klass: name of class to declare (without oil_ prefix)
* @flags: implementation flags and CPU requirements
*
* Defines a #OilFunctionImpl structure for the function @function
* and class @klass. CPU-dependent flags in @flags will indicate
* that this implementation requires the given CPU flags.
*/
#define OIL_DEFINE_IMPL_FULL(function,klass,flags) \ #define OIL_DEFINE_IMPL_FULL(function,klass,flags) \
OilFunctionImpl OIL_OPT_MANGLE(_oil_function_impl_ ## function) = { \ OilFunctionImpl OIL_OPT_MANGLE(_oil_function_impl_ ## function) = { \
NULL, \ NULL, \
&_oil_function_class_ ## klass , \ &_oil_function_class_ ## klass , \
(void *)function, \ (void *)function, \
OIL_OPT_FLAG_MANGLE(flags), \ OIL_OPT_FLAG_MANGLE(flags), \
#function OIL_OPT_SUFFIX \ #function OIL_OPT_SUFFIX \
} \ } \
LIBOIL_CHECK_PROTOTYPE(;_oil_type_ ## klass _ignore_me_ ## function = funct ion) OIL_CHECK_PROTOTYPE(;_oil_type_ ## klass _ignore_me_ ## function = function )
/**
* OIL_DEFINE_IMPL:
* @function: name of function
* @klass: name of class to declare (without oil_ prefix)
*
* Shorthand for defining a C implementation. See OIL_DEFINE_IMPL_FULL().
*/
#define OIL_DEFINE_IMPL(function,klass) \ #define OIL_DEFINE_IMPL(function,klass) \
OIL_DEFINE_IMPL_FULL(function,klass,0) OIL_DEFINE_IMPL_FULL(function,klass,0)
/**
* OIL_DEFINE_IMPL_REF:
* @function: name of function
* @klass: name of class to declare (without oil_ prefix)
*
* Shorthand for defining a reference implementation. See OIL_DEFINE_IMPL_
FULL().
*/
#define OIL_DEFINE_IMPL_REF(function,klass) \ #define OIL_DEFINE_IMPL_REF(function,klass) \
OIL_DEFINE_IMPL_FULL(function,klass,OIL_IMPL_FLAG_REF) OIL_DEFINE_IMPL_FULL(function,klass,OIL_IMPL_FLAG_REF)
/**
* OIL_DEFINE_IMPL_ASM:
* @function: name of function
* @klass: name of class to declare (without oil_ prefix)
*
* Shorthand for defining an implementation written in inline
* assembly code. See OIL_DEFINE_IMPL_FULL().
*/
#define OIL_DEFINE_IMPL_ASM(function,klass) \ #define OIL_DEFINE_IMPL_ASM(function,klass) \
OIL_DEFINE_IMPL_FULL(function,klass,OIL_IMPL_FLAG_ASM) OIL_DEFINE_IMPL_FULL(function,klass,OIL_IMPL_FLAG_ASM)
/**
* OIL_DEFINE_IMPL_DEPENDS
* @function: name of function
* @klass: name of class to declare (without oil_ prefix)
* @...: other classes this implementation uses
*
* Shorthand for defining an implementation that uses another Liboil
* function class. This is not currently used. See
* OIL_DEFINE_IMPL_FULL().
*/
#define OIL_DEFINE_IMPL_DEPENDS(function,klass,...) \ #define OIL_DEFINE_IMPL_DEPENDS(function,klass,...) \
OIL_DEFINE_IMPL_FULL(function,klass,0) OIL_DEFINE_IMPL_FULL(function,klass,0)
void oil_optimize_all (void); void oil_optimize_all (void);
void oil_optimize (const char *class_name); void oil_optimize (const char *class_name);
OilFunctionClass * oil_class_get_by_index (int i); OilFunctionClass * oil_class_get_by_index (int i);
OilFunctionClass *oil_class_get (const char *class_name); OilFunctionClass *oil_class_get (const char *class_name);
void oil_class_optimize (OilFunctionClass *klass); void oil_class_optimize (OilFunctionClass *klass);
int oil_class_get_n_classes (void); int oil_class_get_n_classes (void);
 End of changes. 22 change blocks. 
21 lines changed or deleted 189 lines changed or added


 liboilparameter.h   liboilparameter.h 
skipping to change at line 33 skipping to change at line 33
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_PARAMETER_H_ #ifndef _LIBOIL_PARAMETER_H_
#define _LIBOIL_PARAMETER_H_ #define _LIBOIL_PARAMETER_H_
#include <liboil/liboiltypes.h> #include <liboil/liboiltypes.h>
/**
* OilType:
*
* Enumeration containing the data types understood by Liboil.
*/
typedef enum { typedef enum {
OIL_TYPE_UNKNOWN = 0, OIL_TYPE_UNKNOWN = 0,
OIL_TYPE_INT, OIL_TYPE_INT,
OIL_TYPE_s8, OIL_TYPE_s8,
OIL_TYPE_u8, OIL_TYPE_u8,
OIL_TYPE_s16, OIL_TYPE_s16,
OIL_TYPE_u16, OIL_TYPE_u16,
OIL_TYPE_s32, OIL_TYPE_s32,
OIL_TYPE_u32, OIL_TYPE_u32,
OIL_TYPE_s64, OIL_TYPE_s64,
skipping to change at line 58 skipping to change at line 63
OIL_TYPE_s16p, OIL_TYPE_s16p,
OIL_TYPE_u16p, OIL_TYPE_u16p,
OIL_TYPE_s32p, OIL_TYPE_s32p,
OIL_TYPE_u32p, OIL_TYPE_u32p,
OIL_TYPE_s64p, OIL_TYPE_s64p,
OIL_TYPE_u64p, OIL_TYPE_u64p,
OIL_TYPE_f32p, OIL_TYPE_f32p,
OIL_TYPE_f64p, OIL_TYPE_f64p,
} OilType; } OilType;
/**
* OilArgType:
*
* Enumeration containing the types of parameter types understood
* by Liboil.
*/
typedef enum { typedef enum {
OIL_ARG_UNKNOWN = 0, OIL_ARG_UNKNOWN = 0,
OIL_ARG_N, OIL_ARG_N,
OIL_ARG_M, OIL_ARG_M,
OIL_ARG_DEST1, OIL_ARG_DEST1,
OIL_ARG_DSTR1, OIL_ARG_DSTR1,
OIL_ARG_DEST2, OIL_ARG_DEST2,
OIL_ARG_DSTR2, OIL_ARG_DSTR2,
OIL_ARG_SRC1, OIL_ARG_SRC1,
OIL_ARG_SSTR1, OIL_ARG_SSTR1,
skipping to change at line 84 skipping to change at line 95
OIL_ARG_SRC5, OIL_ARG_SRC5,
OIL_ARG_SSTR5, OIL_ARG_SSTR5,
OIL_ARG_INPLACE1, OIL_ARG_INPLACE1,
OIL_ARG_ISTR1, OIL_ARG_ISTR1,
OIL_ARG_INPLACE2, OIL_ARG_INPLACE2,
OIL_ARG_ISTR2, OIL_ARG_ISTR2,
OIL_ARG_LAST OIL_ARG_LAST
} OilArgType; } OilArgType;
/**
* OilParameter:
*
* An opaque structure representing a single parameter in the
* function prototype of an OilFunctionClass.
*/
struct _OilParameter { struct _OilParameter {
/*< private >*/
char *type_name; char *type_name;
char *parameter_name; char *parameter_name;
int order; int order;
OilType type; OilType type;
int direction; int direction;
int is_pointer; int is_pointer;
int is_stride; int is_stride;
int index; int index;
 End of changes. 4 change blocks. 
0 lines changed or deleted 18 lines changed or added


 liboilprofile.h   liboilprofile.h 
skipping to change at line 33 skipping to change at line 33
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_PROFILE_H_ #ifndef _LIBOIL_PROFILE_H_
#define _LIBOIL_PROFILE_H_ #define _LIBOIL_PROFILE_H_
#include <stdint.h> #include <stdint.h>
/**
* OIL_PROFILE_HIST_LENGTH
*
* Internal definition of the number of histogram entries in #OilProfile.
*/
#define OIL_PROFILE_HIST_LENGTH 10 #define OIL_PROFILE_HIST_LENGTH 10
typedef struct _OilProfile OilProfile; typedef struct _OilProfile OilProfile;
/**
* OilProfile:
*
* An opaque structure representing profiling information.
*/
struct _OilProfile { struct _OilProfile {
/*< private >*/
unsigned long start; unsigned long start;
unsigned long stop; unsigned long stop;
unsigned long min; unsigned long min;
unsigned long last; unsigned long last;
unsigned long total; unsigned long total;
int n; int n;
int hist_n; int hist_n;
unsigned long hist_time[OIL_PROFILE_HIST_LENGTH]; unsigned long hist_time[OIL_PROFILE_HIST_LENGTH];
int hist_count[OIL_PROFILE_HIST_LENGTH]; int hist_count[OIL_PROFILE_HIST_LENGTH];
}; };
/**
* oil_profile_stamp:
*
* Creates a timestamp based on a CPU-specific high-frequency
* counter, if available.
*
* Returns: a timestamp
*/
#if defined(__i386__) #if defined(__i386__)
static inline unsigned long oil_profile_stamp(void) static inline unsigned long oil_profile_stamp(void)
{ {
unsigned long ts; unsigned long ts;
__asm__ __volatile__("rdtsc\n" : "=a" (ts) : : "edx"); __asm__ __volatile__("rdtsc\n" : "=a" (ts) : : "edx");
return ts; return ts;
} }
#elif defined(__amd64__) #elif defined(__amd64__)
skipping to change at line 142 skipping to change at line 161
#define oil_profile_stamp() oil_profile_stamp_gtod() #define oil_profile_stamp() oil_profile_stamp_gtod()
#endif #endif
unsigned long oil_profile_stamp_gtod (void); unsigned long oil_profile_stamp_gtod (void);
void oil_profile_init(OilProfile *prof); void oil_profile_init(OilProfile *prof);
void oil_profile_stop_handle(OilProfile *prof); void oil_profile_stop_handle(OilProfile *prof);
void oil_profile_get_ave_std (OilProfile *prof, double *ave_p, double *std_ p); void oil_profile_get_ave_std (OilProfile *prof, double *ave_p, double *std_ p);
/**
* oil_profile_start:
* @x: a pointer to an OilProfile structure
*
* Starts a profiling run by obtaining a timestamp via oil_profile_stamp()
* and writing it into @x.
*/
#define oil_profile_start(x) do{ \ #define oil_profile_start(x) do{ \
(x)->start = oil_profile_stamp(); \ (x)->start = oil_profile_stamp(); \
}while(0) }while(0)
/**
* oil_profile_stop:
* @x: a pointer to an OilProfile structure
*
* Stops a profiling run by obtaining a timestamp via oil_profile_stamp()
* and writing it into @x. It then calls oil_profile_stop_handle() to
* handle post-processing of the profiling run.
*/
#define oil_profile_stop(x) do{ \ #define oil_profile_stop(x) do{ \
(x)->stop = oil_profile_stamp(); \ (x)->stop = oil_profile_stamp(); \
oil_profile_stop_handle(x); \ oil_profile_stop_handle(x); \
}while(0) }while(0)
#endif #endif
 End of changes. 6 change blocks. 
0 lines changed or deleted 34 lines changed or added


 liboilprototype.h   liboilprototype.h 
skipping to change at line 35 skipping to change at line 35
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_PROTOTYPE_H_ #ifndef _LIBOIL_PROTOTYPE_H_
#define _LIBOIL_PROTOTYPE_H_ #define _LIBOIL_PROTOTYPE_H_
#include <liboil/liboilfunction.h> #include <liboil/liboilfunction.h>
#include <liboil/liboilparameter.h> #include <liboil/liboilparameter.h>
typedef struct _OilPrototype OilPrototype; typedef struct _OilPrototype OilPrototype;
/**
* OilPrototype:
*
* An opaque structure describing the C function prototype of
* an @OilFunctionClass.
*/
struct _OilPrototype { struct _OilPrototype {
int n_params; int n_params;
OilParameter *params; OilParameter *params;
OilFunctionClass *klass; OilFunctionClass *klass;
}; };
OilPrototype *oil_prototype_from_string (const char *s); OilPrototype *oil_prototype_from_string (const char *s);
char *oil_prototype_to_string (OilPrototype *proto); char *oil_prototype_to_string (OilPrototype *proto);
void oil_prototype_free (OilPrototype *proto); void oil_prototype_free (OilPrototype *proto);
void oil_prototype_append_param (OilPrototype *proto, OilParameter *param); void oil_prototype_append_param (OilPrototype *proto, OilParameter *param);
 End of changes. 1 change blocks. 
0 lines changed or deleted 6 lines changed or added


 liboilrandom.h   liboilrandom.h 
skipping to change at line 33 skipping to change at line 33
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_RANDOM_H_ #ifndef _LIBOIL_RANDOM_H_
#define _LIBOIL_RANDOM_H_ #define _LIBOIL_RANDOM_H_
#include <stdlib.h> #include <stdlib.h>
/* random number generation */ /**
* SECTION:liboilrandom
* @title: Random Number Generation
* @short_description: Random number generation
*/
/**
* oil_rand_s32:
*
* Evaluates to a random integer in the range [-(1<<31), (1<<31)-1].
*/
#define oil_rand_s32() ((rand()&0xffff)<<16 | (rand()&0xffff)) #define oil_rand_s32() ((rand()&0xffff)<<16 | (rand()&0xffff))
/**
* oil_rand_s32_l31:
*
* Evaluates to a random integer in the range [-(1<<30), (1<<30)-1].
*/
#define oil_rand_s32_l31() (((int32_t)rand())-0x40000000) #define oil_rand_s32_l31() (((int32_t)rand())-0x40000000)
/**
* oil_rand_s64:
*
* Evaluates to a random integer in the range [-(1<<63), (1<<63)-1].
*/
#define oil_rand_s64() ((int64_t)(oil_rand_s32())<<32 | oil_rand_s32()) #define oil_rand_s64() ((int64_t)(oil_rand_s32())<<32 | oil_rand_s32())
/**
* oil_rand_s16:
*
* Evaluates to a random integer in the range [-(1<<15), (1<<15)-1].
*/
#define oil_rand_s16() ((int16_t)(rand()&0xffff)) #define oil_rand_s16() ((int16_t)(rand()&0xffff))
/**
* oil_rand_s16_l15:
*
* Evaluates to a random integer in the range [-(1<<14), (1<<14)-1].
*/
#define oil_rand_s16_l15() (oil_rand_s16()>>1) #define oil_rand_s16_l15() (oil_rand_s16()>>1)
/**
* oil_rand_s16_l9:
*
* Evaluates to a random integer in the range [-(1<<8), (1<<8)-1].
*/
#define oil_rand_s16_l9() (oil_rand_s16()>>7) #define oil_rand_s16_l9() (oil_rand_s16()>>7)
/**
* oil_rand_s16_l8:
*
* Evaluates to a random integer in the range [-(1<<7), (1<<7)-1].
*/
#define oil_rand_s16_l8() (oil_rand_s16()>>8) #define oil_rand_s16_l8() (oil_rand_s16()>>8)
/**
* oil_rand_s16_l4:
*
* Evaluates to a random integer in the range [-(1<<3), (1<<3)-1].
*/
#define oil_rand_s16_l4() (oil_rand_s16()>>12) #define oil_rand_s16_l4() (oil_rand_s16()>>12)
/**
* oil_rand_s8:
*
* Evaluates to a random integer in the range [-(1<<7), (1<<7)-1].
*/
#define oil_rand_s8() ((int8_t)(rand()&0xffff)) #define oil_rand_s8() ((int8_t)(rand()&0xffff))
/**
* oil_rand_u32:
*
* Evaluates to a random integer in the range [0, (1<<32)-1].
*/
#define oil_rand_u32() ((uint32_t)((rand()&0xffff)<<16 | (rand()&0xffff))) #define oil_rand_u32() ((uint32_t)((rand()&0xffff)<<16 | (rand()&0xffff)))
/**
* oil_rand_u32_l31:
*
* Evaluates to a random integer in the range [0, (1<<31)-1].
*/
#define oil_rand_u32_l31() ((uint32_t)rand()) #define oil_rand_u32_l31() ((uint32_t)rand())
/**
* oil_rand_u64:
*
* Evaluates to a random integer in the range [0, (1<<64)-1].
*/
#define oil_rand_u64() ((uint64_t)(oil_rand_u32())<<32 | oil_rand_u32()) #define oil_rand_u64() ((uint64_t)(oil_rand_u32())<<32 | oil_rand_u32())
/**
* oil_rand_u16:
*
* Evaluates to a random integer in the range [0, (1<<16)-1].
*/
#define oil_rand_u16() ((uint16_t)(rand()&0xffff)) #define oil_rand_u16() ((uint16_t)(rand()&0xffff))
/**
* oil_rand_u8:
*
* Evaluates to a random integer in the range [0, (1<<8)-1].
*/
#define oil_rand_u8() ((uint8_t)(rand()&0xffff)) #define oil_rand_u8() ((uint8_t)(rand()&0xffff))
/**
* oil_rand_f64_0_1:
*
* Evaluates to a random double-precision floating point number
* in the range [0, 1.0).
*/
#define oil_rand_f64_0_1() (((rand()/(RAND_MAX+1.0))+rand())/(RAND_MAX+1.0) ) #define oil_rand_f64_0_1() (((rand()/(RAND_MAX+1.0))+rand())/(RAND_MAX+1.0) )
/**
* oil_rand_f64_s32:
*
* Evaluates to a random double-precision floating point number
* in the range [-(1<<31), (1<<31)). Note that when rounded to the
* nearest integer, this exceeds the range of int32_t.
*/
#define oil_rand_f64_s32() (oil_rand_f64_0_1()*4294967296.0-2147483648.0) #define oil_rand_f64_s32() (oil_rand_f64_0_1()*4294967296.0-2147483648.0)
/**
* oil_rand_f64_s16:
*
* Evaluates to a random double-precision floating point number
* in the range [-(1<<15), (1<<15)). Note that when rounded to the
* nearest integer, this exceeds the range of int16_t.
*/
#define oil_rand_f64_s16() (oil_rand_f64_0_1()*65536.0-32768.0) #define oil_rand_f64_s16() (oil_rand_f64_0_1()*65536.0-32768.0)
/**
* oil_rand_f64_s8:
*
* Evaluates to a random double-precision floating point number
* in the range [-(1<<7), (1<<7)). Note that when rounded to the
* nearest integer, this exceeds the range of int8_t.
*/
#define oil_rand_f64_s8() (oil_rand_f64_0_1()*256.0-128.0) #define oil_rand_f64_s8() (oil_rand_f64_0_1()*256.0-128.0)
/**
* oil_rand_f64_u32:
*
* Evaluates to a random double-precision floating point number
* in the range [0, (1<<32)). Note that when rounded to the
* nearest integer, this exceeds the range of uint32_t.
*/
#define oil_rand_f64_u32() (oil_rand_f64_0_1()*4294967296.0) #define oil_rand_f64_u32() (oil_rand_f64_0_1()*4294967296.0)
/**
* oil_rand_f64_u16:
*
* Evaluates to a random double-precision floating point number
* in the range [0, (1<<16)). Note that when rounded to the
* nearest integer, this exceeds the range of uint16_t.
*/
#define oil_rand_f64_u16() (oil_rand_f64_0_1()*65536.0) #define oil_rand_f64_u16() (oil_rand_f64_0_1()*65536.0)
/**
* oil_rand_f64_u8:
*
* Evaluates to a random double-precision floating point number
* in the range [0, (1<<8)). Note that when rounded to the
* nearest integer, this exceeds the range of uint8_t.
*/
#define oil_rand_f64_u8() (oil_rand_f64_0_1()*256.0) #define oil_rand_f64_u8() (oil_rand_f64_0_1()*256.0)
/**
* oil_rand_f32_0_1:
*
* Evaluates to a random single-precision floating point number
* in the range [0, 1.0).
*/
#define oil_rand_f32_0_1() (rand()/(RAND_MAX+1.0)) #define oil_rand_f32_0_1() (rand()/(RAND_MAX+1.0))
/**
* oil_rand_f32_s32:
*
* Evaluates to a random double-precision floating point number
* in the range [-(1<<31), (1<<31)). Note that when rounded to the
* nearest integer, this exceeds the range of int32_t.
*/
#define oil_rand_f32_s32() (oil_rand_f64_0_1()*4294967296.0-2147483648.0) #define oil_rand_f32_s32() (oil_rand_f64_0_1()*4294967296.0-2147483648.0)
/**
* oil_rand_f32_s16:
*
* Evaluates to a random double-precision floating point number
* in the range [-(1<<15), (1<<15)). Note that when rounded to the
* nearest integer, this exceeds the range of int16_t.
*/
#define oil_rand_f32_s16() (oil_rand_f64_0_1()*65536.0-32768.0) #define oil_rand_f32_s16() (oil_rand_f64_0_1()*65536.0-32768.0)
/**
* oil_rand_f32_s8:
*
* Evaluates to a random double-precision floating point number
* in the range [-(1<<7), (1<<7)). Note that when rounded to the
* nearest integer, this exceeds the range of int8_t.
*/
#define oil_rand_f32_s8() (oil_rand_f64_0_1()*256.0-128.0) #define oil_rand_f32_s8() (oil_rand_f64_0_1()*256.0-128.0)
/**
* oil_rand_f32_u32:
*
* Evaluates to a random double-precision floating point number
* in the range [0, (1<<32)). Note that when rounded to the
* nearest integer, this exceeds the range of uint32_t.
*/
#define oil_rand_f32_u32() (oil_rand_f64_0_1()*4294967296.0) #define oil_rand_f32_u32() (oil_rand_f64_0_1()*4294967296.0)
/**
* oil_rand_f32_u16:
*
* Evaluates to a random double-precision floating point number
* in the range [0, (1<<16)). Note that when rounded to the
* nearest integer, this exceeds the range of uint16_t.
*/
#define oil_rand_f32_u16() (oil_rand_f64_0_1()*65536.0) #define oil_rand_f32_u16() (oil_rand_f64_0_1()*65536.0)
/**
* oil_rand_f32_u8:
*
* Evaluates to a random double-precision floating point number
* in the range [0, (1<<8)). Note that when rounded to the
* nearest integer, this exceeds the range of uint8_t.
*/
#define oil_rand_f32_u8() (oil_rand_f64_0_1()*256.0) #define oil_rand_f32_u8() (oil_rand_f64_0_1()*256.0)
#endif #endif
 End of changes. 29 change blocks. 
1 lines changed or deleted 171 lines changed or added


 liboiltest.h   liboiltest.h 
skipping to change at line 35 skipping to change at line 35
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_TEST_H_ #ifndef _LIBOIL_TEST_H_
#define _LIBOIL_TEST_H_ #define _LIBOIL_TEST_H_
#include <liboil/liboil.h> #include <liboil/liboil.h>
#include <liboil/liboilprototype.h> #include <liboil/liboilprototype.h>
#include <liboil/liboilprofile.h> #include <liboil/liboilprofile.h>
/**
* OilTest:
*
* An opaque structure describing how to test an OilFunctionImpl
* for an OilFunctionClass.
*/
struct _OilTest { struct _OilTest {
/*< private >*/
OilFunctionClass *klass; OilFunctionClass *klass;
OilFunctionImpl *impl; OilFunctionImpl *impl;
OilPrototype *proto; OilPrototype *proto;
OilParameter params[OIL_ARG_LAST]; OilParameter params[OIL_ARG_LAST];
OilProfile prof; OilProfile prof;
int iterations; int iterations;
int n; int n;
int m; int m;
int inited; int inited;
int tested_ref; int tested_ref;
double sum_abs_diff; double sum_abs_diff;
int n_points; int n_points;
}; };
/**
* OilTestFunction:
* @test: the @OilTest structure
*
* Typedef for functions that initialize special values
* in source arrays for a particular function class.
*/
//typedef void (*OilTestFunction) (OilTest *test);
/**
* OIL_TEST_HEADER:
*
* Number of bytes that are prepended to the array test area.
*/
#define OIL_TEST_HEADER 256 #define OIL_TEST_HEADER 256
/**
* OIL_TEST_FOOTER:
*
* Number of bytes that are appended to the array test area.
*/
#define OIL_TEST_FOOTER 256 #define OIL_TEST_FOOTER 256
OilTest *oil_test_new (OilFunctionClass *klass); OilTest *oil_test_new (OilFunctionClass *klass);
void oil_test_free (OilTest *test); void oil_test_free (OilTest *test);
void oil_test_set_iterations (OilTest *test, int iterations); void oil_test_set_iterations (OilTest *test, int iterations);
void oil_test_check_ref (OilTest *test); void oil_test_check_ref (OilTest *test);
int oil_test_check_impl (OilTest *test, OilFunctionImpl *impl); int oil_test_check_impl (OilTest *test, OilFunctionImpl *impl);
 End of changes. 4 change blocks. 
0 lines changed or deleted 26 lines changed or added


 liboiltypes.h   liboiltypes.h 
skipping to change at line 33 skipping to change at line 33
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef _LIBOIL_TYPES_H_ #ifndef _LIBOIL_TYPES_H_
#define _LIBOIL_TYPES_H_ #define _LIBOIL_TYPES_H_
#include <stdint.h> #include <stdint.h>
/**
* NULL:
*
* FIXME: gtk-doc is broken and doesn't know how to ignore this.
*/
#ifndef NULL #ifndef NULL
#define NULL ((void *)0) #define NULL ((void *)0)
#endif #endif
/**
* SECTION:liboiltypes
* @short_description: Internal Liboil types
*/
typedef struct _OilFunctionClass OilFunctionClass; typedef struct _OilFunctionClass OilFunctionClass;
typedef struct _OilFunctionImpl OilFunctionImpl; typedef struct _OilFunctionImpl OilFunctionImpl;
typedef struct _OilParameter OilParameter; typedef struct _OilParameter OilParameter;
typedef struct _OilTest OilTest; typedef struct _OilTest OilTest;
typedef void (*OilTestFunction) (OilTest *test); typedef void (*OilTestFunction) (OilTest *test);
/**
* type_s8:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_s8 int8_t #define type_s8 int8_t
/**
* type_u8:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_u8 uint8_t #define type_u8 uint8_t
/**
* type_s16:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_s16 int16_t #define type_s16 int16_t
/**
* type_u16:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_u16 uint16_t #define type_u16 uint16_t
/**
* type_s32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_s32 int32_t #define type_s32 int32_t
/**
* type_u32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_u32 uint32_t #define type_u32 uint32_t
/**
* type_f32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_f32 float #define type_f32 float
/**
* type_f64:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#define type_f64 double #define type_f64 double
#define type_min_s8 (-128) #define type_min_s8 (-128)
#define type_min_u8 (0) #define type_min_u8 (0)
#define type_min_s16 (-32768) #define type_min_s16 (-32768)
#define type_min_u16 (0) #define type_min_u16 (0)
#define type_min_s32 (-2147483647 - 1) #define type_min_s32 (-2147483647 - 1)
#define type_min_u32 (0) #define type_min_u32 (0)
#define type_max_s8 (127) #define type_max_s8 (127)
#define type_max_u8 (255) #define type_max_u8 (255)
#define type_max_s16 (32767) #define type_max_s16 (32767)
#define type_max_u16 (65535) #define type_max_u16 (65535)
#define type_max_s32 (2147483647) #define type_max_s32 (2147483647)
#define type_max_u32 (4294967295U) #define type_max_u32 (4294967295U)
/**
* type_min_s8:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_u8:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_s16:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_u16:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_s32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_u32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_f32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_min_f64:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_s8:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_u8:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_s16:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_u16:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_s32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_u32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_f32:
*
* Useful for autogenerated code. Do not use otherwise.
*/
/**
* type_max_f64:
*
* Useful for autogenerated code. Do not use otherwise.
*/
#endif #endif
 End of changes. 11 change blocks. 
0 lines changed or deleted 132 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/