packages feed

feldspar-compiler-0.3: Feldspar/C/feldspar_tic64x.h

//
// Copyright (c) 2009-2010, ERICSSON AB All rights reserved.
// 
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
// 
//     * Redistributions of source code must retain the above copyright notice,
//       this list of conditions and the following disclaimer.
//     * Redistributions in binary form must reproduce the above copyright
//       notice, this list of conditions and the following disclaimer in the
//       documentation and/or other materials provided with the distribution.
//     * Neither the name of the ERICSSON AB nor the names of its contributors
//       may be used to endorse or promote products derived from this software
//       without specific prior written permission.
// 
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
// BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
// OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
// THE POSSIBILITY OF SUCH DAMAGE.
//

#ifndef FELDSPAR_TI_C64X_H
#define FELDSPAR_TI_C64X_H



char pow_fun_char( char, char );
short pow_fun_short( short, short );
int pow_fun_int( int, int );
long pow_fun_long( long, long );
long long pow_fun_llong( long long, long long );
unsigned char pow_fun_uchar( unsigned char, unsigned char );
unsigned short pow_fun_ushort( unsigned short, unsigned short );
unsigned pow_fun_uint( unsigned, unsigned );
unsigned long pow_fun_ulong( unsigned long, unsigned long );
unsigned long long pow_fun_ullong( unsigned long long, unsigned long long );

char abs_fun_char( char );
short abs_fun_short( short );
long abs_fun_long( long );
long long abs_fun_llong( long long );

char signum_fun_char( char );
short signum_fun_short( short );
int signum_fun_int( int );
long signum_fun_long( long );
long long signum_fun_llong( long long );
unsigned char signum_fun_uchar( unsigned char );
unsigned short signum_fun_ushort( unsigned short );
unsigned signum_fun_uint( unsigned );
unsigned long signum_fun_ulong( unsigned long );
unsigned long long signum_fun_ullong( unsigned long long );
float signum_fun_float( float );



char setBit_fun_char( char, int );
short setBit_fun_short( short, int );
int setBit_fun_int( int, int );
long setBit_fun_long( long, int );
long long setBit_fun_llong( long long, int );
unsigned char setBit_fun_uchar( unsigned char, int );
unsigned short setBit_fun_ushort( unsigned short, int );
unsigned setBit_fun_uint( unsigned, int );
unsigned long setBit_fun_ulong( unsigned long, int );
unsigned long long setBit_fun_ullong( unsigned long long, int );

char clearBit_fun_char( char, int );
short clearBit_fun_short( short, int );
int clearBit_fun_int( int, int );
long clearBit_fun_long( long, int );
long long clearBit_fun_llong( long long, int );
unsigned char clearBit_fun_uchar( unsigned char, int );
unsigned short clearBit_fun_ushort( unsigned short, int );
unsigned clearBit_fun_uint( unsigned, int );
unsigned long clearBit_fun_ulong( unsigned long, int );
unsigned long long clearBit_fun_ullong( unsigned long long, int );

char complementBit_fun_char( char, int );
short complementBit_fun_short( short, int );
int complementBit_fun_int( int, int );
long complementBit_fun_long( long, int );
long long complementBit_fun_llong( long long, int );
unsigned char complementBit_fun_uchar( unsigned char, int );
unsigned short complementBit_fun_ushort( unsigned short, int );
unsigned complementBit_fun_uint( unsigned, int );
unsigned long complementBit_fun_ulong( unsigned long, int );
unsigned long long complementBit_fun_ullong( unsigned long long, int );

int testBit_fun_char( char, int );
int testBit_fun_short( short, int );
int testBit_fun_int( int, int );
int testBit_fun_long( long, int );
int testBit_fun_llong( long long, int );
int testBit_fun_uchar( unsigned char, int );
int testBit_fun_ushort( unsigned short, int );
int testBit_fun_uint( unsigned, int );
int testBit_fun_ulong( unsigned long, int );
int testBit_fun_ullong( unsigned long long, int );

char rotateL_fun_char( char, int );
short rotateL_fun_short( short, int );
int rotateL_fun_int( int, int );
long rotateL_fun_long( long, int );
long long rotateL_fun_llong( long long, int );
unsigned char rotateL_fun_uchar( unsigned char, int );
unsigned short rotateL_fun_ushort( unsigned short, int );
unsigned long rotateL_fun_ulong( unsigned long, int );
unsigned long long rotateL_fun_ullong( unsigned long long, int );

char rotateR_fun_char( char, int );
short rotateR_fun_short( short, int );
int rotateR_fun_int( int, int );
long rotateR_fun_long( long, int );
long long rotateR_fun_llong( long long, int );
unsigned char rotateR_fun_uchar( unsigned char, int );
unsigned short rotateR_fun_ushort( unsigned short, int );
unsigned rotateR_fun_uint( unsigned, int );
unsigned long rotateR_fun_ulong( unsigned long, int );
unsigned long long rotateR_fun_ullong( unsigned long long, int );

char reverseBits_fun_char( char );
short reverseBits_fun_short( short );
int reverseBits_fun_int( int );
long reverseBits_fun_long( long );
long long reverseBits_fun_llong( long long );
unsigned char reverseBits_fun_uchar( unsigned char );
unsigned short reverseBits_fun_ushort( unsigned short );
unsigned long reverseBits_fun_ulong( unsigned long );
unsigned long long reverseBits_fun_ullong( unsigned long long );

int bitScan_fun_char( char );
int bitScan_fun_short( short );
int bitScan_fun_int( int );
int bitScan_fun_long( long );
int bitScan_fun_llong( long long );
int bitScan_fun_uchar( unsigned char );
int bitScan_fun_ushort( unsigned short );
int bitScan_fun_uint( unsigned );
int bitScan_fun_ulong( unsigned long );
int bitScan_fun_ullong( unsigned long long );

int bitCount_fun_char( char );
int bitCount_fun_short( short );
int bitCount_fun_int( int );
int bitCount_fun_long( long );
int bitCount_fun_llong( long long );
int bitCount_fun_uchar( unsigned char );
int bitCount_fun_ushort( unsigned short );
int bitCount_fun_ulong( unsigned long );
int bitCount_fun_ullong( unsigned long long );



void copy_arrayOf_char( char*, int, char* );
void copy_arrayOf_short( short*, int, short* );
void copy_arrayOf_int( int*, int, int* );
void copy_arrayOf_long( long*, int, long* );
void copy_arrayOf_llong( long long*, int, long long* );
void copy_arrayOf_uchar( unsigned char*, int, unsigned char* );
void copy_arrayOf_ushort( unsigned short*, int, unsigned short* );
void copy_arrayOf_uint( unsigned*, int, unsigned* );
void copy_arrayOf_ulong( unsigned long*, int, unsigned long* );
void copy_arrayOf_ullong( unsigned long long*, int, unsigned long long* );
void copy_arrayOf_float( float*, int, float* );



void traceStart();
void traceEnd();

void trace_char( char, int );
void trace_short( short, int );
void trace_int( int, int );
void trace_long( long, int );
void trace_llong( long long, int );
void trace_uchar( unsigned char, int );
void trace_ushort( unsigned short, int );
void trace_uint( unsigned, int );
void trace_ulong( unsigned long, int );
void trace_ullong( unsigned long long, int );
void trace_float( float, int );

#endif /* FELDSPAR_TI_C64X_H */