summaryrefslogtreecommitdiff
path: root/vendor/github.com/bytedance/sonic/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/bytedance/sonic/Makefile')
-rw-r--r--vendor/github.com/bytedance/sonic/Makefile116
1 files changed, 0 insertions, 116 deletions
diff --git a/vendor/github.com/bytedance/sonic/Makefile b/vendor/github.com/bytedance/sonic/Makefile
deleted file mode 100644
index 69b8e11f1..000000000
--- a/vendor/github.com/bytedance/sonic/Makefile
+++ /dev/null
@@ -1,116 +0,0 @@
-#
-# Copyright 2021 ByteDance Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-ARCH := avx avx2 sse
-TMP_DIR := output
-OUT_DIR := internal/native
-SRC_FILE := native/native.c
-
-CPU_avx := amd64
-CPU_avx2 := amd64
-CPU_sse := amd64
-
-TMPL_avx := native_test fastint_test fastfloat_test native_amd64 recover_test
-TMPL_avx2 := native_test fastint_test fastfloat_test native_amd64 recover_test
-TMPL_sse := native_test fastint_test fastfloat_test native_amd64 recover_test
-
-CFLAGS_avx := -msse -mno-sse4 -mavx -mpclmul -mno-avx2 -mstack-alignment=0 -DUSE_AVX=1 -DUSE_AVX2=0
-CFLAGS_avx2 := -msse -mno-sse4 -mavx -mpclmul -mavx2 -mstack-alignment=0 -DUSE_AVX=1 -DUSE_AVX2=1
-CFLAGS_sse := -msse -mno-sse4 -mno-avx -mno-avx2 -mpclmul
-
-CC_amd64 := clang
-ASM2ASM_amd64 := tools/asm2asm/asm2asm.py
-
-CFLAGS := -mno-red-zone
-CFLAGS += -target x86_64-apple-macos11
-CFLAGS += -fno-asynchronous-unwind-tables
-CFLAGS += -fno-builtin
-CFLAGS += -fno-exceptions
-CFLAGS += -fno-rtti
-CFLAGS += -fno-stack-protector
-CFLAGS += -nostdlib
-CFLAGS += -O3
-CFLAGS += -Wall -Werror
-
-NATIVE_SRC := $(wildcard native/*.h)
-NATIVE_SRC += $(wildcard native/*.c)
-
-.PHONY: all clean ${ARCH}
-
-define build_tmpl
- $(eval @arch := $(1))
- $(eval @tmpl := $(2))
- $(eval @dest := $(3))
- $(eval @cpu := $(4))
-
-${@dest}: ${@tmpl}
- mkdir -p $(dir ${@dest})
- echo '// +build ${@cpu}' > ${@dest}
- echo >> ${@dest}
- echo >> ${@dest}
- echo '// Code generated by Makefile, DO NOT EDIT.' >> ${@dest}
- echo >> ${@dest}
- sed -e 's/{{PACKAGE}}/${@arch}/g' ${@tmpl} >> ${@dest}
-endef
-
-define build_arch
- $(eval @cpu := $(value CPU_$(1)))
- $(eval @deps := $(foreach tmpl,$(value TMPL_$(1)),${OUT_DIR}/$(1)/${tmpl}.go))
- $(eval @asmin := ${TMP_DIR}/$(1)/native.s)
- $(eval @asmout := ${OUT_DIR}/$(1)/native_text_${@cpu}.go)
- $(eval @stubin := ${OUT_DIR}/native_${@cpu}.tmpl)
- $(eval @stubout := ${OUT_DIR}/$(1)/native_${@cpu}.go)
-
-$(1): ${@asmout} ${@deps}
-
-${@asmout}: ${@stubout} ${NATIVE_SRC}
- mkdir -p ${TMP_DIR}/$(1)
- $${CC_${@cpu}} $${CFLAGS} $${CFLAGS_$(1)} -S -o ${TMP_DIR}/$(1)/native.s ${SRC_FILE}
- python3 $${ASM2ASM_${@cpu}} -r ${@stubout} ${TMP_DIR}/$(1)/native.s
-
-$(eval $(call \
- build_tmpl, \
- $(1), \
- ${@stubin}, \
- ${@stubout} \
-))
-
-$(foreach \
- tmpl, \
- $(value TMPL_$(1)), \
- $(eval $(call \
- build_tmpl, \
- $(1), \
- ${OUT_DIR}/${tmpl}.tmpl, \
- ${OUT_DIR}/$(1)/${tmpl}.go, \
- $(value CPU_$(1)) \
- )) \
-)
-endef
-
-all: ${ARCH}
-
-clean:
- for arch in ${ARCH}; do \
- rm -vfr ${TMP_DIR}/$${arch}; \
- rm -vfr ${OUT_DIR}/$${arch}; \
- done
-
-$(foreach \
- arch, \
- ${ARCH}, \
- $(eval $(call build_arch,${arch})) \
-)