[all-commits] [llvm/llvm-project] 6d218b: BPF: support type exist/size and enum exist/value ...

yonghong-song via All-commits all-commits at lists.llvm.org
Tue Aug 4 12:36:08 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 6d218b4adb093ff2e9764febbbc89f429412006c
      https://github.com/llvm/llvm-project/commit/6d218b4adb093ff2e9764febbbc89f429412006c
  Author: Yonghong Song <yhs at fb.com>
  Date:   2020-08-04 (Tue, 04 Aug 2020)

  Changed paths:
    M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
    M llvm/lib/Target/BPF/BPFCORE.h
    M llvm/lib/Target/BPF/BTFDebug.cpp
    M llvm/lib/Target/BPF/BTFDebug.h
    A llvm/test/CodeGen/BPF/CORE/intrinsic-typeinfo-enum-value.ll
    A llvm/test/CodeGen/BPF/CORE/intrinsic-typeinfo-type-exist.ll
    A llvm/test/CodeGen/BPF/CORE/intrinsic-typeinfo-type-size-1.ll
    A llvm/test/CodeGen/BPF/CORE/intrinsic-typeinfo-type-size-2.ll

  Log Message:
  -----------
  BPF: support type exist/size and enum exist/value relocations

Four new CO-RE relocations are introduced:
  - TYPE_EXISTENCE: whether a typedef/record/enum type exists
  - TYPE_SIZE: the size of a typedef/record/enum type
  - ENUM_VALUE_EXISTENCE: whether an enum value of an enum type exists
  - ENUM_VALUE: the enum value of an enum type

These additional relocations will make CO-RE bpf programs
more adaptive for potential kernel internal data structure
changes.

Differential Revision: https://reviews.llvm.org/D83878




More information about the All-commits mailing list