@@ -3057,32 +3057,29 @@ void ObjectFileMachO::ParseSymtab(Symtab &symtab) {
30573057 is_gsym = true ;
30583058 sym[sym_idx].SetExternal (true );
30593059
3060- if (symbol_name && symbol_name[0 ] == ' _' &&
3061- symbol_name[1 ] == ' O' ) {
3062- llvm::StringRef symbol_name_ref (symbol_name);
3063- if (symbol_name_ref.starts_with (
3064- g_objc_v2_prefix_class)) {
3065- symbol_name_non_abi_mangled = symbol_name + 1 ;
3066- symbol_name =
3067- symbol_name + g_objc_v2_prefix_class.size ();
3068- type = eSymbolTypeObjCClass;
3069- demangled_is_synthesized = true ;
3070-
3071- } else if (symbol_name_ref.starts_with (
3072- g_objc_v2_prefix_metaclass)) {
3073- symbol_name_non_abi_mangled = symbol_name + 1 ;
3074- symbol_name =
3075- symbol_name + g_objc_v2_prefix_metaclass.size ();
3076- type = eSymbolTypeObjCMetaClass;
3077- demangled_is_synthesized = true ;
3078- } else if (symbol_name_ref.starts_with (
3079- g_objc_v2_prefix_ivar)) {
3080- symbol_name_non_abi_mangled = symbol_name + 1 ;
3081- symbol_name =
3082- symbol_name + g_objc_v2_prefix_ivar.size ();
3083- type = eSymbolTypeObjCIVar;
3084- demangled_is_synthesized = true ;
3085- }
3060+ llvm::StringRef symbol_name_ref (symbol_name);
3061+ if (symbol_name_ref.starts_with (
3062+ g_objc_v2_prefix_class)) {
3063+ symbol_name_non_abi_mangled = symbol_name + 1 ;
3064+ symbol_name =
3065+ symbol_name + g_objc_v2_prefix_class.size ();
3066+ type = eSymbolTypeObjCClass;
3067+ demangled_is_synthesized = true ;
3068+
3069+ } else if (symbol_name_ref.starts_with (
3070+ g_objc_v2_prefix_metaclass)) {
3071+ symbol_name_non_abi_mangled = symbol_name + 1 ;
3072+ symbol_name =
3073+ symbol_name + g_objc_v2_prefix_metaclass.size ();
3074+ type = eSymbolTypeObjCMetaClass;
3075+ demangled_is_synthesized = true ;
3076+ } else if (symbol_name_ref.starts_with (
3077+ g_objc_v2_prefix_ivar)) {
3078+ symbol_name_non_abi_mangled = symbol_name + 1 ;
3079+ symbol_name =
3080+ symbol_name + g_objc_v2_prefix_ivar.size ();
3081+ type = eSymbolTypeObjCIVar;
3082+ demangled_is_synthesized = true ;
30863083 } else {
30873084 if (nlist.n_value != 0 )
30883085 symbol_section = section_info.GetSection (
@@ -3970,7 +3967,7 @@ void ObjectFileMachO::ParseSymtab(Symtab &symtab) {
39703967
39713968 if (is_debug) {
39723969 switch (nlist.n_type ) {
3973- case N_GSYM:
3970+ case N_GSYM: {
39743971 // global symbol: name,,NO_SECT,type,0
39753972 // Sometimes the N_GSYM value contains the address.
39763973
@@ -3986,33 +3983,30 @@ void ObjectFileMachO::ParseSymtab(Symtab &symtab) {
39863983 is_gsym = true ;
39873984 sym[sym_idx].SetExternal (true );
39883985
3989- if (symbol_name && symbol_name[0 ] == ' _' && symbol_name[1 ] == ' O' ) {
3990- llvm::StringRef symbol_name_ref (symbol_name);
3991- if (symbol_name_ref.starts_with (g_objc_v2_prefix_class)) {
3992- symbol_name_non_abi_mangled = symbol_name + 1 ;
3993- symbol_name = symbol_name + g_objc_v2_prefix_class.size ();
3994- type = eSymbolTypeObjCClass;
3995- demangled_is_synthesized = true ;
3996-
3997- } else if (symbol_name_ref.starts_with (
3998- g_objc_v2_prefix_metaclass)) {
3999- symbol_name_non_abi_mangled = symbol_name + 1 ;
4000- symbol_name = symbol_name + g_objc_v2_prefix_metaclass.size ();
4001- type = eSymbolTypeObjCMetaClass;
4002- demangled_is_synthesized = true ;
4003- } else if (symbol_name_ref.starts_with (g_objc_v2_prefix_ivar)) {
4004- symbol_name_non_abi_mangled = symbol_name + 1 ;
4005- symbol_name = symbol_name + g_objc_v2_prefix_ivar.size ();
4006- type = eSymbolTypeObjCIVar;
4007- demangled_is_synthesized = true ;
4008- }
3986+ llvm::StringRef symbol_name_ref (symbol_name);
3987+ if (symbol_name_ref.starts_with (g_objc_v2_prefix_class)) {
3988+ symbol_name_non_abi_mangled = symbol_name + 1 ;
3989+ symbol_name = symbol_name + g_objc_v2_prefix_class.size ();
3990+ type = eSymbolTypeObjCClass;
3991+ demangled_is_synthesized = true ;
3992+
3993+ } else if (symbol_name_ref.starts_with (g_objc_v2_prefix_metaclass)) {
3994+ symbol_name_non_abi_mangled = symbol_name + 1 ;
3995+ symbol_name = symbol_name + g_objc_v2_prefix_metaclass.size ();
3996+ type = eSymbolTypeObjCMetaClass;
3997+ demangled_is_synthesized = true ;
3998+ } else if (symbol_name_ref.starts_with (g_objc_v2_prefix_ivar)) {
3999+ symbol_name_non_abi_mangled = symbol_name + 1 ;
4000+ symbol_name = symbol_name + g_objc_v2_prefix_ivar.size ();
4001+ type = eSymbolTypeObjCIVar;
4002+ demangled_is_synthesized = true ;
40094003 } else {
40104004 if (nlist.n_value != 0 )
40114005 symbol_section =
40124006 section_info.GetSection (nlist.n_sect , nlist.n_value );
40134007 type = eSymbolTypeData;
40144008 }
4015- break ;
4009+ } break ;
40164010
40174011 case N_FNAME:
40184012 // procedure name (f77 kludge): name,,NO_SECT,0,0
0 commit comments