1#!/bin/sh 2 3libm_dir=$1 4 5import() { 6 # $1 = name 7 # $2 = source file-name 8 # $3 = destination file-name 9 echo "$1 $libm_dir/$2 $3" 10} 11 12import_c() { 13 # $1 = name 14 # $2 = source file-name 15 # $3 = destination file-name 16 echo "$1 $libm_dir/$2 $3" 17} 18 19dummy_files=" 20libm_cpu_defs.h 21libm_error_codes.h 22libm_support.h 23libm_error.c 24" 25 26for f in $dummy_files 27do 28 import_c DUMMY $f $f 29done 30 31import_c scalblnf scalblnf.c s_scalblnf.c 32 33for f in acos acosh asin atanh cosh exp2 exp10 fmod log2 pow remainder \ 34 scalb sinh sqrt; do 35 for t in "" f l; do 36 import $f$t $f$t.s e_$f$t.S 37 done 38done 39 40for f in atan2 exp; do 41 for t in "" f; do 42 import $f$t $f$t.s e_$f$t.S 43 done 44done 45import "atan" atan.s s_atan.S 46import "atanf" atanf.s s_atanf.S 47import "atan(2)?l" atanl.s s_atanl.S 48import "exp(m1)?l" expl_m1.s s_expm1l.S 49 50for t in "" f l; do 51 import "log(10)?$t" log$t.s e_log$t.S 52 import tgamma$t tgamma$t.s w_tgamma$t.S 53 import "(hypot|cabs)$t" hypot$t.s e_hypot$t.S 54done 55 56for f in asinh cbrt ceil erf erfc fabs floor \ 57 ilogb log1p logb modf nearbyint nextafter nexttoward \ 58 rint round significand fdim fma fmax tanh trunc; do 59 for t in "" f l; do 60 import $f$t $f$t.s s_$f$t.S 61 done 62done 63 64for t in "" f l; do 65 import "(tan|cot)$t" tancot$t.s s_tan$t.S 66done 67 68for t in "" f l; do 69 import "(sin|cos)$t" sincos$t.s s_cos$t.S 70 import_c frexp$t frexp$t.c s_frexp$t.c 71 import_c ldexp$t ldexp$t.c s_ldexp$t.c 72 import_c scalbn$t scalbn$t.c s_scalbn$t.c 73done 74 75import expm1 exp_m1.s s_expm1.S 76import expm1f expf_m1.s s_expm1f.S 77 78for f in frexp frexpf frexpl reduce; do 79 import __libm_$f libm_$f.s libm_$f.S 80done 81 82for t in "" f l; do 83 import __libm_ldexp$t libm_ldexp$t.s s_libm_ldexp$t.S 84 import "(__libm_)?(sincos|cis)$t" libm_sincos$t.s libm_sincos$t.S 85 import __libm_lgamma$t libm_lgamma$t.s libm_lgamma$t.S 86 import __libm_scalbn$t libm_scalbn$t.s s_libm_scalbn$t.S 87done 88import __libm_scalblnf libm_scalblnf.s libm_scalblnf.S 89import "__libm_(sin|cos|sincos)_large" libm_sincos_large.s \ 90 libm_sincos_large.S 91