| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- # ################################################################
- # xxHash benchHash Makefile
- # Copyright (C) 2019-2020 Yann Collet
- #
- # GPL v2 License
- #
- # This program is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 2 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License along
- # with this program; if not, write to the Free Software Foundation, Inc.,
- # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- #
- # You can contact the author at:
- # - xxHash homepage: https://www.xxhash.com
- # - xxHash source repository: https://github.com/Cyan4973/xxHash
- # ################################################################
- # benchHash: A generic benchmark for hash algorithms
- # measuring throughput, latency and bandwidth
- # ################################################################
- CPPFLAGS += -I../.. # directory of xxHash source files
- CFLAGS ?= -O3
- CFLAGS += -std=c99 -Wall -Wextra -Wstrict-aliasing=1
- CFLAGS += $(MOREFLAGS) # custom way to add flags
- CXXFLAGS ?= -O3
- LDFLAGS += $(MOREFLAGS)
- OBJ_LIST = main.o bhDisplay.o benchHash.o benchfn.o timefn.o
- default: benchHash
- all: benchHash
- benchHash32: CFLAGS += -m32
- benchHash32: CXXFLAGS += -m32
- benchHash_avx2: CFLAGS += -mavx2
- benchHash_avx2: CXXFLAGS += -mavx2
- benchHash_hw: CPPFLAGS += -DHARDWARE_SUPPORT
- benchHash_hw: CFLAGS += -mavx2 -maes
- benchHash_hw: CXXFLAGS += -mavx2 -mpclmul -std=c++14
- benchHash benchHash32 benchHash_avx2 benchHash_nosimd benchHash_hw: $(OBJ_LIST)
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
- main.o: bhDisplay.h hashes.h
- bhDisplay.o: bhDisplay.h benchHash.h
- benchHash.o: benchHash.h
- clean:
- $(RM) *.o benchHash benchHash32 benchHash_avx2 benchHash_hw
|