1 # GAS testsuite for the Linux eBPF -*- Tcl -*-
3 # Copyright (C) 2019-2024 Free Software Foundation, Inc.
4 # Contributed by Oracle, Inc.
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
20 if {[istarget bpf*-*-*]} {
22 run_dump_test comments
23 run_dump_test comments-pseudoc
25 # Little-endian BPF tests
30 run_dump_test lddw-pseudoc
32 run_dump_test alu-pseudoc
34 run_dump_test alu32-pseudoc
36 run_dump_test mem-pseudoc
38 run_dump_test jump-pseudoc
40 run_dump_test jump32-pseudoc
41 run_dump_test atomic-v1
43 run_dump_test atomic-pseudoc
44 run_dump_test indcall-1
45 run_dump_test indcall-1-pseudoc
47 run_dump_test jump-relax-ja
48 run_dump_test jump-relax-jump
50 # Big-endian BPF tests
55 run_dump_test lddw-be-pseudoc
57 run_dump_test alu-be-pseudoc
58 run_dump_test alu32-be
59 run_dump_test alu32-be-pseudoc
61 run_dump_test mem-be-pseudoc
63 run_dump_test jump-be-pseudoc
64 run_dump_test jump32-be
65 run_dump_test jump32-be-pseudoc
66 run_dump_test atomic-v1-be
67 run_dump_test atomic-be
68 run_dump_test atomic-be-pseudoc
70 run_dump_test jump-relax-ja-be
71 run_dump_test jump-relax-jump-be
74 run_dump_test offset16-overflow
75 run_dump_test disp16-overflow
76 run_dump_test disp16-overflow-relax
77 run_dump_test disp32-overflow
78 run_dump_test imm32-overflow
80 # Bad operand (regression)
81 run_dump_test indcall-badoperand
83 # In Pseudo-C it is not possible to refer to symbols
84 # as operands that have the same name than registers.
85 run_dump_test regs-for-symbols-pseudoc
87 # Test that parser does not create undefined symbols
88 run_dump_test asm-extra-sym-1
90 # Test relocation installation
91 run_dump_test elf-relo-1