/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: core-loongarch64.proto */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C__NO_DEPRECATED
#define PROTOBUF_C__NO_DEPRECATED
#endif

#include "core-loongarch64.pb-c.h"
void   user_loongarch64_gpregs_entry__init
                     (UserLoongarch64GpregsEntry         *message)
{
  static const UserLoongarch64GpregsEntry init_value = USER_LOONGARCH64_GPREGS_ENTRY__INIT;
  *message = init_value;
}
size_t user_loongarch64_gpregs_entry__get_packed_size
                     (const UserLoongarch64GpregsEntry *message)
{
  assert(message->base.descriptor == &user_loongarch64_gpregs_entry__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t user_loongarch64_gpregs_entry__pack
                     (const UserLoongarch64GpregsEntry *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &user_loongarch64_gpregs_entry__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t user_loongarch64_gpregs_entry__pack_to_buffer
                     (const UserLoongarch64GpregsEntry *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &user_loongarch64_gpregs_entry__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
UserLoongarch64GpregsEntry *
       user_loongarch64_gpregs_entry__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (UserLoongarch64GpregsEntry *)
     protobuf_c_message_unpack (&user_loongarch64_gpregs_entry__descriptor,
                                allocator, len, data);
}
void   user_loongarch64_gpregs_entry__free_unpacked
                     (UserLoongarch64GpregsEntry *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &user_loongarch64_gpregs_entry__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   user_loongarch64_fpregs_entry__init
                     (UserLoongarch64FpregsEntry         *message)
{
  static const UserLoongarch64FpregsEntry init_value = USER_LOONGARCH64_FPREGS_ENTRY__INIT;
  *message = init_value;
}
size_t user_loongarch64_fpregs_entry__get_packed_size
                     (const UserLoongarch64FpregsEntry *message)
{
  assert(message->base.descriptor == &user_loongarch64_fpregs_entry__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t user_loongarch64_fpregs_entry__pack
                     (const UserLoongarch64FpregsEntry *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &user_loongarch64_fpregs_entry__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t user_loongarch64_fpregs_entry__pack_to_buffer
                     (const UserLoongarch64FpregsEntry *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &user_loongarch64_fpregs_entry__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
UserLoongarch64FpregsEntry *
       user_loongarch64_fpregs_entry__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (UserLoongarch64FpregsEntry *)
     protobuf_c_message_unpack (&user_loongarch64_fpregs_entry__descriptor,
                                allocator, len, data);
}
void   user_loongarch64_fpregs_entry__free_unpacked
                     (UserLoongarch64FpregsEntry *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &user_loongarch64_fpregs_entry__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   thread_info_loongarch64__init
                     (ThreadInfoLoongarch64         *message)
{
  static const ThreadInfoLoongarch64 init_value = THREAD_INFO_LOONGARCH64__INIT;
  *message = init_value;
}
size_t thread_info_loongarch64__get_packed_size
                     (const ThreadInfoLoongarch64 *message)
{
  assert(message->base.descriptor == &thread_info_loongarch64__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t thread_info_loongarch64__pack
                     (const ThreadInfoLoongarch64 *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &thread_info_loongarch64__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t thread_info_loongarch64__pack_to_buffer
                     (const ThreadInfoLoongarch64 *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &thread_info_loongarch64__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
ThreadInfoLoongarch64 *
       thread_info_loongarch64__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (ThreadInfoLoongarch64 *)
     protobuf_c_message_unpack (&thread_info_loongarch64__descriptor,
                                allocator, len, data);
}
void   thread_info_loongarch64__free_unpacked
                     (ThreadInfoLoongarch64 *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &thread_info_loongarch64__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCFieldDescriptor user_loongarch64_gpregs_entry__field_descriptors[2] =
{
  {
    "regs",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(UserLoongarch64GpregsEntry, n_regs),
    offsetof(UserLoongarch64GpregsEntry, regs),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "pc",
    2,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_UINT64,
    0,   /* quantifier_offset */
    offsetof(UserLoongarch64GpregsEntry, pc),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned user_loongarch64_gpregs_entry__field_indices_by_name[] = {
  1,   /* field[1] = pc */
  0,   /* field[0] = regs */
};
static const ProtobufCIntRange user_loongarch64_gpregs_entry__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor user_loongarch64_gpregs_entry__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "user_loongarch64_gpregs_entry",
  "UserLoongarch64GpregsEntry",
  "UserLoongarch64GpregsEntry",
  "",
  sizeof(UserLoongarch64GpregsEntry),
  2,
  user_loongarch64_gpregs_entry__field_descriptors,
  user_loongarch64_gpregs_entry__field_indices_by_name,
  1,  user_loongarch64_gpregs_entry__number_ranges,
  (ProtobufCMessageInit) user_loongarch64_gpregs_entry__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor user_loongarch64_fpregs_entry__field_descriptors[3] =
{
  {
    "regs",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(UserLoongarch64FpregsEntry, n_regs),
    offsetof(UserLoongarch64FpregsEntry, regs),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "fcc",
    2,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_UINT64,
    0,   /* quantifier_offset */
    offsetof(UserLoongarch64FpregsEntry, fcc),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "fcsr",
    3,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_UINT32,
    0,   /* quantifier_offset */
    offsetof(UserLoongarch64FpregsEntry, fcsr),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned user_loongarch64_fpregs_entry__field_indices_by_name[] = {
  1,   /* field[1] = fcc */
  2,   /* field[2] = fcsr */
  0,   /* field[0] = regs */
};
static const ProtobufCIntRange user_loongarch64_fpregs_entry__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor user_loongarch64_fpregs_entry__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "user_loongarch64_fpregs_entry",
  "UserLoongarch64FpregsEntry",
  "UserLoongarch64FpregsEntry",
  "",
  sizeof(UserLoongarch64FpregsEntry),
  3,
  user_loongarch64_fpregs_entry__field_descriptors,
  user_loongarch64_fpregs_entry__field_indices_by_name,
  1,  user_loongarch64_fpregs_entry__number_ranges,
  (ProtobufCMessageInit) user_loongarch64_fpregs_entry__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor thread_info_loongarch64__field_descriptors[4] =
{
  {
    "clear_tid_addr",
    1,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_UINT64,
    0,   /* quantifier_offset */
    offsetof(ThreadInfoLoongarch64, clear_tid_addr),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "tls",
    2,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_UINT64,
    0,   /* quantifier_offset */
    offsetof(ThreadInfoLoongarch64, tls),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "gpregs",
    3,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(ThreadInfoLoongarch64, gpregs),
    &user_loongarch64_gpregs_entry__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "fpregs",
    4,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(ThreadInfoLoongarch64, fpregs),
    &user_loongarch64_fpregs_entry__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned thread_info_loongarch64__field_indices_by_name[] = {
  0,   /* field[0] = clear_tid_addr */
  3,   /* field[3] = fpregs */
  2,   /* field[2] = gpregs */
  1,   /* field[1] = tls */
};
static const ProtobufCIntRange thread_info_loongarch64__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 4 }
};
const ProtobufCMessageDescriptor thread_info_loongarch64__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "thread_info_loongarch64",
  "ThreadInfoLoongarch64",
  "ThreadInfoLoongarch64",
  "",
  sizeof(ThreadInfoLoongarch64),
  4,
  thread_info_loongarch64__field_descriptors,
  thread_info_loongarch64__field_indices_by_name,
  1,  thread_info_loongarch64__number_ranges,
  (ProtobufCMessageInit) thread_info_loongarch64__init,
  NULL,NULL,NULL    /* reserved[123] */
};
