blob: bbc5aadbc58be4d36637d3ad3523720cb0109431 [file] [log] [blame]
/* Data for vector function logf.
Copyright (C) 2014-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
#include "svml_s_logf_data.h"
.section .rodata, "a"
.align 64
/* Data table for vector implementations of function logf.
The table may contain polynomial, reduction, lookup coefficients and
other coefficients obtained through different methods of research and
experimental work. */
.globl __svml_slog_data
__svml_slog_data:
/* Polynomial sPoly[] coefficients:
* -5.0000000000000000000000000e-01 */
float_vector _sPoly_1 0xbf000000
/* 3.3336564898490905761718750e-01 */
float_vector _sPoly_2 0x3eaaaee7
/* -2.5004664063453674316406250e-01 */
float_vector _sPoly_3 0xbe80061d
/* 1.9822503626346588134765625e-01 */
float_vector _sPoly_4 0x3e4afb81
/* -1.6462457180023193359375000e-01 */
float_vector _sPoly_5 0xbe289358
/* 1.6964881122112274169921875e-01 */
float_vector _sPoly_6 0x3e2db86b
/* -1.5177205204963684082031250e-01 */
float_vector _sPoly_7 0xbe1b6a22
/* Constant for work range check: Delta 80000000-7f800000 */
float_vector _iHiDelta 0x00800000
/* Constant for work range check: 00800000 + Delta */
float_vector _iLoRange 0x01000000
/* Mantissa break point SP 2/3 */
float_vector _iBrkValue 0x3f2aaaab
/* SP significand mask */
float_vector _iOffExpoMask 0x007fffff
/* 1.0f */
float_vector _sOne 0x3f800000
/* SP log(2) */
float_vector _sLn2 0x3f317218
/* SP infinity, +/- */
/* clang integrated assembler doesn't think subtract yields an absolute, skip. */
#if !defined(__clang__)
.if .-__svml_slog_data != _sInfs
.err
.endif
#endif
.long 0x7f800000
.long 0xff800000
.rept 56
.byte 0
.endr
/* SP one, +/- */
/* clang integrated assembler doesn't think subtract yields an absolute, skip. */
#if !defined(__clang__)
.if .-__svml_slog_data != _sOnes
.err
.endif
#endif
.long 0x3f800000
.long 0xbf800000
.rept 56
.byte 0
.endr
/* SP zero +/- */
/* clang integrated assembler doesn't think subtract yields an absolute, skip. */
#if !defined(__clang__)
.if .-__svml_slog_data != _sZeros
.err
.endif
#endif
.long 0x00000000
.long 0x80000000
.rept 56
.byte 0
.endr
.type __svml_slog_data,@object
.size __svml_slog_data,.-__svml_slog_data