]>
Commit | Line | Data |
---|---|---|
5e4c7a83 CM |
1 | /* This reloc does nothing. */ |
2 | BPF_HOWTO (R_BPF_NONE, /* type */ | |
3 | 0, /* rightshift */ | |
4 | 0, /* size */ | |
5 | 0, /* bitsize */ | |
6 | false, /* pc_relative */ | |
7 | 0, /* bitpos */ | |
8 | complain_overflow_dont, /* complain_on_overflow */ | |
9 | bpf_elf_generic_reloc, /* special_function */ | |
10 | "R_BPF_NONE", /* name */ | |
11 | false, /* partial_inplace */ | |
12 | 0, /* src_mask */ | |
13 | 0, /* dst_mask */ | |
14 | false) /* pcrel_offset */ | |
15 | ||
16 | /* 64-immediate in LDDW instruction. */ | |
17 | BPF_HOWTO (R_BPF_64_64, /* type */ | |
18 | 0, /* rightshift */ | |
19 | 8, /* size */ | |
20 | 64, /* bitsize */ | |
21 | false, /* pc_relative */ | |
22 | 32, /* bitpos */ | |
23 | complain_overflow_signed, /* complain_on_overflow */ | |
24 | bpf_elf_generic_reloc, /* special_function */ | |
25 | "R_BPF_64_64", /* name */ | |
26 | true, /* partial_inplace */ | |
27 | MINUS_ONE, /* src_mask */ | |
28 | MINUS_ONE, /* dst_mask */ | |
29 | true) /* pcrel_offset */ | |
30 | ||
31 | /* 32-bit data. */ | |
32 | BPF_HOWTO (R_BPF_64_ABS32, /* type */ | |
33 | 0, /* rightshift */ | |
34 | 4, /* size */ | |
35 | 32, /* bitsize */ | |
36 | false, /* pc_relative */ | |
37 | 0, /* bitpos */ | |
38 | complain_overflow_bitfield, /* complain_on_overflow */ | |
39 | bpf_elf_generic_reloc, /* special_function */ | |
40 | "R_BPF_64_ABS32", /* name */ | |
41 | false, /* partial_inplace */ | |
42 | 0xffffffff, /* src_mask */ | |
43 | 0xffffffff, /* dst_mask */ | |
44 | true) /* pcrel_offset */ | |
45 | ||
46 | /* 64-bit data. */ | |
47 | BPF_HOWTO (R_BPF_64_ABS64, /* type */ | |
48 | 0, /* rightshift */ | |
49 | 8, /* size */ | |
50 | 64, /* bitsize */ | |
51 | false, /* pc_relative */ | |
52 | 0, /* bitpos */ | |
53 | complain_overflow_bitfield, /* complain_on_overflow */ | |
54 | bpf_elf_generic_reloc, /* special_function */ | |
55 | "R_BPF_64_ABS64", /* name */ | |
56 | false, /* partial_inplace */ | |
57 | 0, /* src_mask */ | |
58 | MINUS_ONE, /* dst_mask */ | |
59 | true) /* pcrel_offset */ | |
60 | ||
61 | /* 32-bit PC-relative address in call instructions. */ | |
62 | BPF_HOWTO (R_BPF_64_32, /* type */ | |
63 | 0, /* rightshift */ | |
64 | 4, /* size */ | |
65 | 32, /* bitsize */ | |
66 | true, /* pc_relative */ | |
67 | 32, /* bitpos */ | |
68 | complain_overflow_signed, /* complain_on_overflow */ | |
69 | bpf_elf_generic_reloc, /* special_function */ | |
70 | "R_BPF_64_32", /* name */ | |
71 | true, /* partial_inplace */ | |
72 | 0xffffffff, /* src_mask */ | |
73 | 0xffffffff, /* dst_mask */ | |
74 | true) /* pcrel_offset */ | |
d218e7fe JM |
75 | |
76 | /* 16-bit PC-relative address in load instructions. */ | |
77 | BPF_HOWTO (R_BPF_GNU_64_16, /* type */ | |
78 | 0, /* rightshift */ | |
79 | 2, /* size */ | |
80 | 16, /* bitsize */ | |
81 | true, /* pc_relative */ | |
82 | 16, /* bitpos */ | |
83 | complain_overflow_signed, /* complain_on_overflow */ | |
84 | bpf_elf_generic_reloc, /* special_function */ | |
85 | "R_BPF_GNU_64_16", /* name */ | |
86 | true, /* partial_inplace */ | |
87 | 0xffff, /* src_mask */ | |
88 | 0xffff, /* dst_mask */ | |
89 | true) /* pcrel_offset */ |