File tree Expand file tree Collapse file tree 1 file changed +16
-1
lines changed
objdiff-core/src/arch/ppc Expand file tree Collapse file tree 1 file changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -358,7 +358,22 @@ impl Arch for ArchPpc {
358
358
}
359
359
360
360
fn extra_symbol_flags ( & self , symbol : & object:: Symbol ) -> SymbolFlagSet {
361
- if self . extab . as_ref ( ) . is_some_and ( |extab| extab. contains_key ( & ( symbol. index ( ) . 0 - 1 ) ) ) {
361
+ // X360 COFFs should automatically hide all symbols starting with "except_data",
362
+ // because those are not functions - they're pointers to exception data structs
363
+ if self . extensions . eq ( & powerpc:: Extensions :: xenon ( ) ) {
364
+ match symbol. name ( ) {
365
+ Ok ( name) => {
366
+ if name. starts_with ( "except_data_" ) {
367
+ SymbolFlag :: Hidden . into ( )
368
+ }
369
+ else {
370
+ SymbolFlag :: none ( )
371
+ }
372
+ }
373
+ Err ( _) => { SymbolFlag :: none ( ) }
374
+ }
375
+ }
376
+ else if self . extab . as_ref ( ) . is_some_and ( |extab| extab. contains_key ( & ( symbol. index ( ) . 0 - 1 ) ) ) {
362
377
SymbolFlag :: HasExtra . into ( )
363
378
} else {
364
379
SymbolFlag :: none ( )
You can’t perform that action at this time.
0 commit comments