llvm-project/llvm/lib/Target/BPF
Yonghong Song 886f9ff531 BPF: add extern func to data sections if specified
This permits extern function (BTF_KIND_FUNC) be added
to BTF_KIND_DATASEC if a section name is specified.
For example,

-bash-4.4$ cat t.c
void foo(int) __attribute__((section(".kernel.funcs")));
int test(void) {
  foo(5);
  return 0;
}

The extern function foo (BTF_KIND_FUNC) will be put into
BTF_KIND_DATASEC with name ".kernel.funcs".

This will help to differentiate two kinds of external functions,
functions in kernel and functions defined in other bpf programs.

Differential Revision: https://reviews.llvm.org/D93563
2021-03-25 16:03:29 -07:00
..
AsmParser llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
Disassembler [BPF] support atomic instructions 2020-12-03 07:38:00 -08:00
MCTargetDesc [BPF] support atomic instructions 2020-12-03 07:38:00 -08:00
TargetInfo llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
BPF.h [BPF][NewPM] Port bpf-adjust-opt to NPM and add it to pipeline 2020-11-26 10:11:26 -08:00
BPF.td
BPFAbstractMemberAccess.cpp BPF: avoid duplicated globals for CORE relocations 2020-10-06 22:37:49 -07:00
BPFAdjustOpt.cpp Update BPFAdjustOpt.cpp to accept select form of or as well 2021-02-20 18:29:58 +09:00
BPFAsmPrinter.cpp
BPFCORE.h BPF: move AbstractMemberAccess and PreserveDIType passes to EP_EarlyAsPossible 2020-09-28 16:56:22 -07:00
BPFCallingConv.td
BPFCheckAndAdjustIR.cpp BPF: move AbstractMemberAccess and PreserveDIType passes to EP_EarlyAsPossible 2020-09-28 16:56:22 -07:00
BPFFrameLowering.cpp
BPFFrameLowering.h
BPFISelDAGToDAG.cpp [llvm] Remove redundant return and continue statements (NFC) 2021-01-14 20:30:34 -08:00
BPFISelLowering.cpp BPF: provide better error message for unsupported atomic operations 2021-03-11 19:19:00 -08:00
BPFISelLowering.h BPF: provide better error message for unsupported atomic operations 2021-03-11 19:19:00 -08:00
BPFInstrFormats.td [BPF] support atomic instructions 2020-12-03 07:38:00 -08:00
BPFInstrInfo.cpp
BPFInstrInfo.h
BPFInstrInfo.td [BPF] support atomic instructions 2020-12-03 07:38:00 -08:00
BPFMCInstLower.cpp
BPFMCInstLower.h
BPFMIChecking.cpp [BPF] support atomic instructions 2020-12-03 07:38:00 -08:00
BPFMIPeephole.cpp BPF: Fix a bug in peephole TRUNC elimination optimization 2021-03-02 13:03:42 -08:00
BPFMISimplifyPatchable.cpp
BPFPreserveDIType.cpp BPF: permit type modifiers for __builtin_btf_type_id() relocation 2021-03-04 16:27:23 -08:00
BPFRegisterInfo.cpp
BPFRegisterInfo.h
BPFRegisterInfo.td
BPFSelectionDAGInfo.cpp
BPFSelectionDAGInfo.h
BPFSubtarget.cpp
BPFSubtarget.h
BPFTargetMachine.cpp BPF: Implement TTI.IntImmCost() properly 2021-02-11 08:35:25 -08:00
BPFTargetMachine.h BPF: Implement TTI.IntImmCost() properly 2021-02-11 08:35:25 -08:00
BPFTargetTransformInfo.h BPF: Implement TTI.getCmpSelInstrCost() properly 2021-02-25 14:48:53 -08:00
BTF.def [BPF] Add support for floats and doubles 2021-03-05 15:10:11 +01:00
BTF.h
BTFDebug.cpp BPF: add extern func to data sections if specified 2021-03-25 16:03:29 -07:00
BTFDebug.h BPF: add extern func to data sections if specified 2021-03-25 16:03:29 -07:00
CMakeLists.txt BPF: Add LLVMTransformUtils in CMakefile LINK_COMPONENTS 2021-02-25 15:43:25 -08:00