[libc-commits] [PATCH] D75355: [libc] Provide Arm Optimized Routines for the LLVM libc project

Kristof Beyls via Phabricator via libc-commits libc-commits at lists.llvm.org
Fri Feb 28 08:24:16 PST 2020


kristof.beyls created this revision.
kristof.beyls added reviewers: sivachandra, dxf.
Herald added subscribers: tschuett, MaskRay.

This provides the Arm Optimized Routines (see https://github.com/ARM-software/optimized-routines) source code under the LLVM license.

This patch is not intended to be committed as is.
Instead, the intent is to make it very clear that Arm is offering this source code under the LLVM license, to be picked up by anyone in the LLVM community with an interest to integrate this code well within LLVM libc.

The version of the code provided in this patch is v20.02 of the Arm Optimized Routines project.


https://reviews.llvm.org/D75355

Files:
  libc/AOR_v20.02/Makefile
  libc/AOR_v20.02/config.mk.dist
  libc/AOR_v20.02/math/Dir.mk
  libc/AOR_v20.02/math/cosf.c
  libc/AOR_v20.02/math/exp.c
  libc/AOR_v20.02/math/exp2.c
  libc/AOR_v20.02/math/exp2f.c
  libc/AOR_v20.02/math/exp2f_data.c
  libc/AOR_v20.02/math/exp_data.c
  libc/AOR_v20.02/math/expf.c
  libc/AOR_v20.02/math/include/mathlib.h
  libc/AOR_v20.02/math/log.c
  libc/AOR_v20.02/math/log2.c
  libc/AOR_v20.02/math/log2_data.c
  libc/AOR_v20.02/math/log2f.c
  libc/AOR_v20.02/math/log2f_data.c
  libc/AOR_v20.02/math/log_data.c
  libc/AOR_v20.02/math/logf.c
  libc/AOR_v20.02/math/logf_data.c
  libc/AOR_v20.02/math/math_config.h
  libc/AOR_v20.02/math/math_err.c
  libc/AOR_v20.02/math/math_errf.c
  libc/AOR_v20.02/math/pow.c
  libc/AOR_v20.02/math/pow_log_data.c
  libc/AOR_v20.02/math/powf.c
  libc/AOR_v20.02/math/powf_log2_data.c
  libc/AOR_v20.02/math/s_cos.c
  libc/AOR_v20.02/math/s_cosf.c
  libc/AOR_v20.02/math/s_exp.c
  libc/AOR_v20.02/math/s_exp2f.c
  libc/AOR_v20.02/math/s_exp2f_1u.c
  libc/AOR_v20.02/math/s_expf.c
  libc/AOR_v20.02/math/s_expf_1u.c
  libc/AOR_v20.02/math/s_log.c
  libc/AOR_v20.02/math/s_logf.c
  libc/AOR_v20.02/math/s_pow.c
  libc/AOR_v20.02/math/s_powf.c
  libc/AOR_v20.02/math/s_sin.c
  libc/AOR_v20.02/math/s_sinf.c
  libc/AOR_v20.02/math/sincosf.c
  libc/AOR_v20.02/math/sincosf.h
  libc/AOR_v20.02/math/sincosf_data.c
  libc/AOR_v20.02/math/sinf.c
  libc/AOR_v20.02/math/test/mathbench.c
  libc/AOR_v20.02/math/test/mathtest.c
  libc/AOR_v20.02/math/test/rtest/dotest.c
  libc/AOR_v20.02/math/test/rtest/intern.h
  libc/AOR_v20.02/math/test/rtest/main.c
  libc/AOR_v20.02/math/test/rtest/random.c
  libc/AOR_v20.02/math/test/rtest/random.h
  libc/AOR_v20.02/math/test/rtest/semi.c
  libc/AOR_v20.02/math/test/rtest/semi.h
  libc/AOR_v20.02/math/test/rtest/types.h
  libc/AOR_v20.02/math/test/rtest/wrappers.c
  libc/AOR_v20.02/math/test/rtest/wrappers.h
  libc/AOR_v20.02/math/test/runulp.sh
  libc/AOR_v20.02/math/test/testcases/directed/cosf.tst
  libc/AOR_v20.02/math/test/testcases/directed/exp.tst
  libc/AOR_v20.02/math/test/testcases/directed/exp2.tst
  libc/AOR_v20.02/math/test/testcases/directed/exp2f.tst
  libc/AOR_v20.02/math/test/testcases/directed/expf.tst
  libc/AOR_v20.02/math/test/testcases/directed/log.tst
  libc/AOR_v20.02/math/test/testcases/directed/log2.tst
  libc/AOR_v20.02/math/test/testcases/directed/log2f.tst
  libc/AOR_v20.02/math/test/testcases/directed/logf.tst
  libc/AOR_v20.02/math/test/testcases/directed/pow.tst
  libc/AOR_v20.02/math/test/testcases/directed/powf.tst
  libc/AOR_v20.02/math/test/testcases/directed/sincosf.tst
  libc/AOR_v20.02/math/test/testcases/directed/sinf.tst
  libc/AOR_v20.02/math/test/testcases/random/double.tst
  libc/AOR_v20.02/math/test/testcases/random/float.tst
  libc/AOR_v20.02/math/test/traces/exp.txt
  libc/AOR_v20.02/math/test/traces/sincosf.txt
  libc/AOR_v20.02/math/test/ulp.c
  libc/AOR_v20.02/math/test/ulp.h
  libc/AOR_v20.02/math/tools/cos.sollya
  libc/AOR_v20.02/math/tools/exp.sollya
  libc/AOR_v20.02/math/tools/exp2.sollya
  libc/AOR_v20.02/math/tools/log.sollya
  libc/AOR_v20.02/math/tools/log2.sollya
  libc/AOR_v20.02/math/tools/log2_abs.sollya
  libc/AOR_v20.02/math/tools/log_abs.sollya
  libc/AOR_v20.02/math/tools/plot.py
  libc/AOR_v20.02/math/tools/remez.jl
  libc/AOR_v20.02/math/tools/sin.sollya
  libc/AOR_v20.02/math/tools/v_exp.sollya
  libc/AOR_v20.02/math/tools/v_log.sollya
  libc/AOR_v20.02/math/tools/v_sin.sollya
  libc/AOR_v20.02/math/v_cos.c
  libc/AOR_v20.02/math/v_cosf.c
  libc/AOR_v20.02/math/v_exp.c
  libc/AOR_v20.02/math/v_exp.h
  libc/AOR_v20.02/math/v_exp2f.c
  libc/AOR_v20.02/math/v_exp2f_1u.c
  libc/AOR_v20.02/math/v_exp_data.c
  libc/AOR_v20.02/math/v_expf.c
  libc/AOR_v20.02/math/v_expf_1u.c
  libc/AOR_v20.02/math/v_log.c
  libc/AOR_v20.02/math/v_log.h
  libc/AOR_v20.02/math/v_log_data.c
  libc/AOR_v20.02/math/v_logf.c
  libc/AOR_v20.02/math/v_math.h
  libc/AOR_v20.02/math/v_pow.c
  libc/AOR_v20.02/math/v_powf.c
  libc/AOR_v20.02/math/v_sin.c
  libc/AOR_v20.02/math/v_sinf.c
  libc/AOR_v20.02/math/vn_cos.c
  libc/AOR_v20.02/math/vn_cosf.c
  libc/AOR_v20.02/math/vn_exp.c
  libc/AOR_v20.02/math/vn_exp2f.c
  libc/AOR_v20.02/math/vn_exp2f_1u.c
  libc/AOR_v20.02/math/vn_expf.c
  libc/AOR_v20.02/math/vn_expf_1u.c
  libc/AOR_v20.02/math/vn_log.c
  libc/AOR_v20.02/math/vn_logf.c
  libc/AOR_v20.02/math/vn_pow.c
  libc/AOR_v20.02/math/vn_powf.c
  libc/AOR_v20.02/math/vn_sin.c
  libc/AOR_v20.02/math/vn_sinf.c
  libc/AOR_v20.02/networking/Dir.mk
  libc/AOR_v20.02/networking/aarch64/chksum_simd.c
  libc/AOR_v20.02/networking/arm/chksum_simd.c
  libc/AOR_v20.02/networking/chksum.c
  libc/AOR_v20.02/networking/chksum_common.h
  libc/AOR_v20.02/networking/include/networking.h
  libc/AOR_v20.02/networking/test/chksum.c
  libc/AOR_v20.02/string/Dir.mk
  libc/AOR_v20.02/string/aarch64/check-arch.S
  libc/AOR_v20.02/string/aarch64/memchr-sve.S
  libc/AOR_v20.02/string/aarch64/memchr.S
  libc/AOR_v20.02/string/aarch64/memcmp-sve.S
  libc/AOR_v20.02/string/aarch64/memcmp.S
  libc/AOR_v20.02/string/aarch64/memcpy-advsimd.S
  libc/AOR_v20.02/string/aarch64/memcpy.S
  libc/AOR_v20.02/string/aarch64/memset.S
  libc/AOR_v20.02/string/aarch64/stpcpy-sve.S
  libc/AOR_v20.02/string/aarch64/stpcpy.S
  libc/AOR_v20.02/string/aarch64/strchr-mte.S
  libc/AOR_v20.02/string/aarch64/strchr-sve.S
  libc/AOR_v20.02/string/aarch64/strchr.S
  libc/AOR_v20.02/string/aarch64/strchrnul-sve.S
  libc/AOR_v20.02/string/aarch64/strchrnul.S
  libc/AOR_v20.02/string/aarch64/strcmp-sve.S
  libc/AOR_v20.02/string/aarch64/strcmp.S
  libc/AOR_v20.02/string/aarch64/strcpy-sve.S
  libc/AOR_v20.02/string/aarch64/strcpy.S
  libc/AOR_v20.02/string/aarch64/strlen-mte.S
  libc/AOR_v20.02/string/aarch64/strlen-sve.S
  libc/AOR_v20.02/string/aarch64/strlen.S
  libc/AOR_v20.02/string/aarch64/strncmp-sve.S
  libc/AOR_v20.02/string/aarch64/strncmp.S
  libc/AOR_v20.02/string/aarch64/strnlen-sve.S
  libc/AOR_v20.02/string/aarch64/strnlen.S
  libc/AOR_v20.02/string/aarch64/strrchr-sve.S
  libc/AOR_v20.02/string/aarch64/strrchr.S
  libc/AOR_v20.02/string/arm/check-arch.S
  libc/AOR_v20.02/string/arm/memchr.S
  libc/AOR_v20.02/string/arm/memcpy.S
  libc/AOR_v20.02/string/arm/memset.S
  libc/AOR_v20.02/string/arm/strcmp-armv6m.S
  libc/AOR_v20.02/string/arm/strcmp.S
  libc/AOR_v20.02/string/arm/strcpy.c
  libc/AOR_v20.02/string/arm/strlen-armv6t2.S
  libc/AOR_v20.02/string/asmdefs.h
  libc/AOR_v20.02/string/include/stringlib.h
  libc/AOR_v20.02/string/test/memchr.c
  libc/AOR_v20.02/string/test/memcmp.c
  libc/AOR_v20.02/string/test/memcpy.c
  libc/AOR_v20.02/string/test/memmove.c
  libc/AOR_v20.02/string/test/memset.c
  libc/AOR_v20.02/string/test/stpcpy.c
  libc/AOR_v20.02/string/test/strchr.c
  libc/AOR_v20.02/string/test/strchrnul.c
  libc/AOR_v20.02/string/test/strcmp.c
  libc/AOR_v20.02/string/test/strcpy.c
  libc/AOR_v20.02/string/test/strlen.c
  libc/AOR_v20.02/string/test/strncmp.c
  libc/AOR_v20.02/string/test/strnlen.c
  libc/AOR_v20.02/string/test/strrchr.c
  libc/AOR_v20.02/string/x86_64/check-arch.S





More information about the libc-commits mailing list