1 /* 2 * Function wrappers for mathbench. 3 * 4 * Copyright (c) 2022-2023, Arm Limited. 5 * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception 6 */ 7 8 #ifdef __vpcs 9 10 __vpcs static v_float 11 xy_Z_powf (v_float x) 12 { 13 return _ZGVnN4vv_powf (x, x); 14 } 15 16 __vpcs static v_double 17 xy_Z_pow (v_double x) 18 { 19 return _ZGVnN2vv_pow (x, x); 20 } 21 22 #endif 23 24 static double 25 xypow (double x) 26 { 27 return pow (x, x); 28 } 29 30 static float 31 xypowf (float x) 32 { 33 return powf (x, x); 34 } 35 36 static double 37 xpow (double x) 38 { 39 return pow (x, 23.4); 40 } 41 42 static float 43 xpowf (float x) 44 { 45 return powf (x, 23.4f); 46 } 47 48 static double 49 ypow (double x) 50 { 51 return pow (2.34, x); 52 } 53 54 static float 55 ypowf (float x) 56 { 57 return powf (2.34f, x); 58 } 59 60 static float 61 sincosf_wrap (float x) 62 { 63 float s, c; 64 sincosf (x, &s, &c); 65 return s + c; 66 } 67