1*412f47f9SXin Li// polynomial for approximating exp(x)-1 in double precision 2*412f47f9SXin Li// 3*412f47f9SXin Li// Copyright (c) 2022-2023, Arm Limited. 4*412f47f9SXin Li// SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception 5*412f47f9SXin Li 6*412f47f9SXin Lideg = 12; 7*412f47f9SXin Li 8*412f47f9SXin Lia = -log(2)/2; 9*412f47f9SXin Lib = log(2)/2; 10*412f47f9SXin Li 11*412f47f9SXin Lif = proc(y) { 12*412f47f9SXin Li return exp(y)-1; 13*412f47f9SXin Li}; 14*412f47f9SXin Li 15*412f47f9SXin Lipoly = fpminimax(f(x), deg, [|double ...|], [a;b]); 16*412f47f9SXin Li 17*412f47f9SXin Lidisplay = hexadecimal; 18*412f47f9SXin Liprint("rel error:", accurateinfnorm(1-poly(x)/f(x), [a;b], 30)); 19*412f47f9SXin Liprint("in [",a,b,"]"); 20*412f47f9SXin Liprint("coeffs:"); 21*412f47f9SXin Lifor i from 2 to deg do round(coeff(poly,i), D, RN); 22