unchanged: --- protobuf-cleaned/src/google/protobuf/compiler/cpp/cpp_file.cc 2015-12-30 13:21:46.000000000 -0800 +++ protobuf-patched/src/google/protobuf/compiler/cpp/cpp_file.cc 2016-03-31 13:25:40.252007316 -0700 @@ -337,7 +337,7 @@ "namespace {\n" "\n" "static void MergeFromFail(int line) GOOGLE_ATTRIBUTE_COLD;\n" - "static void MergeFromFail(int line) {\n" + "GOOGLE_ATTRIBUTE_NOINLINE static void MergeFromFail(int line) {\n" " GOOGLE_CHECK(false) << __FILE__ << \":\" << line;\n" "}\n" "\n" only in patch2: unchanged: --- protobuf-cleaned/src/google/protobuf/compiler/cpp/cpp_message.cc 2015-12-30 13:21:46.000000000 -0800 +++ protobuf-patched/src/google/protobuf/compiler/cpp/cpp_message.cc 2016-03-31 13:25:40.888006485 -0700 @@ -1035,7 +1035,7 @@ } printer->Print(vars, - "void Swap($classname$* other);\n" + "GOOGLE_ATTRIBUTE_NOINLINE void Swap($classname$* other);\n" "\n" "// implements Message ----------------------------------------------\n" "\n" @@ -2586,7 +2586,7 @@ // ownership situation: swapping across arenas or between an arena and a // heap requires copying. printer->Print( - "void $classname$::Swap($classname$* other) {\n" + "GOOGLE_ATTRIBUTE_NOINLINE void $classname$::Swap($classname$* other) {\n" " if (other == this) return;\n" " if (GetArenaNoVirtual() == other->GetArenaNoVirtual()) {\n" " InternalSwap(other);\n"