fc2622f660
Add support for the ELF flags Move target/hexagon/cpu.[ch] to be v73 Change the compiler flag used by "make check-tcg" The decbin instruction is removed in Hexagon v73, so check the version before trying to compile the instruction. Signed-off-by: Taylor Simpson <tsimpson@quicinc.com> Reviewed-by: Anton Johansson <anjo@rev.ng> Message-Id: <20230427224057.3766963-2-tsimpson@quicinc.com>
96 lines
2.7 KiB
Makefile
96 lines
2.7 KiB
Makefile
##
|
|
## Copyright(c) 2019-2023 Qualcomm Innovation Center, Inc. All Rights Reserved.
|
|
##
|
|
## 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, see <http://www.gnu.org/licenses/>.
|
|
##
|
|
|
|
# Hexagon doesn't support gdb, so skip the EXTRA_RUNS
|
|
EXTRA_RUNS =
|
|
|
|
CFLAGS += -Wno-incompatible-pointer-types -Wno-undefined-internal
|
|
CFLAGS += -fno-unroll-loops
|
|
|
|
HEX_SRC=$(SRC_PATH)/tests/tcg/hexagon
|
|
VPATH += $(HEX_SRC)
|
|
|
|
%: $(HEX_SRC)/%.S $(HEX_SRC)/crt.S
|
|
$(CC) -static -mv67 -nostdlib $^ -o $@
|
|
|
|
HEX_TESTS = first
|
|
HEX_TESTS += hex_sigsegv
|
|
HEX_TESTS += misc
|
|
HEX_TESTS += usr
|
|
HEX_TESTS += preg_alias
|
|
HEX_TESTS += dual_stores
|
|
HEX_TESTS += multi_result
|
|
HEX_TESTS += mem_noshuf
|
|
HEX_TESTS += mem_noshuf_exception
|
|
HEX_TESTS += circ
|
|
HEX_TESTS += brev
|
|
HEX_TESTS += load_unpack
|
|
HEX_TESTS += load_align
|
|
HEX_TESTS += atomics
|
|
HEX_TESTS += fpstuff
|
|
HEX_TESTS += overflow
|
|
HEX_TESTS += signal_context
|
|
HEX_TESTS += reg_mut
|
|
HEX_TESTS += vector_add_int
|
|
HEX_TESTS += scatter_gather
|
|
HEX_TESTS += hvx_misc
|
|
HEX_TESTS += hvx_histogram
|
|
|
|
HEX_TESTS += test_abs
|
|
HEX_TESTS += test_bitcnt
|
|
HEX_TESTS += test_bitsplit
|
|
HEX_TESTS += test_call
|
|
HEX_TESTS += test_clobber
|
|
HEX_TESTS += test_cmp
|
|
HEX_TESTS += test_dotnew
|
|
HEX_TESTS += test_ext
|
|
HEX_TESTS += test_fibonacci
|
|
HEX_TESTS += test_hl
|
|
HEX_TESTS += test_hwloops
|
|
HEX_TESTS += test_jmp
|
|
HEX_TESTS += test_lsr
|
|
HEX_TESTS += test_mpyi
|
|
HEX_TESTS += test_packet
|
|
HEX_TESTS += test_reorder
|
|
HEX_TESTS += test_round
|
|
HEX_TESTS += test_vavgw
|
|
HEX_TESTS += test_vcmpb
|
|
HEX_TESTS += test_vcmpw
|
|
HEX_TESTS += test_vlsrw
|
|
HEX_TESTS += test_vmaxh
|
|
HEX_TESTS += test_vminh
|
|
HEX_TESTS += test_vpmpyh
|
|
HEX_TESTS += test_vspliceb
|
|
|
|
TESTS += $(HEX_TESTS)
|
|
|
|
# This test has to be compiled for the -mv67t target
|
|
usr: usr.c
|
|
$(CC) $(CFLAGS) -mv67t -O2 -Wno-inline-asm -Wno-expansion-to-defined $< -o $@ $(LDFLAGS)
|
|
|
|
# Build this test with -mv71 to exercise the CABAC instruction
|
|
misc: misc.c
|
|
$(CC) $(CFLAGS) -mv71 -O2 $< -o $@ $(LDFLAGS)
|
|
scatter_gather: CFLAGS += -mhvx
|
|
vector_add_int: CFLAGS += -mhvx -fvectorize
|
|
hvx_misc: hvx_misc.c hvx_misc.h
|
|
hvx_misc: CFLAGS += -mhvx
|
|
hvx_histogram: CFLAGS += -mhvx -Wno-gnu-folding-constant
|
|
|
|
hvx_histogram: hvx_histogram.c hvx_histogram_row.S
|
|
$(CC) $(CFLAGS) $(CROSS_CC_GUEST_CFLAGS) $^ -o $@ $(LDFLAGS)
|