1; Options for the eBPF compiler port. 2 3; Copyright (C) 2019-2021 Free Software Foundation, Inc. 4; 5; This file is part of GCC. 6; 7; GCC is free software; you can redistribute it and/or modify it under 8; the terms of the GNU General Public License as published by the Free 9; Software Foundation; either version 3, or (at your option) any later 10; version. 11; 12; GCC is distributed in the hope that it will be useful, but WITHOUT ANY 13; WARRANTY; without even the implied warranty of MERCHANTABILITY or 14; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15; for more details. 16; 17; You should have received a copy of the GNU General Public License 18; along with GCC; see the file COPYING3. If not see 19; <http://www.gnu.org/licenses/>. 20 21HeaderInclude 22config/bpf/bpf-opts.h 23 24; Selecting the kind of kernel the eBPF will be running on. 25 26mkernel= 27Target RejectNegative Joined Var(bpf_kernel) Enum(bpf_kernel) Init(LINUX_LATEST) 28Generate eBPF for the given Linux kernel version. 29 30Enum 31Name(bpf_kernel) Type(enum bpf_kernel_version) 32 33EnumValue 34Enum(bpf_kernel) String(native) Value(LINUX_NATIVE) DriverOnly 35 36EnumValue 37Enum(bpf_kernel) String(latest) Value(LINUX_LATEST) DriverOnly 38 39EnumValue 40Enum(bpf_kernel) String(4.0) Value(LINUX_V4_0) 41 42EnumValue 43Enum(bpf_kernel) String(4.1) Value(LINUX_V4_1) 44 45EnumValue 46Enum(bpf_kernel) String(4.2) Value(LINUX_V4_2) 47 48EnumValue 49Enum(bpf_kernel) String(4.3) Value(LINUX_V4_3) 50 51EnumValue 52Enum(bpf_kernel) String(4.4) Value(LINUX_V4_4) 53 54EnumValue 55Enum(bpf_kernel) String(4.5) Value(LINUX_V4_5) 56 57EnumValue 58Enum(bpf_kernel) String(4.6) Value(LINUX_V4_6) 59 60EnumValue 61Enum(bpf_kernel) String(4.7) Value(LINUX_V4_7) 62 63EnumValue 64Enum(bpf_kernel) String(4.8) Value(LINUX_V4_8) 65 66EnumValue 67Enum(bpf_kernel) String(4.9) Value(LINUX_V4_9) 68 69EnumValue 70Enum(bpf_kernel) String(4.10) Value(LINUX_V4_10) 71 72EnumValue 73Enum(bpf_kernel) String(4.11) Value(LINUX_V4_11) 74 75EnumValue 76Enum(bpf_kernel) String(4.12) Value(LINUX_V4_12) 77 78EnumValue 79Enum(bpf_kernel) String(4.13) Value(LINUX_V4_13) 80 81EnumValue 82Enum(bpf_kernel) String(4.14) Value(LINUX_V4_14) 83 84EnumValue 85Enum(bpf_kernel) String(4.15) Value(LINUX_V4_15) 86 87EnumValue 88Enum(bpf_kernel) String(4.16) Value(LINUX_V4_16) 89 90EnumValue 91Enum(bpf_kernel) String(4.17) Value(LINUX_V4_17) 92 93EnumValue 94Enum(bpf_kernel) String(4.18) Value(LINUX_V4_18) 95 96EnumValue 97Enum(bpf_kernel) String(4.19) Value(LINUX_V4_19) 98 99EnumValue 100Enum(bpf_kernel) String(4.20) Value(LINUX_V4_20) 101 102EnumValue 103Enum(bpf_kernel) String(5.0) Value(LINUX_V5_0) 104 105EnumValue 106Enum(bpf_kernel) String(5.1) Value(LINUX_V5_1) 107 108EnumValue 109Enum(bpf_kernel) String(5.2) Value(LINUX_V5_2) 110 111; Use xBPF extensions. 112 113mxbpf 114Target Mask(XBPF) 115Generate xBPF. 116 117; Selecting big endian or little endian targets. 118 119mbig-endian 120Target RejectNegative Mask(BIG_ENDIAN) 121Generate big-endian eBPF. 122 123mlittle-endian 124Target RejectNegative InverseMask(BIG_ENDIAN) 125Generate little-endian eBPF. 126 127mframe-limit= 128Target Joined RejectNegative UInteger IntegerRange(0, 32767) Var(bpf_frame_limit) Init(512) 129Set a hard limit for the size of each stack frame, in bytes. 130