protobuf/objectivec/Tests
Thomas Van Lenten 79a23c435c Shrink ObjC overhead (generated size and some runtime sizes)
NOTE: This is a binary breaking change as structure sizes have changed size
and/or order.

- Drop capturing field options, no other options were captured and other mobile
  targeted languages don't try to capture this sort information (saved 8
  bytes for every field defined (in static data and again in field descriptor
  instance size data).
- No longer generate/compile in the messages/enums in descriptor.proto. If
  developers need it, they should generate it and compile it in. Reduced the
  overhead of the core library.
- Compute the number of has_bits actually needs to avoid over reserving.
- Let the boolean single fields store via a has_bit to avoid storage, makes
  the common cases of the instance size smaller.
- Reorder some flags and down size the enums to contain the bits needed.
- Reorder the items in the structures to manually ensure they are are packed
  better (especially when generating 64bit code - 8 bytes for every field,
  16 bytes for every extension, instance sizes 8 bytes also).
- Split off the structure initialization so when the default is zero, the
  generated static storage doesn't need to reserve the space. This is batched
  at the message level, so all the fields for the message have to have zero
  defaults to get the saves. By definition all proto3 syntax  files fall into
  this case but it also saves space for the proto2 that use the standard
  defaults. (saves 8 bytes of static data for every field that had a zero
  default)
- Don't track the enums defined by a message. Nothing in the runtime needs it
  and it was just generation and runtime overhead. (saves 8 bytes per enum)
- Ensure EnumDescriptors are started up threadsafe in all cases.
- Split some of the Descriptor initialization into multiple methods so the
  generated code isn't padded with lots of zero/nil args.
- Change how oneof info is feed to the runtime enabling us to generate less
  static data (8 bytes saved per oneof for 64bit).
- Change how enum value informat is capture to pack the data and only decode
  it if it ends up being needed. Avoids padding issues causing bloat of 64bit,
  and removes the needs for extra pointers in addition to the data (just the
  data and one pointer now).
2016-03-17 10:04:21 -04:00
..
iOSTestHarness Update the min toolchain for iOS/OS X to be Xcode 7 2015-12-10 16:40:10 -05:00
golden_message Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
golden_packed_fields_message Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
GPBARCUnittestProtos.m Shrink ObjC overhead (generated size and some runtime sizes) 2016-03-17 10:04:21 -04:00
GPBArrayTests.m Objective C Second Alpha Drop 2015-05-22 14:27:31 -04:00
GPBCodedInputStreamTests.m Drop all use of OSSpinLock 2015-12-17 16:05:50 -05:00
GPBCodedOuputStreamTests.m HeaderDoc support in the library and generated sources 2016-03-07 12:07:03 -05:00
GPBConcurrencyTests.m Beta quality drop of Objective C Support. 2015-06-08 17:17:22 -04:00
GPBDescriptorTests.m Shrink ObjC overhead (generated size and some runtime sizes) 2016-03-17 10:04:21 -04:00
GPBDictionaryTests.pddm Support ObjC Generic Collections 2016-02-18 13:55:59 -05:00
GPBDictionaryTests+Bool.m Support ObjC Generic Collections 2016-02-18 13:55:59 -05:00
GPBDictionaryTests+Int32.m Support ObjC Generic Collections 2016-02-18 13:55:59 -05:00
GPBDictionaryTests+Int64.m Support ObjC Generic Collections 2016-02-18 13:55:59 -05:00
GPBDictionaryTests+String.m Cleanups for newer Xcodes 2015-09-29 17:18:09 -04:00
GPBDictionaryTests+UInt32.m Support ObjC Generic Collections 2016-02-18 13:55:59 -05:00
GPBDictionaryTests+UInt64.m Support ObjC Generic Collections 2016-02-18 13:55:59 -05:00
GPBMessageTests.m Fix up handing of fields with leading names that should be all caps. 2016-03-08 09:29:49 -05:00
GPBMessageTests+Merge.m Have the tests rely on the autocreator behaviors. 2016-01-05 14:25:17 -05:00
GPBMessageTests+Runtime.m Have the tests rely on the autocreator behaviors. 2016-01-05 14:25:17 -05:00
GPBMessageTests+Serialization.m Enable CLANG_WARN_NULLABLE_TO_NONNULL_CONVERSION for the projects. 2015-12-07 10:49:30 -05:00
GPBObjectiveCPlusPlusTest.mm Support enum forward decls in Objective C++ 2015-10-01 09:03:30 -04:00
GPBPerfTests.m Objective C Second Alpha Drop 2015-05-22 14:27:31 -04:00
GPBSwiftTests.swift Update the min toolchain for iOS/OS X to be Xcode 7 2015-12-10 16:40:10 -05:00
GPBTestUtilities.h Beta quality drop of Objective C Support. 2015-06-08 17:17:22 -04:00
GPBTestUtilities.m Cleanups for newer Xcodes 2015-09-29 17:18:09 -04:00
GPBUnittestProtos.m Shrink ObjC overhead (generated size and some runtime sizes) 2016-03-17 10:04:21 -04:00
GPBUnknownFieldSetTest.m Beta quality drop of Objective C Support. 2015-06-08 17:17:22 -04:00
GPBUtilitiesTests.m Beta quality drop of Objective C Support. 2015-06-08 17:17:22 -04:00
GPBWellKnownTypesTest.m Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
GPBWireFormatTests.m Have the tests rely on the autocreator behaviors. 2016-01-05 14:25:17 -05:00
text_format_map_unittest_data.txt Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
text_format_unittest_data.txt Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
unittest_cycle.proto Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
unittest_objc_startup.proto Beta quality drop of Objective C Support. 2015-06-08 17:17:22 -04:00
unittest_objc.proto Fix up handing of fields with leading names that should be all caps. 2016-03-08 09:29:49 -05:00
unittest_runtime_proto2.proto ObjC fixup for the branch. 2015-05-26 14:01:54 -04:00
unittest_runtime_proto3.proto ObjC fixup for the branch. 2015-05-26 14:01:54 -04:00
UnitTests-Bridging-Header.h Alpha 1 drop of Google's Objective C plugin and runtime support for protobufs. 2015-05-06 13:19:14 -04:00
UnitTests-Info.plist Update the min toolchain for iOS/OS X to be Xcode 7 2015-12-10 16:40:10 -05:00