]> git.proxmox.com Git - mirror_qemu.git/blob - tests/tcg/hexagon/Makefile.target
Merge tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu into...
[mirror_qemu.git] / tests / tcg / hexagon / Makefile.target
1 ##
2 ## Copyright(c) 2019-2023 Qualcomm Innovation Center, Inc. All Rights Reserved.
3 ##
4 ## This program is free software; you can redistribute it and/or modify
5 ## it under the terms of the GNU General Public License as published by
6 ## the Free Software Foundation; either version 2 of the License, or
7 ## (at your option) any later version.
8 ##
9 ## This program is distributed in the hope that it will be useful,
10 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ## GNU General Public License for more details.
13 ##
14 ## You should have received a copy of the GNU General Public License
15 ## along with this program; if not, see <http://www.gnu.org/licenses/>.
16 ##
17
18 # Hexagon doesn't support gdb, so skip the EXTRA_RUNS
19 EXTRA_RUNS =
20
21 CFLAGS += -Wno-incompatible-pointer-types -Wno-undefined-internal
22 CFLAGS += -fno-unroll-loops
23
24 HEX_SRC=$(SRC_PATH)/tests/tcg/hexagon
25 VPATH += $(HEX_SRC)
26
27 %: $(HEX_SRC)/%.S $(HEX_SRC)/crt.S
28 $(CC) -static -mv67 -nostdlib $^ -o $@
29
30 HEX_TESTS = first
31 HEX_TESTS += hex_sigsegv
32 HEX_TESTS += misc
33 HEX_TESTS += usr
34 HEX_TESTS += preg_alias
35 HEX_TESTS += dual_stores
36 HEX_TESTS += multi_result
37 HEX_TESTS += mem_noshuf
38 HEX_TESTS += mem_noshuf_exception
39 HEX_TESTS += circ
40 HEX_TESTS += brev
41 HEX_TESTS += load_unpack
42 HEX_TESTS += load_align
43 HEX_TESTS += atomics
44 HEX_TESTS += fpstuff
45 HEX_TESTS += overflow
46 HEX_TESTS += signal_context
47 HEX_TESTS += reg_mut
48 HEX_TESTS += vector_add_int
49 HEX_TESTS += scatter_gather
50 HEX_TESTS += hvx_misc
51 HEX_TESTS += hvx_histogram
52
53 HEX_TESTS += test_abs
54 HEX_TESTS += test_bitcnt
55 HEX_TESTS += test_bitsplit
56 HEX_TESTS += test_call
57 HEX_TESTS += test_clobber
58 HEX_TESTS += test_cmp
59 HEX_TESTS += test_dotnew
60 HEX_TESTS += test_ext
61 HEX_TESTS += test_fibonacci
62 HEX_TESTS += test_hl
63 HEX_TESTS += test_hwloops
64 HEX_TESTS += test_jmp
65 HEX_TESTS += test_lsr
66 HEX_TESTS += test_mpyi
67 HEX_TESTS += test_packet
68 HEX_TESTS += test_reorder
69 HEX_TESTS += test_round
70 HEX_TESTS += test_vavgw
71 HEX_TESTS += test_vcmpb
72 HEX_TESTS += test_vcmpw
73 HEX_TESTS += test_vlsrw
74 HEX_TESTS += test_vmaxh
75 HEX_TESTS += test_vminh
76 HEX_TESTS += test_vpmpyh
77 HEX_TESTS += test_vspliceb
78
79 TESTS += $(HEX_TESTS)
80
81 # This test has to be compiled for the -mv67t target
82 usr: usr.c
83 $(CC) $(CFLAGS) -mv67t -O2 -Wno-inline-asm -Wno-expansion-to-defined $< -o $@ $(LDFLAGS)
84
85 scatter_gather: CFLAGS += -mhvx
86 vector_add_int: CFLAGS += -mhvx -fvectorize
87 hvx_misc: CFLAGS += -mhvx
88 hvx_histogram: CFLAGS += -mhvx -Wno-gnu-folding-constant
89
90 hvx_histogram: hvx_histogram.c hvx_histogram_row.S
91 $(CC) $(CFLAGS) $(CROSS_CC_GUEST_CFLAGS) $^ -o $@ $(LDFLAGS)