genericopenlibs/liboil/src/clamp.c
changeset 18 47c74d1534e1
equal deleted inserted replaced
0:e4d67989cc36 18:47c74d1534e1
       
     1 /*
       
     2  * Copyright (c) 2005
       
     3  *	Eric Anholt.  All rights reserved.
       
     4  *
       
     5  * Redistribution and use in source and binary forms, with or without
       
     6  * modification, are permitted provided that the following conditions
       
     7  * are met:
       
     8  * 1. Redistributions of source code must retain the above copyright
       
     9  *    notice, this list of conditions and the following disclaimer.
       
    10  * 2. Redistributions in binary form must reproduce the above copyright
       
    11  *    notice, this list of conditions and the following disclaimer in the
       
    12  *    documentation and/or other materials provided with the distribution.
       
    13  *
       
    14  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
       
    15  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
       
    16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
       
    17  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE
       
    18  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
       
    19  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
       
    20  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
       
    21  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
       
    22  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
       
    23  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
       
    24  * SUCH DAMAGE.
       
    25  */
       
    26 //Portions Copyright (c)  2008-2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. 
       
    27 
       
    28 #ifdef HAVE_CONFIG_H
       
    29 #include "config.h"
       
    30 #endif
       
    31 
       
    32 #include <liboil/liboilfunction.h>
       
    33 #include <liboil/liboiltest.h>
       
    34 
       
    35 #define CLAMP_DEFINE_REF(type) \
       
    36 static void clamp_ ## type ## _ref ( \
       
    37     oil_type_ ## type *dest, \
       
    38     const oil_type_ ## type *src, \
       
    39     int n, \
       
    40     const oil_type_ ## type *min, \
       
    41     const oil_type_ ## type *max) \
       
    42 { \
       
    43   int i; \
       
    44   oil_type_ ## type x; \
       
    45   for (i = 0; i < n; i++) { \
       
    46     x = src[i]; \
       
    47     if (x < *min) \
       
    48       x = *min; \
       
    49     if (x > *max) \
       
    50       x = *max; \
       
    51     dest[i] = x; \
       
    52   } \
       
    53 } \
       
    54 static void clamp_ ## type ## _test (OilTest *test) \
       
    55 { \
       
    56   oil_type_ ## type *lo = (oil_type_ ## type *) \
       
    57       (test->params[OIL_ARG_SRC2].src_data + \
       
    58        test->params[OIL_ARG_SRC2].test_header); \
       
    59   oil_type_ ## type *hi = (oil_type_ ## type *) \
       
    60       (test->params[OIL_ARG_SRC3].src_data + \
       
    61        test->params[OIL_ARG_SRC3].test_header); \
       
    62   if (*lo > *hi) { \
       
    63     oil_type_ ## type tmp; \
       
    64     tmp = *lo; \
       
    65     *lo = *hi; \
       
    66     *hi = tmp; \
       
    67   } \
       
    68 } \
       
    69 OIL_DEFINE_CLASS_FULL(clamp_ ## type, \
       
    70     "oil_type_" #type " *dest, " \
       
    71     "oil_type_" #type " *src, " \
       
    72     "int n, " \
       
    73     "oil_type_" #type " *s2_1, " \
       
    74     "oil_type_" #type " *s3_1", \
       
    75     clamp_ ## type ## _test); \
       
    76 OIL_DEFINE_IMPL_REF(clamp_ ## type ## _ref, clamp_ ## type)
       
    77 
       
    78 CLAMP_DEFINE_REF (s8);
       
    79 CLAMP_DEFINE_REF (u8);
       
    80 CLAMP_DEFINE_REF (s16);
       
    81 CLAMP_DEFINE_REF (u16);
       
    82 CLAMP_DEFINE_REF (s32);
       
    83 CLAMP_DEFINE_REF (u32);
       
    84 CLAMP_DEFINE_REF (f32);
       
    85 CLAMP_DEFINE_REF (f64);
       
    86 
       
    87 
       
    88 
       
    89 /**
       
    90  * oil_clamp_s8:
       
    91  * @dest:
       
    92  * @src:
       
    93  * @n:
       
    94  * @s2_1:
       
    95  * @s3_1:
       
    96  *
       
    97  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
    98  * the result in @dest.
       
    99  */
       
   100 
       
   101 /**
       
   102  * oil_clamp_u8:
       
   103  * @dest:
       
   104  * @src:
       
   105  * @n:
       
   106  * @s2_1:
       
   107  * @s3_1:
       
   108  *
       
   109  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   110  * the result in @dest.
       
   111  */
       
   112 
       
   113 /**
       
   114  * oil_clamp_s16:
       
   115  * @dest:
       
   116  * @src:
       
   117  * @n:
       
   118  * @s2_1:
       
   119  * @s3_1:
       
   120  *
       
   121  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   122  * the result in @dest.
       
   123  */
       
   124 
       
   125 /**
       
   126  * oil_clamp_u16:
       
   127  * @dest:
       
   128  * @src:
       
   129  * @n:
       
   130  * @s2_1:
       
   131  * @s3_1:
       
   132  *
       
   133  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   134  * the result in @dest.
       
   135  */
       
   136 
       
   137 /**
       
   138  * oil_clamp_s32:
       
   139  * @dest:
       
   140  * @src:
       
   141  * @n:
       
   142  * @s2_1:
       
   143  * @s3_1:
       
   144  *
       
   145  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   146  * the result in @dest.
       
   147  */
       
   148 
       
   149 /**
       
   150  * oil_clamp_u32:
       
   151  * @dest:
       
   152  * @src:
       
   153  * @n:
       
   154  * @s2_1:
       
   155  * @s3_1:
       
   156  *
       
   157  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   158  * the result in @dest.
       
   159  */
       
   160 
       
   161 /**
       
   162  * oil_clamp_f32:
       
   163  * @dest:
       
   164  * @src:
       
   165  * @n:
       
   166  * @s2_1:
       
   167  * @s3_1:
       
   168  *
       
   169  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   170  * the result in @dest.
       
   171  */
       
   172 
       
   173 /**
       
   174  * oil_clamp_f64:
       
   175  * @dest:
       
   176  * @src:
       
   177  * @n:
       
   178  * @s2_1:
       
   179  * @s3_1:
       
   180  *
       
   181  * Clamps each value in @src to the range [@s2_1,@s3_1] and places
       
   182  * the result in @dest.
       
   183  */
       
   184 
       
   185 #define CLAMPLOW_DEFINE_REF(type) \
       
   186 static void clamplow_ ## type ## _ref ( \
       
   187     oil_type_ ## type *dest, \
       
   188     const oil_type_ ## type *src, \
       
   189     int n, \
       
   190     const oil_type_ ## type *min) \
       
   191 { \
       
   192   int i; \
       
   193   oil_type_ ## type x; \
       
   194   for (i = 0; i < n; i++) { \
       
   195     x = src[i]; \
       
   196     if (x < *min) \
       
   197       x = *min; \
       
   198     dest[i] = x; \
       
   199   } \
       
   200 } \
       
   201 OIL_DEFINE_CLASS(clamplow_ ## type, \
       
   202     "oil_type_" #type " *dest, " \
       
   203     "oil_type_" #type " *src, " \
       
   204     "int n, " \
       
   205     "oil_type_" #type " *s2_1"); \
       
   206 OIL_DEFINE_IMPL_REF(clamplow_ ## type ## _ref, clamplow_ ## type)
       
   207 
       
   208 CLAMPLOW_DEFINE_REF (s8);
       
   209 CLAMPLOW_DEFINE_REF (u8);
       
   210 CLAMPLOW_DEFINE_REF (s16);
       
   211 CLAMPLOW_DEFINE_REF (u16);
       
   212 CLAMPLOW_DEFINE_REF (s32);
       
   213 CLAMPLOW_DEFINE_REF (u32);
       
   214 CLAMPLOW_DEFINE_REF (f32);
       
   215 CLAMPLOW_DEFINE_REF (f64);
       
   216 
       
   217 /**
       
   218  * oil_clamplow_s8:
       
   219  * @dest:
       
   220  * @src:
       
   221  * @n:
       
   222  * @s2_1:
       
   223  *
       
   224  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   225  * @dest.
       
   226  */
       
   227 
       
   228 
       
   229 /**
       
   230  * oil_clamplow_u8:
       
   231  * @dest:
       
   232  * @src:
       
   233  * @n:
       
   234  * @s2_1:
       
   235  *
       
   236  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   237  * @dest.
       
   238  */
       
   239 
       
   240 /**
       
   241  * oil_clamplow_s16:
       
   242  * @dest:
       
   243  * @src:
       
   244  * @n:
       
   245  * @s2_1:
       
   246  *
       
   247  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   248  * @dest.
       
   249  */
       
   250 
       
   251 
       
   252 /**
       
   253  * oil_clamplow_u16:
       
   254  * @dest:
       
   255  * @src:
       
   256  * @n:
       
   257  * @s2_1:
       
   258  *
       
   259  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   260  * @dest.
       
   261  */
       
   262 
       
   263 /**
       
   264  * oil_clamplow_s32:
       
   265  * @dest:
       
   266  * @src:
       
   267  * @n:
       
   268  * @s2_1:
       
   269  *
       
   270  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   271  * @dest.
       
   272  */
       
   273 
       
   274 
       
   275 /**
       
   276  * oil_clamplow_u32:
       
   277  * @dest:
       
   278  * @src:
       
   279  * @n:
       
   280  * @s2_1:
       
   281  *
       
   282  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   283  * @dest.
       
   284  */
       
   285 
       
   286 /**
       
   287  * oil_clamplow_f32:
       
   288  * @dest:
       
   289  * @src:
       
   290  * @n:
       
   291  * @s2_1:
       
   292  *
       
   293  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   294  * @dest.
       
   295  */
       
   296 
       
   297 
       
   298 /**
       
   299  * oil_clamplow_f64:
       
   300  * @dest:
       
   301  * @src:
       
   302  * @n:
       
   303  * @s2_1:
       
   304  *
       
   305  * Clamps each value in @src to a lower bound of @s2_1 and places the result in
       
   306  * @dest.
       
   307  */
       
   308 
       
   309 #define CLAMPHIGH_DEFINE_REF(type) \
       
   310 static void clamphigh_ ## type ## _ref ( \
       
   311     oil_type_ ## type *dest, \
       
   312     const oil_type_ ## type *src, \
       
   313     int n, \
       
   314     const oil_type_ ## type *max) \
       
   315 { \
       
   316   int i; \
       
   317   oil_type_ ## type x; \
       
   318   for (i = 0; i < n; i++) { \
       
   319     x = src[i]; \
       
   320     if (x > *max) \
       
   321       x = *max; \
       
   322     dest[i] = x; \
       
   323   } \
       
   324 } \
       
   325 OIL_DEFINE_CLASS(clamphigh_ ## type, \
       
   326     "oil_type_" #type " *dest, " \
       
   327     "oil_type_" #type " *src, " \
       
   328     "int n, " \
       
   329     "oil_type_" #type " *s2_1"); \
       
   330 OIL_DEFINE_IMPL_REF(clamphigh_ ## type ## _ref, clamphigh_ ## type)
       
   331 
       
   332 CLAMPHIGH_DEFINE_REF (s8);
       
   333 CLAMPHIGH_DEFINE_REF (u8);
       
   334 CLAMPHIGH_DEFINE_REF (s16);
       
   335 CLAMPHIGH_DEFINE_REF (u16);
       
   336 CLAMPHIGH_DEFINE_REF (s32);
       
   337 CLAMPHIGH_DEFINE_REF (u32);
       
   338 CLAMPHIGH_DEFINE_REF (f32);
       
   339 CLAMPHIGH_DEFINE_REF (f64);
       
   340 
       
   341 #ifdef	__SYMBIAN32__
       
   342  
       
   343 OilFunctionClass* __oil_function_class_clamp_s8() {
       
   344         return &_oil_function_class_clamp_s8;
       
   345 }
       
   346 #endif
       
   347 
       
   348 #ifdef	__SYMBIAN32__
       
   349  
       
   350 OilFunctionClass* __oil_function_class_clamp_u8() {
       
   351         return &_oil_function_class_clamp_u8;
       
   352 }
       
   353 #endif
       
   354 
       
   355 #ifdef	__SYMBIAN32__
       
   356  
       
   357 OilFunctionClass* __oil_function_class_clamp_s16() {
       
   358         return &_oil_function_class_clamp_s16;
       
   359 }
       
   360 #endif
       
   361 #ifdef	__SYMBIAN32__
       
   362  
       
   363 OilFunctionClass* __oil_function_class_clamp_u16() {
       
   364         return &_oil_function_class_clamp_u16;
       
   365 }
       
   366 #endif
       
   367 #ifdef	__SYMBIAN32__
       
   368  
       
   369 OilFunctionClass* __oil_function_class_clamp_s32() {
       
   370         return &_oil_function_class_clamp_s32;
       
   371 }
       
   372 #endif
       
   373 #ifdef	__SYMBIAN32__
       
   374  
       
   375 OilFunctionClass* __oil_function_class_clamp_u32() {
       
   376         return &_oil_function_class_clamp_u32;
       
   377 }
       
   378 #endif
       
   379 #ifdef	__SYMBIAN32__
       
   380  
       
   381 OilFunctionClass* __oil_function_class_clamp_f32() {
       
   382         return &_oil_function_class_clamp_f32;
       
   383 }
       
   384 #endif
       
   385 #ifdef	__SYMBIAN32__
       
   386  
       
   387 OilFunctionClass* __oil_function_class_clamp_f64() {
       
   388         return &_oil_function_class_clamp_f64;
       
   389 }
       
   390 #endif
       
   391 
       
   392 
       
   393 #ifdef	__SYMBIAN32__
       
   394  
       
   395 OilFunctionClass* __oil_function_class_clamphigh_s8() {
       
   396         return &_oil_function_class_clamp_s8;
       
   397 }
       
   398 #endif
       
   399 
       
   400 #ifdef	__SYMBIAN32__
       
   401  
       
   402 OilFunctionClass* __oil_function_class_clamphigh_u8() {
       
   403         return &_oil_function_class_clamp_u8;
       
   404 }
       
   405 #endif
       
   406 
       
   407 #ifdef	__SYMBIAN32__
       
   408  
       
   409 OilFunctionClass* __oil_function_class_clamphigh_s16() {
       
   410         return &_oil_function_class_clamp_s16;
       
   411 }
       
   412 #endif
       
   413 #ifdef	__SYMBIAN32__
       
   414  
       
   415 OilFunctionClass* __oil_function_class_clamphigh_u16() {
       
   416         return &_oil_function_class_clamp_u16;
       
   417 }
       
   418 #endif
       
   419 #ifdef	__SYMBIAN32__
       
   420  
       
   421 OilFunctionClass* __oil_function_class_clamphigh_s32() {
       
   422         return &_oil_function_class_clamp_s32;
       
   423 }
       
   424 #endif
       
   425 #ifdef	__SYMBIAN32__
       
   426  
       
   427 OilFunctionClass* __oil_function_class_clamphigh_u32() {
       
   428         return &_oil_function_class_clamp_u32;
       
   429 }
       
   430 #endif
       
   431 #ifdef	__SYMBIAN32__
       
   432  
       
   433 OilFunctionClass* __oil_function_class_clamphigh_f32() {
       
   434         return &_oil_function_class_clamp_f32;
       
   435 }
       
   436 #endif
       
   437 #ifdef	__SYMBIAN32__
       
   438  
       
   439 OilFunctionClass* __oil_function_class_clamphigh_f64() {
       
   440         return &_oil_function_class_clamp_f64;
       
   441 }
       
   442 #endif
       
   443 
       
   444 
       
   445 
       
   446 
       
   447 #ifdef	__SYMBIAN32__
       
   448  
       
   449 OilFunctionClass* __oil_function_class_clamplow_s8() {
       
   450         return &_oil_function_class_clamplow_s8;
       
   451 }
       
   452 #endif
       
   453 
       
   454 #ifdef	__SYMBIAN32__
       
   455  
       
   456 OilFunctionClass* __oil_function_class_clamplow_u8() {
       
   457         return &_oil_function_class_clamplow_u8;
       
   458 }
       
   459 #endif
       
   460 
       
   461 #ifdef	__SYMBIAN32__
       
   462  
       
   463 OilFunctionClass* __oil_function_class_clamplow_s16() {
       
   464         return &_oil_function_class_clamplow_s16;
       
   465 }
       
   466 #endif
       
   467 #ifdef	__SYMBIAN32__
       
   468  
       
   469 OilFunctionClass* __oil_function_class_clamplow_u16() {
       
   470         return &_oil_function_class_clamplow_u16;
       
   471 }
       
   472 #endif
       
   473 #ifdef	__SYMBIAN32__
       
   474  
       
   475 OilFunctionClass* __oil_function_class_clamplow_s32() {
       
   476         return &_oil_function_class_clamplow_s32;
       
   477 }
       
   478 #endif
       
   479 #ifdef	__SYMBIAN32__
       
   480  
       
   481 OilFunctionClass* __oil_function_class_clamplow_u32() {
       
   482         return &_oil_function_class_clamplow_u32;
       
   483 }
       
   484 #endif
       
   485 #ifdef	__SYMBIAN32__
       
   486  
       
   487 OilFunctionClass* __oil_function_class_clamplow_f32() {
       
   488         return &_oil_function_class_clamplow_f32;
       
   489 }
       
   490 #endif
       
   491 #ifdef	__SYMBIAN32__
       
   492  
       
   493 OilFunctionClass* __oil_function_class_clamplow_f64() {
       
   494         return &_oil_function_class_clamplow_f64;
       
   495 }
       
   496 #endif
       
   497 /**
       
   498  * oil_clamphigh_s8:
       
   499  * @dest:
       
   500  * @src:
       
   501  * @n:
       
   502  * @s2_1:
       
   503  *
       
   504  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   505  * @dest.
       
   506  */
       
   507 
       
   508 /**
       
   509  * oil_clamphigh_u8:
       
   510  * @dest:
       
   511  * @src:
       
   512  * @n:
       
   513  * @s2_1:
       
   514  *
       
   515  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   516  * @dest.
       
   517  */
       
   518 
       
   519 /**
       
   520  * oil_clamphigh_s16:
       
   521  * @dest:
       
   522  * @src:
       
   523  * @n:
       
   524  * @s2_1:
       
   525  *
       
   526  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   527  * @dest.
       
   528  */
       
   529 
       
   530 /**
       
   531  * oil_clamphigh_u16:
       
   532  * @dest:
       
   533  * @src:
       
   534  * @n:
       
   535  * @s2_1:
       
   536  *
       
   537  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   538  * @dest.
       
   539  */
       
   540 
       
   541 /**
       
   542  * oil_clamphigh_s32:
       
   543  * @dest:
       
   544  * @src:
       
   545  * @n:
       
   546  * @s2_1:
       
   547  *
       
   548  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   549  * @dest.
       
   550  */
       
   551 
       
   552 /**
       
   553  * oil_clamphigh_u32:
       
   554  * @dest:
       
   555  * @src:
       
   556  * @n:
       
   557  * @s2_1:
       
   558  *
       
   559  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   560  * @dest.
       
   561  */
       
   562 
       
   563 /**
       
   564  * oil_clamphigh_f32:
       
   565  * @dest:
       
   566  * @src:
       
   567  * @n:
       
   568  * @s2_1:
       
   569  *
       
   570  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   571  * @dest.
       
   572  */
       
   573 
       
   574 /**
       
   575  * oil_clamphigh_f64:
       
   576  * @dest:
       
   577  * @src:
       
   578  * @n:
       
   579  * @s2_1:
       
   580  *
       
   581  * Clamps each value in @src to an upper bound of @s2_1 and places the result in
       
   582  * @dest.
       
   583  */
       
   584 
       
   585 
       
   586 #ifdef	__SYMBIAN32__
       
   587  
       
   588 OilFunctionImpl* __oil_function_impl_clamp_s8_ref() {
       
   589 		return &_oil_function_impl_clamp_s8_ref;
       
   590 }
       
   591 #endif
       
   592 
       
   593 #ifdef	__SYMBIAN32__
       
   594  
       
   595 OilFunctionImpl* __oil_function_impl_clamp_u8_ref() {
       
   596 		return &_oil_function_impl_clamp_u8_ref;
       
   597 }
       
   598 #endif
       
   599 
       
   600 #ifdef	__SYMBIAN32__
       
   601  
       
   602 OilFunctionImpl* __oil_function_impl_clamp_s16_ref() {
       
   603 		return &_oil_function_impl_clamp_s16_ref;
       
   604 }
       
   605 #endif
       
   606 
       
   607 #ifdef	__SYMBIAN32__
       
   608  
       
   609 OilFunctionImpl* __oil_function_impl_clamp_u16_ref() {
       
   610 		return &_oil_function_impl_clamp_u16_ref;
       
   611 }
       
   612 #endif
       
   613 
       
   614 #ifdef	__SYMBIAN32__
       
   615  
       
   616 OilFunctionImpl* __oil_function_impl_clamp_s32_ref() {
       
   617 		return &_oil_function_impl_clamp_s32_ref;
       
   618 }
       
   619 #endif
       
   620 
       
   621 #ifdef	__SYMBIAN32__
       
   622  
       
   623 OilFunctionImpl* __oil_function_impl_clamp_u32_ref() {
       
   624 		return &_oil_function_impl_clamp_u32_ref;
       
   625 }
       
   626 #endif
       
   627 
       
   628 #ifdef	__SYMBIAN32__
       
   629  
       
   630 OilFunctionImpl* __oil_function_impl_clamp_f32_ref() {
       
   631 		return &_oil_function_impl_clamp_f32_ref;
       
   632 }
       
   633 #endif
       
   634 
       
   635 #ifdef	__SYMBIAN32__
       
   636  
       
   637 OilFunctionImpl* __oil_function_impl_clamp_f64_ref() {
       
   638 		return &_oil_function_impl_clamp_f64_ref;
       
   639 }
       
   640 #endif
       
   641 
       
   642 #ifdef	__SYMBIAN32__
       
   643  
       
   644 OilFunctionImpl* __oil_function_impl_clamplow_s8_ref() {
       
   645 		return &_oil_function_impl_clamplow_s8_ref;
       
   646 }
       
   647 #endif
       
   648 
       
   649 #ifdef	__SYMBIAN32__
       
   650  
       
   651 OilFunctionImpl* __oil_function_impl_clamplow_u8_ref() {
       
   652 		return &_oil_function_impl_clamplow_u8_ref;
       
   653 }
       
   654 #endif
       
   655 
       
   656 #ifdef	__SYMBIAN32__
       
   657  
       
   658 OilFunctionImpl* __oil_function_impl_clamplow_s16_ref() {
       
   659 		return &_oil_function_impl_clamplow_s16_ref;
       
   660 }
       
   661 #endif
       
   662 
       
   663 #ifdef	__SYMBIAN32__
       
   664  
       
   665 OilFunctionImpl* __oil_function_impl_clamplow_u16_ref() {
       
   666 		return &_oil_function_impl_clamplow_u16_ref;
       
   667 }
       
   668 #endif
       
   669 
       
   670 #ifdef	__SYMBIAN32__
       
   671  
       
   672 OilFunctionImpl* __oil_function_impl_clamplow_s32_ref() {
       
   673 		return &_oil_function_impl_clamplow_s32_ref;
       
   674 }
       
   675 #endif
       
   676 
       
   677 #ifdef	__SYMBIAN32__
       
   678  
       
   679 OilFunctionImpl* __oil_function_impl_clamplow_u32_ref() {
       
   680 		return &_oil_function_impl_clamplow_u32_ref;
       
   681 }
       
   682 #endif
       
   683 
       
   684 #ifdef	__SYMBIAN32__
       
   685  
       
   686 OilFunctionImpl* __oil_function_impl_clamplow_f32_ref() {
       
   687 		return &_oil_function_impl_clamplow_f32_ref;
       
   688 }
       
   689 #endif
       
   690 
       
   691 #ifdef	__SYMBIAN32__
       
   692  
       
   693 OilFunctionImpl* __oil_function_impl_clamplow_f64_ref() {
       
   694 		return &_oil_function_impl_clamplow_f64_ref;
       
   695 }
       
   696 #endif
       
   697 
       
   698 #ifdef	__SYMBIAN32__
       
   699  
       
   700 OilFunctionImpl* __oil_function_impl_clamphigh_s8_ref() {
       
   701 		return &_oil_function_impl_clamphigh_s8_ref;
       
   702 }
       
   703 #endif
       
   704 
       
   705 #ifdef	__SYMBIAN32__
       
   706  
       
   707 OilFunctionImpl* __oil_function_impl_clamphigh_u8_ref() {
       
   708 		return &_oil_function_impl_clamphigh_u8_ref;
       
   709 }
       
   710 #endif
       
   711 
       
   712 #ifdef	__SYMBIAN32__
       
   713  
       
   714 OilFunctionImpl* __oil_function_impl_clamphigh_s16_ref() {
       
   715 		return &_oil_function_impl_clamphigh_s16_ref;
       
   716 }
       
   717 #endif
       
   718 
       
   719 #ifdef	__SYMBIAN32__
       
   720  
       
   721 OilFunctionImpl* __oil_function_impl_clamphigh_u16_ref() {
       
   722 		return &_oil_function_impl_clamphigh_u16_ref;
       
   723 }
       
   724 #endif
       
   725 
       
   726 #ifdef	__SYMBIAN32__
       
   727  
       
   728 OilFunctionImpl* __oil_function_impl_clamphigh_s32_ref() {
       
   729 		return &_oil_function_impl_clamphigh_s32_ref;
       
   730 }
       
   731 #endif
       
   732 
       
   733 #ifdef	__SYMBIAN32__
       
   734  
       
   735 OilFunctionImpl* __oil_function_impl_clamphigh_u32_ref() {
       
   736 		return &_oil_function_impl_clamphigh_u32_ref;
       
   737 }
       
   738 #endif
       
   739 
       
   740 #ifdef	__SYMBIAN32__
       
   741  
       
   742 OilFunctionImpl* __oil_function_impl_clamphigh_f32_ref() {
       
   743 		return &_oil_function_impl_clamphigh_f32_ref;
       
   744 }
       
   745 #endif
       
   746 
       
   747 #ifdef	__SYMBIAN32__
       
   748  
       
   749 OilFunctionImpl* __oil_function_impl_clamphigh_f64_ref() {
       
   750 		return &_oil_function_impl_clamphigh_f64_ref;
       
   751 }
       
   752 #endif
       
   753 
       
   754 
       
   755 
       
   756 #ifdef	__SYMBIAN32__
       
   757  
       
   758 EXPORT_C void** _oil_function_class_ptr_clamp_s8 ()	{
       
   759 	oil_function_class_ptr_clamp_s8 = __oil_function_class_clamp_s8();
       
   760 	return &oil_function_class_ptr_clamp_s8->func;
       
   761 	}
       
   762 #endif
       
   763 
       
   764 #ifdef	__SYMBIAN32__
       
   765  
       
   766 EXPORT_C void** _oil_function_class_ptr_clamp_u8 ()	{
       
   767 	oil_function_class_ptr_clamp_u8 = __oil_function_class_clamp_u8();
       
   768 	return &oil_function_class_ptr_clamp_u8->func;
       
   769 	}
       
   770 #endif
       
   771 
       
   772 #ifdef	__SYMBIAN32__
       
   773  
       
   774 EXPORT_C void** _oil_function_class_ptr_clamp_s16 ()	{
       
   775 	oil_function_class_ptr_clamp_s16 = __oil_function_class_clamp_s16();
       
   776 	return &oil_function_class_ptr_clamp_s16->func;
       
   777 	}
       
   778 #endif
       
   779 
       
   780 #ifdef	__SYMBIAN32__
       
   781  
       
   782 EXPORT_C void** _oil_function_class_ptr_clamp_u16 ()	{
       
   783 	oil_function_class_ptr_clamp_u16 = __oil_function_class_clamp_u16();
       
   784 	return &oil_function_class_ptr_clamp_u16->func;
       
   785 	}
       
   786 #endif
       
   787 
       
   788 #ifdef	__SYMBIAN32__
       
   789  
       
   790 EXPORT_C void** _oil_function_class_ptr_clamp_s32 ()	{
       
   791 	oil_function_class_ptr_clamp_s32 = __oil_function_class_clamp_s32();
       
   792 	return &oil_function_class_ptr_clamp_s32->func;
       
   793 	}
       
   794 #endif
       
   795 
       
   796 #ifdef	__SYMBIAN32__
       
   797  
       
   798 EXPORT_C void** _oil_function_class_ptr_clamp_u32 ()	{
       
   799 	oil_function_class_ptr_clamp_u32 = __oil_function_class_clamp_u32();
       
   800 	return &oil_function_class_ptr_clamp_u32->func;
       
   801 	}
       
   802 #endif
       
   803 
       
   804 #ifdef	__SYMBIAN32__
       
   805  
       
   806 EXPORT_C void** _oil_function_class_ptr_clamp_f32 ()	{
       
   807 	oil_function_class_ptr_clamp_f32 = __oil_function_class_clamp_f32();
       
   808 	return &oil_function_class_ptr_clamp_f32->func;
       
   809 	}
       
   810 #endif
       
   811 
       
   812 #ifdef	__SYMBIAN32__
       
   813  
       
   814 EXPORT_C void** _oil_function_class_ptr_clamp_f64 ()	{
       
   815 	oil_function_class_ptr_clamp_f64 = __oil_function_class_clamp_f64();
       
   816 	return &oil_function_class_ptr_clamp_f64->func;
       
   817 	}
       
   818 #endif
       
   819 
       
   820 #ifdef	__SYMBIAN32__
       
   821  
       
   822 EXPORT_C void** _oil_function_class_ptr_clamphigh_s8 ()	{
       
   823 	oil_function_class_ptr_clamphigh_s8 = __oil_function_class_clamphigh_s8();
       
   824 	return &oil_function_class_ptr_clamphigh_s8->func;
       
   825 	}
       
   826 #endif
       
   827 
       
   828 #ifdef	__SYMBIAN32__
       
   829  
       
   830 EXPORT_C void** _oil_function_class_ptr_clamphigh_u8 ()	{
       
   831 	oil_function_class_ptr_clamphigh_u8 = __oil_function_class_clamphigh_u8();
       
   832 	return &oil_function_class_ptr_clamphigh_u8->func;
       
   833 	}
       
   834 #endif
       
   835 
       
   836 #ifdef	__SYMBIAN32__
       
   837  
       
   838 EXPORT_C void** _oil_function_class_ptr_clamphigh_s16 ()	{
       
   839 	oil_function_class_ptr_clamphigh_s16 = __oil_function_class_clamphigh_s16();
       
   840 	return &oil_function_class_ptr_clamphigh_s16->func;
       
   841 	}
       
   842 #endif
       
   843 
       
   844 #ifdef	__SYMBIAN32__
       
   845  
       
   846 EXPORT_C void** _oil_function_class_ptr_clamphigh_u16 ()	{
       
   847 	oil_function_class_ptr_clamphigh_u16 = __oil_function_class_clamphigh_u16();
       
   848 	return &oil_function_class_ptr_clamphigh_u16->func;
       
   849 	}
       
   850 #endif
       
   851 
       
   852 #ifdef	__SYMBIAN32__
       
   853  
       
   854 EXPORT_C void** _oil_function_class_ptr_clamphigh_s32 ()	{
       
   855 	oil_function_class_ptr_clamphigh_s32 = __oil_function_class_clamphigh_s32();
       
   856 	return &oil_function_class_ptr_clamphigh_s32->func;
       
   857 	}
       
   858 #endif
       
   859 
       
   860 #ifdef	__SYMBIAN32__
       
   861  
       
   862 EXPORT_C void** _oil_function_class_ptr_clamphigh_u32 ()	{
       
   863 	oil_function_class_ptr_clamphigh_u32 = __oil_function_class_clamphigh_u32();
       
   864 	return &oil_function_class_ptr_clamphigh_u32->func;
       
   865 	}
       
   866 #endif
       
   867 
       
   868 #ifdef	__SYMBIAN32__
       
   869  
       
   870 EXPORT_C void** _oil_function_class_ptr_clamphigh_f32 ()	{
       
   871 	oil_function_class_ptr_clamphigh_f32 = __oil_function_class_clamphigh_f32();
       
   872 	return &oil_function_class_ptr_clamphigh_f32->func;
       
   873 	}
       
   874 #endif
       
   875 
       
   876 #ifdef	__SYMBIAN32__
       
   877  
       
   878 EXPORT_C void** _oil_function_class_ptr_clamphigh_f64 ()	{
       
   879 	oil_function_class_ptr_clamphigh_f64 = __oil_function_class_clamphigh_f64();
       
   880 	return &oil_function_class_ptr_clamphigh_f64->func;
       
   881 	}
       
   882 #endif
       
   883 
       
   884 #ifdef	__SYMBIAN32__
       
   885  
       
   886 EXPORT_C void** _oil_function_class_ptr_clamplow_s8 ()	{
       
   887 	oil_function_class_ptr_clamplow_s8 = __oil_function_class_clamplow_s8();
       
   888 	return &oil_function_class_ptr_clamplow_s8->func;
       
   889 	}
       
   890 #endif
       
   891 
       
   892 #ifdef	__SYMBIAN32__
       
   893  
       
   894 EXPORT_C void** _oil_function_class_ptr_clamplow_u8 ()	{
       
   895 	oil_function_class_ptr_clamplow_u8 = __oil_function_class_clamplow_u8();
       
   896 	return &oil_function_class_ptr_clamplow_u8->func;
       
   897 	}
       
   898 #endif
       
   899 
       
   900 #ifdef	__SYMBIAN32__
       
   901  
       
   902 EXPORT_C void** _oil_function_class_ptr_clamplow_s16 ()	{
       
   903 	oil_function_class_ptr_clamplow_s16 = __oil_function_class_clamplow_s16();
       
   904 	return &oil_function_class_ptr_clamplow_s16->func;
       
   905 	}
       
   906 #endif
       
   907 
       
   908 #ifdef	__SYMBIAN32__
       
   909  
       
   910 EXPORT_C void** _oil_function_class_ptr_clamplow_u16 ()	{
       
   911 	oil_function_class_ptr_clamplow_u16 = __oil_function_class_clamplow_u16();
       
   912 	return &oil_function_class_ptr_clamplow_u16->func;
       
   913 	}
       
   914 #endif
       
   915 
       
   916 #ifdef	__SYMBIAN32__
       
   917  
       
   918 EXPORT_C void** _oil_function_class_ptr_clamplow_s32 ()	{
       
   919 	oil_function_class_ptr_clamplow_s32 = __oil_function_class_clamplow_s32();
       
   920 	return &oil_function_class_ptr_clamplow_s32->func;
       
   921 	}
       
   922 #endif
       
   923 
       
   924 #ifdef	__SYMBIAN32__
       
   925  
       
   926 EXPORT_C void** _oil_function_class_ptr_clamplow_u32 ()	{
       
   927 	oil_function_class_ptr_clamplow_u32 = __oil_function_class_clamplow_u32();
       
   928 	return &oil_function_class_ptr_clamplow_u32->func;
       
   929 	}
       
   930 #endif
       
   931 
       
   932 #ifdef	__SYMBIAN32__
       
   933  
       
   934 EXPORT_C void** _oil_function_class_ptr_clamplow_f32 ()	{
       
   935 	oil_function_class_ptr_clamplow_f32 = __oil_function_class_clamplow_f32();
       
   936 	return &oil_function_class_ptr_clamplow_f32->func;
       
   937 	}
       
   938 #endif
       
   939 
       
   940 #ifdef	__SYMBIAN32__
       
   941  
       
   942 EXPORT_C void** _oil_function_class_ptr_clamplow_f64 ()	{
       
   943 	oil_function_class_ptr_clamplow_f64 = __oil_function_class_clamplow_f64();
       
   944 	return &oil_function_class_ptr_clamplow_f64->func;
       
   945 	}
       
   946 #endif
       
   947