diff --git a/src/google/protobuf/any.pb.cc b/src/google/protobuf/any.pb.cc index d608ece566..ae66b381a7 100644 --- a/src/google/protobuf/any.pb.cc +++ b/src/google/protobuf/any.pb.cc @@ -91,24 +91,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2fany_2eproto[] ABSL_ATTR "anypb\242\002\003GPB\252\002\036Google.Protobuf.WellKnownT" "ypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fany_2eproto = { - false, - 212, - descriptor_table_protodef_google_2fprotobuf_2fany_2eproto, - "google/protobuf/any.proto", - nullptr, - 0, - 1, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fany_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fany_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fany_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fany_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fany_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fany_2eproto = { + false, + false, + 212, + descriptor_table_protodef_google_2fprotobuf_2fany_2eproto, + "google/protobuf/any.proto", + &descriptor_table_google_2fprotobuf_2fany_2eproto_once, + nullptr, + 0, + 1, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fany_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fany_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fany_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fany_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fany_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fany_2eproto; } @@ -349,7 +361,7 @@ void Any::InternalSwap(Any* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Any::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fany_2eproto_getter, &descriptor_table_google_2fprotobuf_2fany_2eproto.once, + &descriptor_table_google_2fprotobuf_2fany_2eproto_getter, &descriptor_table_google_2fprotobuf_2fany_2eproto_once, file_level_metadata_google_2fprotobuf_2fany_2eproto[0]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/api.pb.cc b/src/google/protobuf/api.pb.cc index fffe907cf9..d783b73679 100644 --- a/src/google/protobuf/api.pb.cc +++ b/src/google/protobuf/api.pb.cc @@ -205,24 +205,36 @@ static const ::_pbi::DescriptorTable* const descriptor_table_google_2fprotobuf_2 &::descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto, &::descriptor_table_google_2fprotobuf_2ftype_2eproto, }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fapi_2eproto = { - false, - 751, - descriptor_table_protodef_google_2fprotobuf_2fapi_2eproto, - "google/protobuf/api.proto", - descriptor_table_google_2fprotobuf_2fapi_2eproto_deps, - 2, - 3, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fapi_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fapi_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fapi_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fapi_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fapi_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fapi_2eproto = { + false, + false, + 751, + descriptor_table_protodef_google_2fprotobuf_2fapi_2eproto, + "google/protobuf/api.proto", + &descriptor_table_google_2fprotobuf_2fapi_2eproto_once, + descriptor_table_google_2fprotobuf_2fapi_2eproto_deps, + 2, + 3, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fapi_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fapi_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fapi_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fapi_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fapi_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fapi_2eproto; } @@ -626,7 +638,7 @@ void Api::InternalSwap(Api* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Api::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fapi_2eproto_getter, &descriptor_table_google_2fprotobuf_2fapi_2eproto.once, + &descriptor_table_google_2fprotobuf_2fapi_2eproto_getter, &descriptor_table_google_2fprotobuf_2fapi_2eproto_once, file_level_metadata_google_2fprotobuf_2fapi_2eproto[0]); } // =================================================================== @@ -995,7 +1007,7 @@ void Method::InternalSwap(Method* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Method::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fapi_2eproto_getter, &descriptor_table_google_2fprotobuf_2fapi_2eproto.once, + &descriptor_table_google_2fprotobuf_2fapi_2eproto_getter, &descriptor_table_google_2fprotobuf_2fapi_2eproto_once, file_level_metadata_google_2fprotobuf_2fapi_2eproto[1]); } // =================================================================== @@ -1218,7 +1230,7 @@ void Mixin::InternalSwap(Mixin* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Mixin::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fapi_2eproto_getter, &descriptor_table_google_2fprotobuf_2fapi_2eproto.once, + &descriptor_table_google_2fprotobuf_2fapi_2eproto_getter, &descriptor_table_google_2fprotobuf_2fapi_2eproto_once, file_level_metadata_google_2fprotobuf_2fapi_2eproto[2]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/duration.pb.cc b/src/google/protobuf/duration.pb.cc index ea89d95b5a..5a862c5d1a 100644 --- a/src/google/protobuf/duration.pb.cc +++ b/src/google/protobuf/duration.pb.cc @@ -82,24 +82,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2fduration_2eproto[] ABSL "uf/types/known/durationpb\370\001\001\242\002\003GPB\252\002\036Goo" "gle.Protobuf.WellKnownTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fduration_2eproto = { - false, - 235, - descriptor_table_protodef_google_2fprotobuf_2fduration_2eproto, - "google/protobuf/duration.proto", - nullptr, - 0, - 1, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fduration_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fduration_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fduration_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fduration_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fduration_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fduration_2eproto = { + false, + false, + 235, + descriptor_table_protodef_google_2fprotobuf_2fduration_2eproto, + "google/protobuf/duration.proto", + &descriptor_table_google_2fprotobuf_2fduration_2eproto_once, + nullptr, + 0, + 1, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fduration_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fduration_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fduration_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fduration_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fduration_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fduration_2eproto; } @@ -313,7 +325,7 @@ void Duration::InternalSwap(Duration* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Duration::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fduration_2eproto_getter, &descriptor_table_google_2fprotobuf_2fduration_2eproto.once, + &descriptor_table_google_2fprotobuf_2fduration_2eproto_getter, &descriptor_table_google_2fprotobuf_2fduration_2eproto_once, file_level_metadata_google_2fprotobuf_2fduration_2eproto[0]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/empty.pb.cc b/src/google/protobuf/empty.pb.cc index 75e32b952b..cc9d9bf063 100644 --- a/src/google/protobuf/empty.pb.cc +++ b/src/google/protobuf/empty.pb.cc @@ -71,24 +71,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2fempty_2eproto[] ABSL_AT "/types/known/emptypb\370\001\001\242\002\003GPB\252\002\036Google.P" "rotobuf.WellKnownTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fempty_2eproto = { - false, - 190, - descriptor_table_protodef_google_2fprotobuf_2fempty_2eproto, - "google/protobuf/empty.proto", - nullptr, - 0, - 1, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fempty_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fempty_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fempty_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fempty_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fempty_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fempty_2eproto = { + false, + false, + 190, + descriptor_table_protodef_google_2fprotobuf_2fempty_2eproto, + "google/protobuf/empty.proto", + &descriptor_table_google_2fprotobuf_2fempty_2eproto_once, + nullptr, + 0, + 1, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fempty_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fempty_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fempty_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fempty_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fempty_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fempty_2eproto; } @@ -129,7 +141,7 @@ Empty::Empty( ::google::protobuf::Metadata Empty::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fempty_2eproto_getter, &descriptor_table_google_2fprotobuf_2fempty_2eproto.once, + &descriptor_table_google_2fprotobuf_2fempty_2eproto_getter, &descriptor_table_google_2fprotobuf_2fempty_2eproto_once, file_level_metadata_google_2fprotobuf_2fempty_2eproto[0]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/field_mask.pb.cc b/src/google/protobuf/field_mask.pb.cc index e15a5ed9c5..571b59e2ec 100644 --- a/src/google/protobuf/field_mask.pb.cc +++ b/src/google/protobuf/field_mask.pb.cc @@ -80,24 +80,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2ffield_5fmask_2eproto[] "n/fieldmaskpb\370\001\001\242\002\003GPB\252\002\036Google.Protobuf" ".WellKnownTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto = { - false, - 223, - descriptor_table_protodef_google_2fprotobuf_2ffield_5fmask_2eproto, - "google/protobuf/field_mask.proto", - nullptr, - 0, - 1, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2ffield_5fmask_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto, - file_level_service_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto = { + false, + false, + 223, + descriptor_table_protodef_google_2fprotobuf_2ffield_5fmask_2eproto, + "google/protobuf/field_mask.proto", + &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_once, + nullptr, + 0, + 1, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2ffield_5fmask_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto, + file_level_service_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto; } @@ -292,7 +304,7 @@ void FieldMask::InternalSwap(FieldMask* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata FieldMask::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_getter, &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto.once, + &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_getter, &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_once, file_level_metadata_google_2fprotobuf_2ffield_5fmask_2eproto[0]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/source_context.pb.cc b/src/google/protobuf/source_context.pb.cc index 609ad0b605..a9b8fc4f3a 100644 --- a/src/google/protobuf/source_context.pb.cc +++ b/src/google/protobuf/source_context.pb.cc @@ -82,24 +82,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2fsource_5fcontext_2eprot "tobuf/types/known/sourcecontextpb\242\002\003GPB\252" "\002\036Google.Protobuf.WellKnownTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto = { - false, - 240, - descriptor_table_protodef_google_2fprotobuf_2fsource_5fcontext_2eproto, - "google/protobuf/source_context.proto", - nullptr, - 0, - 1, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fsource_5fcontext_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto = { + false, + false, + 240, + descriptor_table_protodef_google_2fprotobuf_2fsource_5fcontext_2eproto, + "google/protobuf/source_context.proto", + &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_once, + nullptr, + 0, + 1, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fsource_5fcontext_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto; } @@ -299,7 +311,7 @@ void SourceContext::InternalSwap(SourceContext* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata SourceContext::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_getter, &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto.once, + &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_getter, &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_once, file_level_metadata_google_2fprotobuf_2fsource_5fcontext_2eproto[0]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/struct.pb.cc b/src/google/protobuf/struct.pb.cc index 2794d7de8e..7722918c0d 100644 --- a/src/google/protobuf/struct.pb.cc +++ b/src/google/protobuf/struct.pb.cc @@ -182,24 +182,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2fstruct_2eproto[] ABSL_A "rotobuf/types/known/structpb\370\001\001\242\002\003GPB\252\002\036" "Google.Protobuf.WellKnownTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fstruct_2eproto = { - false, - 638, - descriptor_table_protodef_google_2fprotobuf_2fstruct_2eproto, - "google/protobuf/struct.proto", - nullptr, - 0, - 4, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fstruct_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fstruct_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fstruct_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fstruct_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fstruct_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fstruct_2eproto = { + false, + false, + 638, + descriptor_table_protodef_google_2fprotobuf_2fstruct_2eproto, + "google/protobuf/struct.proto", + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, + nullptr, + 0, + 4, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fstruct_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fstruct_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fstruct_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fstruct_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fstruct_2eproto; } @@ -224,7 +236,7 @@ Struct_FieldsEntry_DoNotUse::Struct_FieldsEntry_DoNotUse(::google::protobuf::Are : SuperType(arena) {} ::google::protobuf::Metadata Struct_FieldsEntry_DoNotUse::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto.once, + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, file_level_metadata_google_2fprotobuf_2fstruct_2eproto[0]); } // =================================================================== @@ -435,7 +447,7 @@ void Struct::InternalSwap(Struct* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Struct::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto.once, + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, file_level_metadata_google_2fprotobuf_2fstruct_2eproto[1]); } // =================================================================== @@ -828,7 +840,7 @@ void Value::InternalSwap(Value* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Value::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto.once, + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, file_level_metadata_google_2fprotobuf_2fstruct_2eproto[2]); } // =================================================================== @@ -1015,7 +1027,7 @@ void ListValue::InternalSwap(ListValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata ListValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto.once, + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_getter, &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, file_level_metadata_google_2fprotobuf_2fstruct_2eproto[3]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/timestamp.pb.cc b/src/google/protobuf/timestamp.pb.cc index 77cb41a8c4..24fe5a7b9a 100644 --- a/src/google/protobuf/timestamp.pb.cc +++ b/src/google/protobuf/timestamp.pb.cc @@ -82,24 +82,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2ftimestamp_2eproto[] ABS "tobuf/types/known/timestamppb\370\001\001\242\002\003GPB\252\002" "\036Google.Protobuf.WellKnownTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2ftimestamp_2eproto = { - false, - 239, - descriptor_table_protodef_google_2fprotobuf_2ftimestamp_2eproto, - "google/protobuf/timestamp.proto", - nullptr, - 0, - 1, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2ftimestamp_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2ftimestamp_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2ftimestamp_2eproto, - file_level_service_descriptors_google_2fprotobuf_2ftimestamp_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2ftimestamp_2eproto = { + false, + false, + 239, + descriptor_table_protodef_google_2fprotobuf_2ftimestamp_2eproto, + "google/protobuf/timestamp.proto", + &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_once, + nullptr, + 0, + 1, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2ftimestamp_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2ftimestamp_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2ftimestamp_2eproto, + file_level_service_descriptors_google_2fprotobuf_2ftimestamp_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto; } @@ -313,7 +325,7 @@ void Timestamp::InternalSwap(Timestamp* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Timestamp::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto.once, + &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_once, file_level_metadata_google_2fprotobuf_2ftimestamp_2eproto[0]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/type.pb.cc b/src/google/protobuf/type.pb.cc index 38d61a65be..336f7b698a 100644 --- a/src/google/protobuf/type.pb.cc +++ b/src/google/protobuf/type.pb.cc @@ -321,24 +321,36 @@ static const ::_pbi::DescriptorTable* const descriptor_table_google_2fprotobuf_2 &::descriptor_table_google_2fprotobuf_2fany_2eproto, &::descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto, }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2ftype_2eproto = { - false, - 1647, - descriptor_table_protodef_google_2fprotobuf_2ftype_2eproto, - "google/protobuf/type.proto", - descriptor_table_google_2fprotobuf_2ftype_2eproto_deps, - 2, - 5, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2ftype_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2ftype_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2ftype_2eproto, - file_level_service_descriptors_google_2fprotobuf_2ftype_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2ftype_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2ftype_2eproto = { + false, + false, + 1647, + descriptor_table_protodef_google_2fprotobuf_2ftype_2eproto, + "google/protobuf/type.proto", + &descriptor_table_google_2fprotobuf_2ftype_2eproto_once, + descriptor_table_google_2fprotobuf_2ftype_2eproto_deps, + 2, + 5, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2ftype_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2ftype_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2ftype_2eproto, + file_level_service_descriptors_google_2fprotobuf_2ftype_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2ftype_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2ftype_2eproto; } @@ -805,7 +817,7 @@ void Type::InternalSwap(Type* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Type::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto.once, + &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto_once, file_level_metadata_google_2fprotobuf_2ftype_2eproto[0]); } // =================================================================== @@ -1249,7 +1261,7 @@ void Field::InternalSwap(Field* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Field::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto.once, + &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto_once, file_level_metadata_google_2fprotobuf_2ftype_2eproto[1]); } // =================================================================== @@ -1617,7 +1629,7 @@ void Enum::InternalSwap(Enum* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Enum::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto.once, + &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto_once, file_level_metadata_google_2fprotobuf_2ftype_2eproto[2]); } // =================================================================== @@ -1864,7 +1876,7 @@ void EnumValue::InternalSwap(EnumValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata EnumValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto.once, + &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto_once, file_level_metadata_google_2fprotobuf_2ftype_2eproto[3]); } // =================================================================== @@ -2113,7 +2125,7 @@ void Option::InternalSwap(Option* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Option::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto.once, + &descriptor_table_google_2fprotobuf_2ftype_2eproto_getter, &descriptor_table_google_2fprotobuf_2ftype_2eproto_once, file_level_metadata_google_2fprotobuf_2ftype_2eproto[4]); } // @@protoc_insertion_point(namespace_scope) diff --git a/src/google/protobuf/wrappers.pb.cc b/src/google/protobuf/wrappers.pb.cc index 1359937483..8cacb3f83c 100644 --- a/src/google/protobuf/wrappers.pb.cc +++ b/src/google/protobuf/wrappers.pb.cc @@ -330,24 +330,36 @@ const char descriptor_table_protodef_google_2fprotobuf_2fwrappers_2eproto[] ABSL "erspb\370\001\001\242\002\003GPB\252\002\036Google.Protobuf.WellKno" "wnTypesb\006proto3" }; -PROTOBUF_CONSTINIT -PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const ::_pbi::DescriptorTable - descriptor_table_google_2fprotobuf_2fwrappers_2eproto = { - false, - 455, - descriptor_table_protodef_google_2fprotobuf_2fwrappers_2eproto, - "google/protobuf/wrappers.proto", - nullptr, - 0, - 9, - schemas, - file_default_instances, - TableStruct_google_2fprotobuf_2fwrappers_2eproto::offsets, - file_level_metadata_google_2fprotobuf_2fwrappers_2eproto, - file_level_enum_descriptors_google_2fprotobuf_2fwrappers_2eproto, - file_level_service_descriptors_google_2fprotobuf_2fwrappers_2eproto, +static ::absl::once_flag descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_google_2fprotobuf_2fwrappers_2eproto = { + false, + false, + 455, + descriptor_table_protodef_google_2fprotobuf_2fwrappers_2eproto, + "google/protobuf/wrappers.proto", + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, + nullptr, + 0, + 9, + schemas, + file_default_instances, + TableStruct_google_2fprotobuf_2fwrappers_2eproto::offsets, + file_level_metadata_google_2fprotobuf_2fwrappers_2eproto, + file_level_enum_descriptors_google_2fprotobuf_2fwrappers_2eproto, + file_level_service_descriptors_google_2fprotobuf_2fwrappers_2eproto, }; +// This function exists to be marked as weak. +// It can significantly speed up compilation by breaking up LLVM's SCC +// in the .pb.cc translation units. Large translation units see a +// reduction of more than 35% of walltime for optimized builds. Without +// the weak attribute all the messages in the file, including all the +// vtables and everything they use become part of the same SCC through +// a cycle like: +// GetMetadata -> descriptor table -> default instances -> +// vtables -> GetMetadata +// By adding a weak function here we break the connection from the +// individual vtables back into the descriptor table. PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter() { return &descriptor_table_google_2fprotobuf_2fwrappers_2eproto; } @@ -541,7 +553,7 @@ void DoubleValue::InternalSwap(DoubleValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata DoubleValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[0]); } // =================================================================== @@ -729,7 +741,7 @@ void FloatValue::InternalSwap(FloatValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata FloatValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[1]); } // =================================================================== @@ -903,7 +915,7 @@ void Int64Value::InternalSwap(Int64Value* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Int64Value::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[2]); } // =================================================================== @@ -1077,7 +1089,7 @@ void UInt64Value::InternalSwap(UInt64Value* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata UInt64Value::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[3]); } // =================================================================== @@ -1251,7 +1263,7 @@ void Int32Value::InternalSwap(Int32Value* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Int32Value::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[4]); } // =================================================================== @@ -1425,7 +1437,7 @@ void UInt32Value::InternalSwap(UInt32Value* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata UInt32Value::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[5]); } // =================================================================== @@ -1598,7 +1610,7 @@ void BoolValue::InternalSwap(BoolValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata BoolValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[6]); } // =================================================================== @@ -1792,7 +1804,7 @@ void StringValue::InternalSwap(StringValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata StringValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[7]); } // =================================================================== @@ -1981,7 +1993,7 @@ void BytesValue::InternalSwap(BytesValue* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata BytesValue::GetMetadata() const { return ::_pbi::AssignDescriptors( - &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto.once, + &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_getter, &descriptor_table_google_2fprotobuf_2fwrappers_2eproto_once, file_level_metadata_google_2fprotobuf_2fwrappers_2eproto[8]); } // @@protoc_insertion_point(namespace_scope)