aboutsummaryrefslogtreecommitdiffhomepage
path: root/gen/Makefile
blob: 53d1a948c16d9ff9e6587ca64812f6f0fa7ac2a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
TARGET=../xbyak/xbyak_mnemonic.h
BIN=sortline gen_code gen_avx512
CFLAGS=-I../ -O2 -DXBYAK_NO_OP_NAMES -Wall -Wextra -Wno-missing-field-initializers
all: $(TARGET)
sortline: sortline.cpp
	$(CXX) $(CFLAGS) $< -o $@
gen_code: gen_code.cpp ../xbyak/xbyak.h avx_type.hpp
	$(CXX) $(CFLAGS) $< -o $@
gen_avx512: gen_avx512.cpp ../xbyak/xbyak.h avx_type.hpp
	$(CXX) $(CFLAGS) $< -o $@

$(TARGET): $(BIN)
	./gen_code | ./sortline > $@
	echo "#ifdef XBYAK_ENABLE_OMITTED_OPERAND" >> $@
	./gen_code omit | ./sortline >> $@
	echo "#endif" >>$@
	./gen_code fixed >> $@
	echo "#ifndef XBYAK_DISABLE_AVX512" >> $@
	./gen_avx512 | ./sortline >> $@
	echo "#ifdef XBYAK64" >> $@
	./gen_avx512 64 | ./sortline >> $@
	echo "#endif" >> $@
	echo "#endif" >> $@

clean:
	$(RM) $(BIN) $(TARGET)