powf_data.h raw

   1  /*
   2   * Copyright (c) 2017-2018, Arm Limited.
   3   * SPDX-License-Identifier: MIT
   4   */
   5  #ifndef _POWF_DATA_H
   6  #define _POWF_DATA_H
   7  
   8  #include "libm.h"
   9  #include "exp2f_data.h"
  10  
  11  #define POWF_LOG2_TABLE_BITS 4
  12  #define POWF_LOG2_POLY_ORDER 5
  13  #if TOINT_INTRINSICS
  14  #define POWF_SCALE_BITS EXP2F_TABLE_BITS
  15  #else
  16  #define POWF_SCALE_BITS 0
  17  #endif
  18  #define POWF_SCALE ((double)(1 << POWF_SCALE_BITS))
  19  extern hidden const struct powf_log2_data {
  20  	struct {
  21  		double invc, logc;
  22  	} tab[1 << POWF_LOG2_TABLE_BITS];
  23  	double poly[POWF_LOG2_POLY_ORDER];
  24  } __powf_log2_data;
  25  
  26  #endif
  27