/* Generated by ./xlat/gen.sh from ./xlat/bpf_size.in; do not edit. */

#ifdef IN_MPERS

# error static const struct xlat bpf_size in mpers mode

#else

static
const struct xlat bpf_size[] = {
#if defined(BPF_W) || (defined(HAVE_DECL_BPF_W) && HAVE_DECL_BPF_W)
  XLAT(BPF_W),
#endif
#if defined(BPF_H) || (defined(HAVE_DECL_BPF_H) && HAVE_DECL_BPF_H)
  XLAT(BPF_H),
#endif
#if defined(BPF_B) || (defined(HAVE_DECL_BPF_B) && HAVE_DECL_BPF_B)
  XLAT(BPF_B),
#endif
#if defined(BPF_DW) || (defined(HAVE_DECL_BPF_DW) && HAVE_DECL_BPF_DW)
  XLAT(BPF_DW),
#endif
 XLAT_END
};

#endif /* !IN_MPERS */
