1 /* 2 * Copyright (c) 2018, Arm Limited. 3 * SPDX-License-Identifier: MIT 4 */ 5 #ifndef _LOG_DATA_H 6 #define _LOG_DATA_H 7 8 #include <features.h> 9 10 #define LOG_TABLE_BITS 7 11 #define LOG_POLY_ORDER 6 12 #define LOG_POLY1_ORDER 12 13 extern hidden const struct log_data { 14 double ln2hi; 15 double ln2lo; 16 double poly[LOG_POLY_ORDER - 1]; /* First coefficient is 1. */ 17 double poly1[LOG_POLY1_ORDER - 1]; 18 struct { 19 double invc, logc; 20 } tab[1 << LOG_TABLE_BITS]; 21 #if !__FP_FAST_FMA 22 struct { 23 double chi, clo; 24 } tab2[1 << LOG_TABLE_BITS]; 25 #endif 26 } __log_data; 27 28 #endif 29