1TARGET=../xbyak/xbyak_mnemonic.h
2BIN=sortline gen_code gen_avx512
3CFLAGS=-I../ -O2 -DXBYAK_NO_OP_NAMES -Wall -Wextra -Wno-missing-field-initializers
4all: $(TARGET)
5sortline: sortline.cpp
6	$(CXX) $(CFLAGS) $< -o $@
7gen_code: gen_code.cpp ../xbyak/xbyak.h avx_type.hpp
8	$(CXX) $(CFLAGS) $< -o $@
9gen_avx512: gen_avx512.cpp ../xbyak/xbyak.h avx_type.hpp
10	$(CXX) $(CFLAGS) $< -o $@
11
12$(TARGET): $(BIN)
13	./gen_code | ./sortline > $@
14	echo "#ifdef XBYAK_ENABLE_OMITTED_OPERAND" >> $@
15	./gen_code omit | ./sortline >> $@
16	echo "#endif" >>$@
17	./gen_code fixed >> $@
18	echo "#ifndef XBYAK_DISABLE_AVX512" >> $@
19	./gen_avx512 | ./sortline >> $@
20	echo "#ifdef XBYAK64" >> $@
21	./gen_avx512 64 | ./sortline >> $@
22	echo "#endif" >> $@
23	echo "#endif" >> $@
24
25clean:
26	$(RM) $(BIN) $(TARGET)
27