view libtwamr/namespace.h @ 254:f931e704adc5

libtwamr: bits and parameter packing
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 05 Apr 2024 07:41:31 +0000
parents 54f6bc41ed10
children 07f936338de1
line wrap: on
line source

/*
 * The code from ETSI consists of many separate modules and lots of little
 * functions; if we were to keep all those global function names untreated,
 * our library would cause horrible namespace pollution for any application
 * linking with it.  Our current solution: we include this header in all
 * internal modules, transforming the names of all internal functions
 * with intermodule linkage.
 */

#ifndef	namespace_h
#define	namespace_h

#define	Overflow	AMR__Overflow
#define	Carry		AMR__Carry

#define	add		AMR__add
#define	sub		AMR__sub
#define	abs_s		AMR__abs_s
#define	shl		AMR__shl
#define	shr		AMR__shr
#define	mult		AMR__mult
#define	L_mult		AMR__L_mult
#define	negate		AMR__negate
#define	extract_h	AMR__extract_h
#define	extract_l	AMR__extract_l
#define	round		AMR__round
#define	L_mac		AMR__L_mac
#define	L_msu		AMR__L_msu
#define	L_macNs		AMR__L_macNs
#define	L_msuNs		AMR__L_msuNs
#define	L_add		AMR__L_add
#define	L_sub		AMR__L_sub
#define	L_add_c		AMR__L_add_c
#define	L_sub_c		AMR__L_sub_c
#define	L_negate	AMR__L_negate
#define	mult_r		AMR__mult_r
#define	L_shl		AMR__L_shl
#define	L_shr		AMR__L_shr
#define	shr_r		AMR__shr_r
#define	mac_r		AMR__mac_r
#define	msu_r		AMR__msu_r
#define	L_deposit_h	AMR__L_deposit_h
#define	L_deposit_l	AMR__L_deposit_l
#define	L_shr_r		AMR__L_shr_r
#define	L_abs		AMR__L_abs
#define	L_sat		AMR__L_sat
#define	norm_m		AMR__norm_s
#define	div_s		AMR__div_s
#define	norm_l		AMR__norm_l

#define	L_Extract	AMR__L_Extract
#define	L_Comp		AMR__L_Comp
#define	Mpy_32		AMR__Mpy_32
#define	Mpy_32_16	AMR__Mpy_32_16
#define	Div_32		AMR__Div_32

#define	Inv_sqrt	AMR__Inv_sqrt
#define	Log2		AMR__Log2
#define	Pow2		AMR__Pow2

#define	A_Refl		AMR__A_Refl
#define	Autocorr	AMR__Autocorr
#define	Az_lsp		AMR__Az_lsp

#define	agc_init	AMR__agc_init
#define	agc_reset	AMR__agc_reset
#define	agc_exit	AMR__agc_exit
#define	agc		AMR__agc
#define	agc2		AMR__agc2

#define	Bits2prm	AMR__Bits2prm
#define	Prm2bits	AMR__Prm2bits

#define	bitno		AMR__bitno
#define	prmno		AMR__prmno
#define	prmnofs		AMR__prmnofs

#endif	/* include guard */