all:

	clang++ -o rubichess_20250606_64_ja glob.cpp -Ofast -w -flto=auto -ftree-vectorize -funroll-loops \
	-static -DNDEBUG -finline-functions -pipe -std=c++23 -DIS_64BIT -DUSE_ZLIB -ffast-math -lm -Lzlib -Izlib -lz -DNNUEINCLUDED=net.nnue net.o \
	-ffast-math -static-libgcc -static-libstdc++ -fno-rtti -fstrict-aliasing -fomit-frame-pointer -lm -fuse-ld=lld -MMD -MP -s \

	

	
	#        ld -r -b binary net.nnue -o net.o                                                             <   enter on command line before running make


    #       -mpopcnt -msse4.1 -msse4.2 -mbmi -mfma -mavx2 -mbmi2 -mavx -march=haswell -mtune=haswell \     <    avx/bmi2 enable
    #       -DUSE_AVX2 -DUSE_BMI2 -DUSE_BMI1 -DUSE_SSSE3 -DUSE_POPCNT -DUSE_SSE2    
	
	
	#       -fprofile-instr-generate -fcoverage-mapping                                                    <   before -o
	
	#        llvm-profdata merge -output=default.profdata *.profraw                                        <  enter on command line
 
    #       -fprofile-use=default.profdata                                                                 <   before -o
	
	
	#       -mpopcnt -msse4.1 -msse4.2 -mbmi -mfma -mavx2 -mbmi2 -mavx -mavx512cd -mavx512vl \             <   avx512 enable
	#       -mavx512f -mavx512bw -mavx512dq -march=cannonlake -mtune=cannonlake \                        
	#       -DUSE_AVX512 -DUSE_AVX2 -DUSE_BMI2 -DUSE_BMI1 -DUSE_SSSE3 -DUSE_POPCNT -DUSE_SSE2 
	
	
    #       -mpopcnt -march=znver2 -mtune=znver2 -msse4.1 -mbmi -mfma -mavx2 -mavx -mbmi \                 <  for Zen 2 processors (no bmi2)
    #       -DUSE_AVX2 -DUSE_BMI1 -DUSE_SSSE3 -DUSE_POPCNT -DUSE_SSE2              
    
    
    #       -march=silvermont -mtune=silvermont -mpopcnt -msse3 -mssse3 -msse2 \                           <  for popcount builds (with sse4.1/4.2) 
	#       -DUSE_SSSE3 -DUSE_POPCNT -DUSE_SSE2                        


     #      -msse3 -mssse3 -march=k8 -mtune=k8  -DUSE_SSSE3 -DUSE_SSE2                                     <  sse3 build	

   
