diff --git a/CHANGELOG.md b/CHANGELOG.md index ef729484c..1d21c14dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## Unreleased + +### Bug Fixes + +- fix(stackwalking): Use debug info to inform scanning by @loewenheim in [#1905](https://github.com/getsentry/symbolicator/pull/1905) + ## 26.3.1 ### New Features ✨ diff --git a/crates/symbolicator-native/src/symbolication/process_minidump.rs b/crates/symbolicator-native/src/symbolication/process_minidump.rs index 9a7e0f031..c073428ca 100644 --- a/crates/symbolicator-native/src/symbolication/process_minidump.rs +++ b/crates/symbolicator-native/src/symbolication/process_minidump.rs @@ -24,6 +24,8 @@ use symbolicator_sources::{ObjectId, ObjectType, SourceConfig}; use tokio::sync::Notify; use crate::caches::cficaches::{CfiCacheActor, CfiModuleInfo, FetchCfiCache, FetchedCfiCache}; +use crate::caches::derived::DerivedCache; +use crate::caches::symcaches::{FetchSymCache, OwnedSymCache, SymCacheActor}; use crate::interface::{ CompleteObjectInfo, CompletedSymbolicationResponse, ProcessMinidump, RawFrame, RawStacktrace, Registers, RewriteRules, SymbolicateStacktraces, SystemInfo, @@ -156,6 +158,13 @@ struct SymbolicatorSymbolProvider { object_type: ObjectType, /// The actor used for fetching CFI. cficache_actor: CfiCacheActor, + /// The actor used for fetching symcaches. + /// + /// Note that debug information is currently _not_ used to symbolicate frames + /// during stackwalking (which `rust-minidump` supports in principle). Rather, + /// we use it as a sanity check for `rust-minidump`'s stackwalker. See the + /// implementation of `fill_symbol` for details. + symcache_actor: SymCacheActor, /// The debug ID of the first module in the minidump /// (by address). /// @@ -177,6 +186,7 @@ impl SymbolicatorSymbolProvider { scope: Scope, sources: Arc<[SourceConfig]>, cficache_actor: CfiCacheActor, + symcache_actor: SymCacheActor, object_type: ObjectType, first_module_debug_id: Option, rewrite_first_module: RewriteRules, @@ -185,6 +195,7 @@ impl SymbolicatorSymbolProvider { scope, sources, cficache_actor, + symcache_actor, object_type, first_module_debug_id, rewrite_first_module, @@ -192,6 +203,29 @@ impl SymbolicatorSymbolProvider { } } + fn object_id_from_module(&self, module: &dyn Module) -> ObjectId { + let code_file = non_empty_file_name(&module.code_file()); + let mut debug_file = module.debug_file().as_deref().and_then(non_empty_file_name); + + // Rewrite the first module's debug file according to the configured rewrite rules. + if module.debug_identifier() == self.first_module_debug_id + && let Some(new_debug_file) = debug_file + .as_ref() + .and_then(|debug_file| self.rewrite_first_module.rewrite(debug_file)) + { + debug_file = Some(new_debug_file); + } + + ObjectId { + code_id: module.code_identifier(), + code_file, + debug_id: module.debug_identifier(), + debug_file, + debug_checksum: None, + object_type: self.object_type, + } + } + /// Fetches CFI for the given module, parses it into a `SymbolFile`, and stores it internally. async fn load_cfi_module(&self, module: &(dyn Module + Sync)) -> Arc { let key = LookupKey::new(module); @@ -220,27 +254,7 @@ impl SymbolicatorSymbolProvider { let sources = self.sources.clone(); let scope = self.scope.clone(); - - let code_file = non_empty_file_name(&module.code_file()); - let mut debug_file = module.debug_file().as_deref().and_then(non_empty_file_name); - - // Rewrite the first module's debug file according to the configured rewrite rules. - if module.debug_identifier() == self.first_module_debug_id - && let Some(new_debug_file) = debug_file - .as_ref() - .and_then(|debug_file| self.rewrite_first_module.rewrite(debug_file)) - { - debug_file = Some(new_debug_file); - } - - let identifier = ObjectId { - code_id: module.code_identifier(), - code_file, - debug_id: module.debug_identifier(), - debug_file, - debug_checksum: None, - object_type: self.object_type, - }; + let identifier = self.object_id_from_module(module); let cficache = self .cficache_actor @@ -266,16 +280,47 @@ impl SymbolicatorSymbolProvider { } cficache } -} -#[async_trait] -impl SymbolProvider for SymbolicatorSymbolProvider { - async fn fill_symbol( + /// Fetches debug info for the given module and parses it into a `SymCache`. + async fn load_symcache(&self, module: &(dyn Module + Sync)) -> DerivedCache { + let sources = self.sources.clone(); + let scope = self.scope.clone(); + let identifier = self.object_id_from_module(module); + + self.symcache_actor + .fetch(FetchSymCache { + object_type: self.object_type, + identifier, + sources, + scope, + }) + // NOTE: this `bind_hub` is important! + // `load_symcache` is being called concurrently from `rust-minidump` via + // `join_all`. We do need proper isolation of any async task that might + // manipulate any Sentry scope. + .bind_hub(Hub::new_from_top(Hub::current())) + .await + } + + /// Try to validate the given frame's instruction address against the CFI for the module + /// (if we have it). + /// + /// Returns `false` if we have CFI for the module, but that CFI doesn't cover the frame's + /// instruction address. Returns `true` in any other case. + /// + /// This helps the `rust-minidump`'s stack-walker to make better decisions. + /// If the successfully loaded CFI unwind info can not find the potential instruction + /// the passed instruction is most likely not a valid instruction from this module. + /// But since the instruction maps into the range of this module, we know it cannot + /// be part of a different module either -> it's not a valid instruction. + /// + /// See: + async fn check_frame_by_cfi( &self, module: &(dyn Module + Sync), frame: &mut (dyn FrameSymbolizer + Send), - ) -> Result<(), FillSymbolError> { - // This function is being called for every context frame, + ) -> bool { + // This function is being called (through `fill_symbol`) for every context frame, // regardless if any stack walking happens. // In contrast, `walk_frame` below will be skipped in case the minidump // does not contain any actionable stack memory that would allow stack walking. @@ -283,20 +328,6 @@ impl SymbolProvider for SymbolicatorSymbolProvider { // debug_id/file. let cfi_module = self.load_cfi_module(module).await; - // Try to validate the given instruction against the CFI module contents. - // - // This helps the `rust-minidump`'s stack-walker to make better decisions. - // Returning an error here will aggressively create frames. - // To indicate a that a potential instruction is not valid, we can return success - // here but also not fill in the symbol name. - // - // If the successfully loaded CFI unwind info can not find the potential instruction - // the passed instruction is most likely not a valid instruction from this module. - // But since the instruction maps into the range of this module, we know it cannot - // be part of a different module either -> it's not a valid instruction. - // Returning success in this case, means the frame will be skipped. - // - // See: https://github.com/rust-minidump/rust-minidump/blob/32e01a0e54d987025aa64486ebc4154f7f6b16d2/minidump-unwind/src/lib.rs#L865-L877 if let Ok(Some(cached)) = &cfi_module.cache { let cfi = &cached.0.cfi_stack_info; let instruction = frame.get_instruction() - module.base_address(); @@ -304,13 +335,66 @@ impl SymbolProvider for SymbolicatorSymbolProvider { if !cfi.is_empty() && cfi.get(instruction).is_none() { // We definitely do have CFI information loaded, but the given instruction does not // map to any stack frame info. - return Ok(()); + return false; } } - // In any other case, always return an error here to signal that we have no useful symbol information to - // contribute. Doing nothing would stop the stack scanning prematurely. - Err(FillSymbolError {}) + true + } + + /// Try to validate the given frame's instruction address against the debug information + /// for the module (if we have it). + /// + /// Returns `false` if we have debug info for the module, but that debug info doesn't cover the frame's + /// instruction address. Returns `true` in any other case. + /// + /// This helps the `rust-minidump`'s stack-walker to make better decisions. + /// If the successfully loaded symcache can not find the potential instruction + /// the passed instruction is most likely not a valid instruction from this module. + /// But since the instruction maps into the range of this module, we know it cannot + /// be part of a different module either -> it's not a valid instruction. + /// + /// See: + async fn check_frame_by_symbol_info( + &self, + module: &(dyn Module + Sync), + frame: &mut (dyn FrameSymbolizer + Send), + ) -> bool { + let symcache = self.load_symcache(module).await; + + if let Ok(cached) = &symcache.cache { + let instruction = frame.get_instruction() - module.base_address(); + + if cached.get().lookup(instruction).next().is_none() { + // We definitely do have symbol information loaded, but the given instruction does not + // map to any symbol info. + return false; + } + } + + true + } +} + +#[async_trait] +impl SymbolProvider for SymbolicatorSymbolProvider { + async fn fill_symbol( + &self, + module: &(dyn Module + Sync), + frame: &mut (dyn FrameSymbolizer + Send), + ) -> Result<(), FillSymbolError> { + if self.check_frame_by_cfi(module, frame).await + || self.check_frame_by_symbol_info(module, frame).await + { + // If either CFI or symbol info does not reject the frame, return an error here to signal that + // we have no useful symbol information to contribute. Doing nothing would stop the stack scanning prematurely. + Err(FillSymbolError {}) + } else { + // To indicate a that a potential instruction is not valid, we can return success + // here but also not fill in the symbol name. This will cause `rust-minidump`'s stack + // scanner to disregard the frame. + Ok(()) + } } async fn walk_frame( @@ -359,6 +443,7 @@ fn object_info_from_minidump_module(ty: ObjectType, module: &MinidumpModule) -> async fn stackwalk( cficaches: CfiCacheActor, + symcaches: SymCacheActor, minidump: &Minidump, scope: Scope, sources: Arc<[SourceConfig]>, @@ -387,6 +472,7 @@ async fn stackwalk( scope, sources, cficaches, + symcaches, ty, first_module_debug_id, rewrite_first_module, @@ -540,6 +626,7 @@ impl SymbolicationActor { duration, } = stackwalk( self.cficaches.clone(), + self.symcaches.clone(), &minidump, scope.clone(), sources.clone(), diff --git a/crates/symbolicator-native/src/symbolication/symbolicate.rs b/crates/symbolicator-native/src/symbolication/symbolicate.rs index 7b3b35a2f..49711cd60 100644 --- a/crates/symbolicator-native/src/symbolication/symbolicate.rs +++ b/crates/symbolicator-native/src/symbolication/symbolicate.rs @@ -32,7 +32,7 @@ use super::native::{get_relative_caller_addr, symbolicate_native_frame}; pub struct SymbolicationActor { demangle_cache: DemangleCache, pub(crate) objects: ObjectsActor, - symcaches: SymCacheActor, + pub(crate) symcaches: SymCacheActor, pub(crate) cficaches: CfiCacheActor, ppdb_caches: PortablePdbCacheActor, pub(crate) sourcefiles_cache: Arc, diff --git a/crates/symbolicator-native/tests/integration/process_minidump.rs b/crates/symbolicator-native/tests/integration/process_minidump.rs index 890602ee0..19a3b29d0 100644 --- a/crates/symbolicator-native/tests/integration/process_minidump.rs +++ b/crates/symbolicator-native/tests/integration/process_minidump.rs @@ -48,6 +48,39 @@ async fn test_minidump_macos() { assert_snapshot!(res); } +/// Verifies that debug information is used to guide stack scanning. +/// +/// The minidump being tested has frame pointers disabled, so in the absence of (usable) CFI, +/// there is no choice but to scan. Left to its own devices, the stack scanner can produce a lot +/// of spurious frames, so we want to use both CFI and debug info that we have available to guide +/// it. The heuristic is as follows: if stack scanning would produce an instruction address +/// * falling into some module, +/// * for which we have CFI or debug info, +/// * which doesn't cover that instruction address, +/// then that address is probably bogus and we discard the frame. +/// +/// The CFI half of this heuristic was implemented in +/// https://github.com/getsentry/symbolicator/pull/1651. +/// https://github.com/getsentry/symbolicator/pull/1913 added the debug info part. +/// +/// This test simulates an actual customer situation: we have both debug info and CFI +/// for the minidump, but the CFI is truncated/poor. If we only used CFI to constrain the +/// stack scanner, all frames in `sentry_example` would be rejected. However, since we also use +/// the (good) debug info to check the frames, they are retained. +/// +/// The `dyld` frames in the stacktrace are found by scanning, and since we have no CFI or +/// debug info at all for that module, they're all accepted. +#[tokio::test] +async fn test_minidump_macos_broken_cfi() { + let res = stackwalk_minidump("macos-no-fp.dmp").await; + let crashed_thread = res + .stacktraces + .iter() + .find(|st| st.is_requesting.unwrap_or_default()) + .unwrap(); + assert_snapshot!(crashed_thread); +} + #[tokio::test] async fn test_minidump_linux() { let res = stackwalk_minidump("linux.dmp").await; diff --git a/crates/symbolicator-native/tests/integration/snapshots/integration__process_minidump__minidump_macos_broken_cfi.snap b/crates/symbolicator-native/tests/integration/snapshots/integration__process_minidump__minidump_macos_broken_cfi.snap new file mode 100644 index 000000000..e6f60b881 --- /dev/null +++ b/crates/symbolicator-native/tests/integration/snapshots/integration__process_minidump__minidump_macos_broken_cfi.snap @@ -0,0 +1,105 @@ +--- +source: crates/symbolicator-native/tests/integration/process_minidump.rs +expression: crashed_thread +--- +thread_id: 6130742 +is_requesting: true +registers: + fp: "0x16f74b1e0" + lr: "0x1006b7628" + pc: "0x18bb0105c" + sp: "0x16f74a510" + x0: "0x1" + x1: "0x101010101010101" + x10: "0x2" + x11: "0x10000000000" + x12: "0xfffffffd" + x13: "0x0" + x14: "0x0" + x15: "0x0" + x16: "0x18bb00ff0" + x17: "0x1faaf8e30" + x18: "0x0" + x19: "0x1f97e40b0" + x2: "0x64" + x20: "0x1f97e4018" + x21: "0x16f74ac28" + x22: "0xfffffff0009d6fb" + x23: "0x1f97e4018" + x24: "0x1f97e4150" + x25: "0x16f74ad90" + x26: "0x0" + x27: "0x0" + x28: "0x0" + x3: "0x1" + x4: "0x0" + x5: "0x0" + x6: "0x600003494120" + x7: "0x950" + x8: "0x1006c0000" + x9: "0x1" +frames: + - status: missing + original_index: 0 + instruction_addr: "0x18bb0105c" + package: /usr/lib/system/libsystem_platform.dylib + trust: context + - status: symbolicated + original_index: 1 + instruction_addr: "0x1006b6480" + package: build/sentry_example + symbol: main + sym_addr: "0x1006b4ea0" + function: main + filename: example.c + abs_path: /Users/sentry/code/sentry-native/examples/example.c + lineno: 975 + trust: scan + - status: missing + original_index: 2 + instruction_addr: "0x18b727f28" + package: /usr/lib/dyld + trust: scan + - status: symbolicated + original_index: 3 + instruction_addr: "0x1006b401c" + package: build/sentry_example + symbol: _mh_execute_header + sym_addr: "0x1006b4000" + function: _mh_execute_header + lineno: 0 + trust: scan + - status: symbolicated + original_index: 4 + instruction_addr: "0x1006b458c" + package: build/sentry_example + symbol: _mh_execute_header + sym_addr: "0x1006b4000" + function: _mh_execute_header + lineno: 0 + trust: scan + - status: missing + original_index: 5 + instruction_addr: "0x18b728994" + package: /usr/lib/dyld + trust: scan + - status: missing + original_index: 6 + instruction_addr: "0x18b728978" + package: /usr/lib/dyld + trust: scan + - status: missing + original_index: 7 + instruction_addr: "0x18b72898c" + package: /usr/lib/dyld + trust: scan + - status: missing + original_index: 8 + instruction_addr: "0x18b7a0184" + package: /usr/lib/dyld + trust: scan + - status: missing + original_index: 9 + instruction_addr: "0x18b72943c" + package: /usr/lib/dyld + trust: scan diff --git a/tests/fixtures/macos-no-fp.dmp b/tests/fixtures/macos-no-fp.dmp new file mode 100644 index 000000000..5d3873e52 Binary files /dev/null and b/tests/fixtures/macos-no-fp.dmp differ diff --git a/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/notes.md b/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/notes.md new file mode 100644 index 000000000..b0b13a278 --- /dev/null +++ b/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/notes.md @@ -0,0 +1,3 @@ +`sentry_example.sym` is a breakpad file with present, but severely truncated CFI. +`sentry_example.sym.original` is the untruncated version. It was extracted from a +MacOS dSYM file using breakpad's `dump_syms`. diff --git a/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/sentry_example.sym b/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/sentry_example.sym new file mode 100644 index 000000000..fa1c8bd15 --- /dev/null +++ b/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/sentry_example.sym @@ -0,0 +1,1181 @@ +MODULE mac arm64 73781EDEBF5B34EC81B2749A0F1FA5FD0 sentry_example +FILE 0 /Users/sentry/code/sentry-native/examples/example.c +FUNC d98 24 0 get_current_thread_id +d98 8 46 0 +da0 c 48 0 +dac 4 49 0 +db0 c 49 0 +FUNC dbc 78 0 log_thread_func +dbc c 478 0 +dc8 4 480 0 +dcc 4 480 0 +dd0 4 480 0 +dd4 c 480 0 +de0 8 482 0 +de8 8 482 0 +df0 18 481 0 +e08 8 483 0 +e10 4 484 0 +e14 c 480 0 +e20 4 480 0 +e24 4 485 0 +e28 c 485 0 +FUNC e34 6c 0 metric_thread_func +e34 c 490 0 +e40 4 492 0 +e44 4 492 0 +e48 4 492 0 +e4c c 492 0 +e58 8 493 0 +e60 14 493 0 +e74 8 494 0 +e7c 4 495 0 +e80 c 492 0 +e8c 4 492 0 +e90 4 496 0 +e94 c 496 0 +FUNC ea0 1d9c 0 main +ea0 30 514 0 +ed0 4 515 0 +ed4 4 515 0 +ed8 4 517 0 +edc 4 517 0 +ee0 c 517 0 +eec 8 517 0 +ef4 4 518 0 +ef8 8 518 0 +f00 4 519 0 +f04 4 523 0 +f08 c 523 0 +f14 4 525 0 +f18 8 525 0 +f20 4 526 0 +f24 8 526 0 +f2c 4 528 0 +f30 c 528 0 +f3c 4 530 0 +f40 4 530 0 +f44 c 530 0 +f50 8 530 0 +f58 4 531 0 +f5c c 531 0 +f68 4 532 0 +f6c 4 534 0 +f70 4 534 0 +f74 c 534 0 +f80 8 534 0 +f88 4 535 0 +f8c 8 535 0 +f94 4 536 0 +f98 4 538 0 +f9c 4 538 0 +fa0 c 538 0 +fac 8 538 0 +fb4 4 541 0 +fb8 c 541 0 +fc4 4 542 0 +fc8 4 544 0 +fcc 4 544 0 +fd0 c 544 0 +fdc 8 544 0 +fe4 8 546 0 +fec 14 546 0 +1000 4 545 0 +1004 4 547 0 +1008 4 549 0 +100c 4 549 0 +1010 c 549 0 +101c 8 549 0 +1024 4 550 0 +1028 8 550 0 +1030 4 551 0 +1034 4 553 0 +1038 4 553 0 +103c c 553 0 +1048 8 553 0 +1050 4 554 0 +1054 8 554 0 +105c 4 555 0 +1060 4 557 0 +1064 4 557 0 +1068 c 557 0 +1074 8 557 0 +107c 4 558 0 +1080 10 558 0 +1090 4 559 0 +1094 4 561 0 +1098 4 561 0 +109c c 561 0 +10a8 8 561 0 +10b0 4 563 0 +10b4 10 562 0 +10c4 4 564 0 +10c8 4 566 0 +10cc 4 566 0 +10d0 c 566 0 +10dc 8 566 0 +10e4 4 567 0 +10e8 10 567 0 +10f8 4 568 0 +10fc 4 570 0 +1100 4 570 0 +1104 c 570 0 +1110 8 570 0 +1118 4 572 0 +111c 10 571 0 +112c 4 573 0 +1130 4 575 0 +1134 4 575 0 +1138 c 575 0 +1144 8 575 0 +114c 4 577 0 +1150 10 576 0 +1160 4 578 0 +1164 4 580 0 +1168 4 580 0 +116c c 580 0 +1178 8 580 0 +1180 4 582 0 +1184 10 581 0 +1194 4 583 0 +1198 4 585 0 +119c 4 585 0 +11a0 c 585 0 +11ac 8 585 0 +11b4 4 587 0 +11b8 10 586 0 +11c8 4 588 0 +11cc 4 590 0 +11d0 4 590 0 +11d4 c 590 0 +11e0 8 590 0 +11e8 4 592 0 +11ec 10 591 0 +11fc 4 593 0 +1200 4 595 0 +1204 4 595 0 +1208 c 595 0 +1214 8 595 0 +121c 4 597 0 +1220 10 596 0 +1230 4 598 0 +1234 4 600 0 +1238 4 600 0 +123c c 600 0 +1248 8 600 0 +1250 4 601 0 +1254 c 601 0 +1260 4 602 0 +1264 4 604 0 +1268 4 604 0 +126c c 604 0 +1278 8 604 0 +1280 8 0 0 +1288 30 606 0 +12b8 4 608 0 +12bc 4 608 0 +12c0 4 609 0 +12c4 4 610 0 +12c8 4 610 0 +12cc c 610 0 +12d8 8 610 0 +12e0 8 0 0 +12e8 34 612 0 +131c 4 614 0 +1320 4 614 0 +1324 4 615 0 +1328 4 616 0 +132c 4 616 0 +1330 c 616 0 +133c 8 616 0 +1344 8 0 0 +134c 30 618 0 +137c 4 620 0 +1380 4 620 0 +1384 4 621 0 +1388 4 622 0 +138c 4 622 0 +1390 c 622 0 +139c 8 622 0 +13a4 4 623 0 +13a8 c 623 0 +13b4 4 624 0 +13b8 4 625 0 +13bc 4 625 0 +13c0 c 625 0 +13cc 8 625 0 +13d4 8 0 0 +13dc 30 627 0 +140c 4 629 0 +1410 4 629 0 +1414 4 630 0 +1418 4 632 0 +141c 4 632 0 +1420 c 632 0 +142c 8 632 0 +1434 4 633 0 +1438 8 633 0 +1440 4 634 0 +1444 4 636 0 +1448 4 636 0 +144c c 636 0 +1458 8 636 0 +1460 4 639 0 +1464 c 639 0 +1470 4 640 0 +1474 4 642 0 +1478 4 642 0 +147c c 642 0 +1488 8 642 0 +1490 4 644 0 +1494 10 644 0 +14a4 4 645 0 +14a8 4 647 0 +14ac 4 647 0 +14b0 c 647 0 +14bc 8 647 0 +14c4 4 649 0 +14c8 8 649 0 +14d0 4 650 0 +14d4 4 652 0 +14d8 4 652 0 +14dc c 652 0 +14e8 8 652 0 +14f0 4 654 0 +14f4 8 654 0 +14fc 4 655 0 +1500 4 657 0 +1504 4 657 0 +1508 c 657 0 +1514 8 657 0 +151c 4 658 0 +1520 8 658 0 +1528 4 659 0 +152c 4 661 0 +1530 4 661 0 +1534 c 661 0 +1540 8 661 0 +1548 4 667 0 +154c c 666 0 +1558 4 669 0 +155c 4 670 0 +1560 4 670 0 +1564 c 670 0 +1570 8 670 0 +1578 4 671 0 +157c 8 671 0 +1584 4 672 0 +1588 4 673 0 +158c 4 673 0 +1590 c 673 0 +159c 8 673 0 +15a4 4 674 0 +15a8 8 674 0 +15b0 4 675 0 +15b4 8 675 0 +15bc 4 676 0 +15c0 c 676 0 +15cc 4 677 0 +15d0 8 677 0 +15d8 4 678 0 +15dc 4 680 0 +15e0 4 680 0 +15e4 c 680 0 +15f0 8 680 0 +15f8 4 681 0 +15fc 8 681 0 +1604 4 682 0 +1608 4 684 0 +160c 4 684 0 +1610 c 684 0 +161c 8 684 0 +1624 4 686 0 +1628 10 685 0 +1638 4 687 0 +163c 4 689 0 +1640 4 689 0 +1644 c 689 0 +1650 8 689 0 +1658 4 691 0 +165c 10 690 0 +166c 4 692 0 +1670 4 694 0 +1674 4 694 0 +1678 c 694 0 +1684 8 694 0 +168c 4 696 0 +1690 10 695 0 +16a0 4 697 0 +16a4 4 699 0 +16a8 4 699 0 +16ac c 699 0 +16b8 8 699 0 +16c0 4 701 0 +16c4 10 700 0 +16d4 4 702 0 +16d8 4 704 0 +16dc 4 704 0 +16e0 c 704 0 +16ec 8 704 0 +16f4 4 705 0 +16f8 4 705 0 +16fc c 705 0 +1708 4 705 0 +170c 4 706 0 +1710 8 706 0 +1718 4 707 0 +171c c 707 0 +1728 8 707 0 +1730 4 709 0 +1734 8 708 0 +173c 4 710 0 +1740 4 710 0 +1744 c 710 0 +1750 8 710 0 +1758 4 712 0 +175c 8 711 0 +1764 4 713 0 +1768 4 713 0 +176c c 713 0 +1778 8 713 0 +1780 4 715 0 +1784 8 714 0 +178c 4 716 0 +1790 8 0 0 +1798 4 717 0 +179c 4 718 0 +17a0 10 721 0 +17b0 4 722 0 +17b4 4 722 0 +17b8 c 722 0 +17c4 8 722 0 +17cc 18 723 0 +17e4 8 724 0 +17ec 4 725 0 +17f0 4 727 0 +17f4 4 727 0 +17f8 8 727 0 +1800 c 728 0 +180c 4 731 0 +1810 4 731 0 +1814 c 731 0 +1820 8 731 0 +1828 c 733 0 +1834 14 733 0 +1848 10 732 0 +1858 10 735 0 +1868 c 735 0 +1874 10 734 0 +1884 20 737 0 +18a4 c 737 0 +18b0 1c 736 0 +18cc c 740 0 +18d8 c 739 0 +18e4 10 738 0 +18f4 8 741 0 +18fc 10 742 0 +190c c 742 0 +1918 10 743 0 +1928 10 743 0 +1938 c 745 0 +1944 14 744 0 +1958 c 749 0 +1964 c 748 0 +1970 10 747 0 +1980 4 750 0 +1984 4 753 0 +1988 8 753 0 +1990 14 754 0 +19a4 18 755 0 +19bc 14 756 0 +19d0 c 757 0 +19dc 4 757 0 +19e0 4 758 0 +19e4 4 760 0 +19e8 4 760 0 +19ec c 760 0 +19f8 8 760 0 +1a00 8 761 0 +1a08 10 763 0 +1a18 14 762 0 +1a2c c 765 0 +1a38 14 764 0 +1a4c c 767 0 +1a58 14 766 0 +1a6c 14 768 0 +1a80 14 769 0 +1a94 14 770 0 +1aa8 20 772 0 +1ac8 8 776 0 +1ad0 24 775 0 +1af4 8 778 0 +1afc 14 780 0 +1b10 c 779 0 +1b1c 14 782 0 +1b30 c 781 0 +1b3c 14 783 0 +1b50 14 785 0 +1b64 18 787 0 +1b7c 4 789 0 +1b80 4 791 0 +1b84 4 791 0 +1b88 c 791 0 +1b94 8 791 0 +1b9c 18 793 0 +1bb4 4 792 0 +1bb8 4 794 0 +1bbc c 794 0 +1bc8 4 795 0 +1bcc 4 797 0 +1bd0 4 797 0 +1bd4 8 797 0 +1bdc 4 798 0 +1be0 4 798 0 +1be4 c 798 0 +1bf0 8 798 0 +1bf8 c 799 0 +1c04 4 800 0 +1c08 4 801 0 +1c0c 4 801 0 +1c10 c 801 0 +1c1c 8 801 0 +1c24 4 802 0 +1c28 4 802 0 +1c2c 4 802 0 +1c30 c 802 0 +1c3c 4 803 0 +1c40 14 803 0 +1c54 4 804 0 +1c58 c 802 0 +1c64 4 802 0 +1c68 8 806 0 +1c70 c 808 0 +1c7c 4 809 0 +1c80 4 810 0 +1c84 4 810 0 +1c88 c 810 0 +1c94 8 810 0 +1c9c c 811 0 +1ca8 4 812 0 +1cac 4 813 0 +1cb0 4 815 0 +1cb4 4 815 0 +1cb8 8 815 0 +1cc0 4 816 0 +1cc4 4 816 0 +1cc8 c 816 0 +1cd4 8 816 0 +1cdc 8 817 0 +1ce4 14 817 0 +1cf8 4 818 0 +1cfc 4 819 0 +1d00 4 819 0 +1d04 c 819 0 +1d10 8 819 0 +1d18 8 820 0 +1d20 14 820 0 +1d34 8 822 0 +1d3c 24 821 0 +1d60 8 824 0 +1d68 2c 823 0 +1d94 4 825 0 +1d98 4 826 0 +1d9c 4 826 0 +1da0 c 826 0 +1dac 8 826 0 +1db4 8 827 0 +1dbc 10 829 0 +1dcc 10 828 0 +1ddc 14 830 0 +1df0 14 831 0 +1e04 4 832 0 +1e08 4 833 0 +1e0c 4 833 0 +1e10 c 833 0 +1e1c 8 833 0 +1e24 4 834 0 +1e28 4 834 0 +1e2c 4 834 0 +1e30 c 834 0 +1e3c 8 836 0 +1e44 14 835 0 +1e58 4 837 0 +1e5c c 834 0 +1e68 4 834 0 +1e6c 8 838 0 +1e74 8 840 0 +1e7c 14 839 0 +1e90 4 841 0 +1e94 4 842 0 +1e98 4 842 0 +1e9c c 842 0 +1ea8 8 842 0 +1eb0 c 843 0 +1ebc 4 844 0 +1ec0 4 845 0 +1ec4 4 847 0 +1ec8 4 847 0 +1ecc c 847 0 +1ed8 8 847 0 +1ee0 c 848 0 +1eec 14 849 0 +1f00 8 850 0 +1f08 10 850 0 +1f18 10 853 0 +1f28 14 851 0 +1f3c 1c 854 0 +1f58 8 855 0 +1f60 4 856 0 +1f64 14 858 0 +1f78 8 860 0 +1f80 14 859 0 +1f94 10 862 0 +1fa4 18 861 0 +1fbc 8 863 0 +1fc4 24 866 0 +1fe8 c 867 0 +1ff4 10 870 0 +2004 8 871 0 +200c 10 873 0 +201c c 874 0 +2028 10 877 0 +2038 10 879 0 +2048 14 878 0 +205c 8 880 0 +2064 4 881 0 +2068 4 883 0 +206c 4 883 0 +2070 c 883 0 +207c 8 883 0 +2084 c 884 0 +2090 c 885 0 +209c 4 886 0 +20a0 4 886 0 +20a4 4 886 0 +20a8 4 887 0 +20ac 4 889 0 +20b0 4 889 0 +20b4 c 889 0 +20c0 8 889 0 +20c8 c 892 0 +20d4 18 894 0 +20ec 4 893 0 +20f0 4 895 0 +20f4 c 895 0 +2100 4 896 0 +2104 4 898 0 +2108 4 898 0 +210c c 898 0 +2118 8 898 0 +2120 c 899 0 +212c c 900 0 +2138 4 901 0 +213c 4 903 0 +2140 4 903 0 +2144 c 903 0 +2150 8 903 0 +2158 4 904 0 +215c 4 905 0 +2160 4 907 0 +2164 4 907 0 +2168 c 907 0 +2174 8 907 0 +217c 4 908 0 +2180 4 908 0 +2184 4 908 0 +2188 c 908 0 +2194 30 910 0 +21c4 c 911 0 +21d0 8 911 0 +21d8 4 912 0 +21dc c 908 0 +21e8 4 908 0 +21ec 4 913 0 +21f0 4 915 0 +21f4 4 915 0 +21f8 c 915 0 +2204 8 915 0 +220c 4 916 0 +2210 4 917 0 +2214 4 919 0 +2218 4 919 0 +221c c 919 0 +2228 8 919 0 +2230 4 920 0 +2234 4 920 0 +2238 24 922 0 +225c 10 926 0 +226c 4 927 0 +2270 8 927 0 +2278 10 929 0 +2288 4 930 0 +228c 8 930 0 +2294 4 932 0 +2298 4 932 0 +229c c 932 0 +22a8 8 932 0 +22b0 4 935 0 +22b4 c 935 0 +22c0 4 937 0 +22c4 18 936 0 +22dc 4 936 0 +22e0 4 939 0 +22e4 c 938 0 +22f0 4 940 0 +22f4 4 942 0 +22f8 14 942 0 +230c 4 943 0 +2310 4 945 0 +2314 4 945 0 +2318 c 945 0 +2324 8 945 0 +232c 4 946 0 +2330 4 946 0 +2334 4 946 0 +2338 c 946 0 +2344 38 948 0 +237c c 950 0 +2388 14 952 0 +239c 4 953 0 +23a0 c 946 0 +23ac 4 946 0 +23b0 4 954 0 +23b4 4 956 0 +23b8 4 956 0 +23bc c 956 0 +23c8 8 956 0 +23d0 4 957 0 +23d4 4 958 0 +23d8 4 960 0 +23dc 4 960 0 +23e0 c 960 0 +23ec 8 960 0 +23f4 8 961 0 +23fc 4 962 0 +2400 4 964 0 +2404 4 964 0 +2408 c 964 0 +2414 8 964 0 +241c 8 965 0 +2424 4 966 0 +2428 4 968 0 +242c 4 968 0 +2430 c 968 0 +243c 8 968 0 +2444 c 970 0 +2450 c 971 0 +245c 4 971 0 +2460 4 972 0 +2464 4 974 0 +2468 4 974 0 +246c c 974 0 +2478 8 974 0 +2480 4 975 0 +2484 4 976 0 +2488 4 977 0 +248c 4 977 0 +2490 c 977 0 +249c 8 977 0 +24a4 4 978 0 +24a8 4 979 0 +24ac 4 980 0 +24b0 4 980 0 +24b4 c 980 0 +24c0 8 980 0 +24c8 4 981 0 +24cc 4 982 0 +24d0 4 992 0 +24d4 4 992 0 +24d8 c 992 0 +24e4 8 992 0 +24ec 20 993 0 +250c 4 995 0 +2510 4 995 0 +2514 c 995 0 +2520 8 995 0 +2528 4 1000 0 +252c 4 1003 0 +2530 4 1003 0 +2534 c 1003 0 +2540 8 1003 0 +2548 8 1004 0 +2550 4 1005 0 +2554 4 1006 0 +2558 4 1006 0 +255c c 1006 0 +2568 8 1006 0 +2570 4 1007 0 +2574 8 1007 0 +257c 4 1008 0 +2580 4 1011 0 +2584 4 1011 0 +2588 c 1011 0 +2594 8 1011 0 +259c 1c 1012 0 +25b8 4 1014 0 +25bc 4 1014 0 +25c0 c 1014 0 +25cc 8 1014 0 +25d4 4 1016 0 +25d8 10 1016 0 +25e8 10 1017 0 +25f8 c 1018 0 +2604 4 1019 0 +2608 14 1020 0 +261c 4 1021 0 +2620 4 1022 0 +2624 4 1022 0 +2628 c 1022 0 +2634 8 1022 0 +263c 18 1023 0 +2654 4 1025 0 +2658 4 1025 0 +265c c 1025 0 +2668 8 1025 0 +2670 10 1026 0 +2680 4 1027 0 +2684 8 1028 0 +268c c 1029 0 +2698 14 1031 0 +26ac 4 1032 0 +26b0 4 1033 0 +26b4 4 1033 0 +26b8 c 1033 0 +26c4 8 1033 0 +26cc 24 1034 0 +26f0 8 1037 0 +26f8 4 1038 0 +26fc 4 1039 0 +2700 4 1039 0 +2704 c 1039 0 +2710 8 1039 0 +2718 24 1040 0 +273c 4 1044 0 +2740 4 1044 0 +2744 c 1047 0 +2750 4 1048 0 +2754 c 1048 0 +2760 4 1048 0 +2764 4 1049 0 +2768 8 1049 0 +2770 4 1050 0 +2774 c 1050 0 +2780 4 1051 0 +2784 4 1051 0 +2788 4 1052 0 +278c 4 1055 0 +2790 4 1055 0 +2794 4 1055 0 +2798 c 1058 0 +27a4 8 1060 0 +27ac 8 1060 0 +27b4 4 1060 0 +27b8 10 1060 0 +27c8 c 1059 0 +27d4 4 1063 0 +27d8 8 1063 0 +27e0 4 1066 0 +27e4 4 1066 0 +27e8 4 1067 0 +27ec 4 1068 0 +27f0 4 1068 0 +27f4 c 1068 0 +2800 8 1068 0 +2808 1c 1069 0 +2824 1c 1071 0 +2840 20 1074 0 +2860 8 1077 0 +2868 4 1079 0 +286c 4 1081 0 +2870 4 1081 0 +2874 c 1081 0 +2880 8 1081 0 +2888 14 1083 0 +289c 4 1082 0 +28a0 4 1086 0 +28a4 4 1086 0 +28a8 c 1086 0 +28b4 8 1086 0 +28bc 4 1087 0 +28c0 8 1087 0 +28c8 4 1088 0 +28cc 8 1090 0 +28d4 c 1092 0 +28e0 14 1091 0 +28f4 4 1094 0 +28f8 4 1094 0 +28fc c 1094 0 +2908 8 1094 0 +2910 c 1095 0 +291c 4 1098 0 +2920 4 1098 0 +2924 c 1097 0 +2930 4 1099 0 +2934 4 1102 0 +2938 8 1102 0 +2940 4 1101 0 +2944 8 1105 0 +294c 18 1105 0 +2964 10 1104 0 +2974 4 1107 0 +2978 4 1107 0 +297c c 1107 0 +2988 8 1107 0 +2990 4 1109 0 +2994 8 1108 0 +299c 4 1110 0 +29a0 4 1112 0 +29a4 4 1112 0 +29a8 c 1112 0 +29b4 8 1112 0 +29bc 4 1114 0 +29c0 18 1114 0 +29d8 4 1113 0 +29dc 4 1116 0 +29e0 c 1116 0 +29ec 4 1115 0 +29f0 8 1119 0 +29f8 18 1119 0 +2a10 10 1118 0 +2a20 4 1121 0 +2a24 4 1121 0 +2a28 c 1121 0 +2a34 8 1121 0 +2a3c 4 1122 0 +2a40 8 1122 0 +2a48 4 1124 0 +2a4c 8 1123 0 +2a54 4 1125 0 +2a58 4 1127 0 +2a5c 4 1127 0 +2a60 4 1128 0 +2a64 4 1128 0 +2a68 4 1129 0 +2a6c 4 1131 0 +2a70 4 1131 0 +2a74 c 1131 0 +2a80 8 1131 0 +2a88 4 1132 0 +2a8c 4 1132 0 +2a90 1c 1133 0 +2aac 14 1135 0 +2ac0 4 1136 0 +2ac4 4 1136 0 +2ac8 c 1136 0 +2ad4 8 1136 0 +2adc c 1137 0 +2ae8 4 1138 0 +2aec 4 1139 0 +2af0 4 1139 0 +2af4 c 1139 0 +2b00 8 1139 0 +2b08 8 1141 0 +2b10 14 1140 0 +2b24 4 1142 0 +2b28 4 1143 0 +2b2c 4 1145 0 +2b30 10 1145 0 +2b40 4 1146 0 +2b44 4 1146 0 +2b48 c 1146 0 +2b54 8 1146 0 +2b5c c 1147 0 +2b68 4 1148 0 +2b6c 4 1149 0 +2b70 4 1151 0 +2b74 4 1151 0 +2b78 c 1151 0 +2b84 8 1151 0 +2b8c 18 1152 0 +2ba4 4 1153 0 +2ba8 4 1156 0 +2bac 4 1158 0 +2bb0 4 1158 0 +2bb4 c 1158 0 +2bc0 8 1158 0 +2bc8 8 1159 0 +2bd0 4 1160 0 +2bd4 4 1162 0 +2bd8 4 1162 0 +2bdc c 1162 0 +2be8 8 1162 0 +2bf0 4 1163 0 +2bf4 4 1164 0 +2bf8 8 1166 0 +2c00 28 1167 0 +2c28 4 0 0 +2c2c 10 1167 0 +FUNC 2c3c a0 0 has_arg +2c3c 14 257 0 +2c50 8 258 0 +2c58 4 258 0 +2c5c 4 258 0 +2c60 4 258 0 +2c64 c 258 0 +2c70 4 259 0 +2c74 4 259 0 +2c78 4 259 0 +2c7c 4 259 0 +2c80 4 259 0 +2c84 8 259 0 +2c8c 4 0 0 +2c90 10 260 0 +2ca0 4 262 0 +2ca4 c 258 0 +2cb0 4 258 0 +2cb4 4 0 0 +2cb8 10 263 0 +2cc8 8 264 0 +2cd0 c 264 0 +FUNC 2cdc 58 0 print_envelope +2cdc 14 246 0 +2cf0 4 248 0 +2cf4 4 249 0 +2cf8 4 249 0 +2cfc 4 249 0 +2d00 4 250 0 +2d04 14 250 0 +2d18 4 251 0 +2d1c 4 251 0 +2d20 4 252 0 +2d24 4 252 0 +2d28 c 253 0 +FUNC 2d34 50 0 before_send_callback +2d34 14 93 0 +2d48 10 99 0 +2d58 14 98 0 +2d6c 8 102 0 +2d74 4 102 0 +2d78 c 102 0 +FUNC 2d84 34 0 discarding_before_send_callback +2d84 14 108 0 +2d98 8 113 0 +2da0 8 114 0 +2da8 4 114 0 +2dac c 114 0 +FUNC 2db8 24 0 on_crash_callback +2db8 10 132 0 +2dc8 8 137 0 +2dd0 4 137 0 +2dd4 8 137 0 +FUNC 2ddc 34 0 discarding_on_crash_callback +2ddc 14 120 0 +2df0 8 125 0 +2df8 8 126 0 +2e00 4 126 0 +2e04 c 126 0 +FUNC 2e10 4c 0 before_transaction_callback +2e10 10 142 0 +2e20 10 146 0 +2e30 14 145 0 +2e44 8 147 0 +2e4c 4 147 0 +2e50 c 147 0 +FUNC 2e5c 64 0 discarding_before_transaction_callback +2e5c 10 152 0 +2e6c 14 155 0 +2e80 8 155 0 +2e88 8 155 0 +2e90 8 156 0 +2e98 8 157 0 +2ea0 4 157 0 +2ea4 8 159 0 +2eac 4 159 0 +2eb0 4 160 0 +2eb4 c 160 0 +FUNC 2ec0 70 0 before_send_log_callback +2ec0 10 164 0 +2ed0 10 167 0 +2ee0 10 167 0 +2ef0 14 168 0 +2f04 14 168 0 +2f18 8 170 0 +2f20 4 170 0 +2f24 c 170 0 +FUNC 2f30 78 0 discarding_before_send_log_callback +2f30 10 175 0 +2f40 14 178 0 +2f54 14 178 0 +2f68 8 177 0 +2f70 8 177 0 +2f78 8 180 0 +2f80 8 181 0 +2f88 4 181 0 +2f8c 8 183 0 +2f94 4 183 0 +2f98 4 184 0 +2f9c c 184 0 +FUNC 2fa8 e8 0 traces_sampler_callback +2fa8 18 66 0 +2fc0 4 69 0 +2fc4 8 69 0 +2fcc 4 70 0 +2fd0 4 70 0 +2fd4 8 70 0 +2fdc 18 71 0 +2ff4 c 73 0 +3000 4 75 0 +3004 4 75 0 +3008 c 75 0 +3014 8 75 0 +301c 4 78 0 +3020 4 78 0 +3024 c 78 0 +3030 8 78 0 +3038 14 82 0 +304c 8 81 0 +3054 c 81 0 +3060 c 84 0 +306c 4 86 0 +3070 4 87 0 +3074 c 88 0 +3080 4 89 0 +3084 c 89 0 +FUNC 3090 e0 0 make_proxy_url +3090 24 274 0 +30b4 4 275 0 +30b8 4 275 0 +30bc 4 275 0 +30c0 4 276 0 +30c4 8 276 0 +30cc 4 277 0 +30d0 4 277 0 +30d4 4 277 0 +30d8 4 279 0 +30dc 8 279 0 +30e4 40 280 0 +3124 4 282 0 +3128 3c 283 0 +3164 c 285 0 +FUNC 3170 a4 0 test_logger_callback +3170 2c 232 0 +319c 24 237 0 +31c0 14 240 0 +31d4 c 241 0 +31e0 4 241 0 +31e4 20 242 0 +3204 10 242 0 +FUNC 3214 70 0 before_send_metric_callback +3214 10 188 0 +3224 10 191 0 +3234 10 191 0 +3244 14 192 0 +3258 14 192 0 +326c 8 194 0 +3274 4 194 0 +3278 c 194 0 +FUNC 3284 30 0 discarding_before_send_metric_callback +3284 10 199 0 +3294 8 201 0 +329c 8 202 0 +32a4 4 202 0 +32a8 c 202 0 +FUNC 32b4 4c 0 before_breadcrumb_callback +32b4 10 207 0 +32c4 10 212 0 +32d4 14 211 0 +32e8 8 214 0 +32f0 4 214 0 +32f4 c 214 0 +FUNC 3300 30 0 discarding_before_breadcrumb_callback +3300 10 220 0 +3310 8 224 0 +3318 8 225 0 +3320 4 225 0 +3324 c 225 0 +FUNC 3330 98 0 get_arg_value +3330 14 289 0 +3344 8 290 0 +334c 4 290 0 +3350 4 290 0 +3354 4 290 0 +3358 4 290 0 +335c c 290 0 +3368 4 291 0 +336c 4 291 0 +3370 4 291 0 +3374 4 291 0 +3378 4 291 0 +337c 8 291 0 +3384 4 292 0 +3388 4 292 0 +338c 4 292 0 +3390 4 292 0 +3394 8 292 0 +339c 4 294 0 +33a0 c 290 0 +33ac 4 290 0 +33b0 8 295 0 +33b8 4 296 0 +33bc c 296 0 +FUNC 33c8 d8 0 run_threads +33c8 20 501 0 +33e8 4 503 0 +33ec 4 503 0 +33f0 4 503 0 +33f4 c 503 0 +3400 4 504 0 +3404 8 504 0 +340c 8 504 0 +3414 8 504 0 +341c 4 505 0 +3420 c 503 0 +342c 4 503 0 +3430 4 506 0 +3434 4 506 0 +3438 4 506 0 +343c c 506 0 +3448 4 507 0 +344c 8 507 0 +3454 8 507 0 +345c 4 508 0 +3460 c 506 0 +346c 4 506 0 +3470 20 509 0 +3490 10 509 0 +FUNC 34a0 120 0 create_debug_crumb +34a0 c 403 0 +34ac 4 404 0 +34b0 10 404 0 +34c0 10 406 0 +34d0 14 405 0 +34e4 10 408 0 +34f4 14 407 0 +3508 8 413 0 +3510 10 415 0 +3520 14 414 0 +3534 10 417 0 +3544 14 416 0 +3558 c 419 0 +3564 14 418 0 +3578 10 420 0 +3588 14 420 0 +359c 14 421 0 +35b0 4 422 0 +35b4 c 422 0 +FUNC 35c0 4c 0 trigger_oom +35c0 8 386 0 +35c8 8 387 0 +35d0 4 388 0 +35d4 4 389 0 +35d8 4 389 0 +35dc 4 389 0 +35e0 4 390 0 +35e4 8 390 0 +35ec c 394 0 +35f8 4 396 0 +35fc c 397 0 +3608 4 388 0 +FUNC 360c 24 0 trigger_crash +360c 4 367 0 +3610 18 373 0 +3628 8 375 0 +FUNC 3630 50 0 trigger_stack_overflow +3630 c 379 0 +363c 10 380 0 +364c 4 381 0 +3650 20 382 0 +3670 10 382 0 +PUBLIC 0 0 _mh_execute_header +PUBLIC c000 0 invalid_mem +STACK CFI INIT d98 24 .cfa: sp 0 + .ra: x30 diff --git a/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/sentry_example.sym.original b/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/sentry_example.sym.original new file mode 100644 index 000000000..5a6945c71 --- /dev/null +++ b/tests/fixtures/symbols/sentry_example/73781EDEBF5B34EC81B2749A0F1FA5FD0/sentry_example.sym.original @@ -0,0 +1,1232 @@ +MODULE mac arm64 73781EDEBF5B34EC81B2749A0F1FA5FD0 sentry_example +FILE 0 /Users/sentry/code/sentry-native/examples/example.c +FUNC d98 24 0 get_current_thread_id +d98 8 46 0 +da0 c 48 0 +dac 4 49 0 +db0 c 49 0 +FUNC dbc 78 0 log_thread_func +dbc c 478 0 +dc8 4 480 0 +dcc 4 480 0 +dd0 4 480 0 +dd4 c 480 0 +de0 8 482 0 +de8 8 482 0 +df0 18 481 0 +e08 8 483 0 +e10 4 484 0 +e14 c 480 0 +e20 4 480 0 +e24 4 485 0 +e28 c 485 0 +FUNC e34 6c 0 metric_thread_func +e34 c 490 0 +e40 4 492 0 +e44 4 492 0 +e48 4 492 0 +e4c c 492 0 +e58 8 493 0 +e60 14 493 0 +e74 8 494 0 +e7c 4 495 0 +e80 c 492 0 +e8c 4 492 0 +e90 4 496 0 +e94 c 496 0 +FUNC ea0 1d9c 0 main +ea0 30 514 0 +ed0 4 515 0 +ed4 4 515 0 +ed8 4 517 0 +edc 4 517 0 +ee0 c 517 0 +eec 8 517 0 +ef4 4 518 0 +ef8 8 518 0 +f00 4 519 0 +f04 4 523 0 +f08 c 523 0 +f14 4 525 0 +f18 8 525 0 +f20 4 526 0 +f24 8 526 0 +f2c 4 528 0 +f30 c 528 0 +f3c 4 530 0 +f40 4 530 0 +f44 c 530 0 +f50 8 530 0 +f58 4 531 0 +f5c c 531 0 +f68 4 532 0 +f6c 4 534 0 +f70 4 534 0 +f74 c 534 0 +f80 8 534 0 +f88 4 535 0 +f8c 8 535 0 +f94 4 536 0 +f98 4 538 0 +f9c 4 538 0 +fa0 c 538 0 +fac 8 538 0 +fb4 4 541 0 +fb8 c 541 0 +fc4 4 542 0 +fc8 4 544 0 +fcc 4 544 0 +fd0 c 544 0 +fdc 8 544 0 +fe4 8 546 0 +fec 14 546 0 +1000 4 545 0 +1004 4 547 0 +1008 4 549 0 +100c 4 549 0 +1010 c 549 0 +101c 8 549 0 +1024 4 550 0 +1028 8 550 0 +1030 4 551 0 +1034 4 553 0 +1038 4 553 0 +103c c 553 0 +1048 8 553 0 +1050 4 554 0 +1054 8 554 0 +105c 4 555 0 +1060 4 557 0 +1064 4 557 0 +1068 c 557 0 +1074 8 557 0 +107c 4 558 0 +1080 10 558 0 +1090 4 559 0 +1094 4 561 0 +1098 4 561 0 +109c c 561 0 +10a8 8 561 0 +10b0 4 563 0 +10b4 10 562 0 +10c4 4 564 0 +10c8 4 566 0 +10cc 4 566 0 +10d0 c 566 0 +10dc 8 566 0 +10e4 4 567 0 +10e8 10 567 0 +10f8 4 568 0 +10fc 4 570 0 +1100 4 570 0 +1104 c 570 0 +1110 8 570 0 +1118 4 572 0 +111c 10 571 0 +112c 4 573 0 +1130 4 575 0 +1134 4 575 0 +1138 c 575 0 +1144 8 575 0 +114c 4 577 0 +1150 10 576 0 +1160 4 578 0 +1164 4 580 0 +1168 4 580 0 +116c c 580 0 +1178 8 580 0 +1180 4 582 0 +1184 10 581 0 +1194 4 583 0 +1198 4 585 0 +119c 4 585 0 +11a0 c 585 0 +11ac 8 585 0 +11b4 4 587 0 +11b8 10 586 0 +11c8 4 588 0 +11cc 4 590 0 +11d0 4 590 0 +11d4 c 590 0 +11e0 8 590 0 +11e8 4 592 0 +11ec 10 591 0 +11fc 4 593 0 +1200 4 595 0 +1204 4 595 0 +1208 c 595 0 +1214 8 595 0 +121c 4 597 0 +1220 10 596 0 +1230 4 598 0 +1234 4 600 0 +1238 4 600 0 +123c c 600 0 +1248 8 600 0 +1250 4 601 0 +1254 c 601 0 +1260 4 602 0 +1264 4 604 0 +1268 4 604 0 +126c c 604 0 +1278 8 604 0 +1280 8 0 0 +1288 30 606 0 +12b8 4 608 0 +12bc 4 608 0 +12c0 4 609 0 +12c4 4 610 0 +12c8 4 610 0 +12cc c 610 0 +12d8 8 610 0 +12e0 8 0 0 +12e8 34 612 0 +131c 4 614 0 +1320 4 614 0 +1324 4 615 0 +1328 4 616 0 +132c 4 616 0 +1330 c 616 0 +133c 8 616 0 +1344 8 0 0 +134c 30 618 0 +137c 4 620 0 +1380 4 620 0 +1384 4 621 0 +1388 4 622 0 +138c 4 622 0 +1390 c 622 0 +139c 8 622 0 +13a4 4 623 0 +13a8 c 623 0 +13b4 4 624 0 +13b8 4 625 0 +13bc 4 625 0 +13c0 c 625 0 +13cc 8 625 0 +13d4 8 0 0 +13dc 30 627 0 +140c 4 629 0 +1410 4 629 0 +1414 4 630 0 +1418 4 632 0 +141c 4 632 0 +1420 c 632 0 +142c 8 632 0 +1434 4 633 0 +1438 8 633 0 +1440 4 634 0 +1444 4 636 0 +1448 4 636 0 +144c c 636 0 +1458 8 636 0 +1460 4 639 0 +1464 c 639 0 +1470 4 640 0 +1474 4 642 0 +1478 4 642 0 +147c c 642 0 +1488 8 642 0 +1490 4 644 0 +1494 10 644 0 +14a4 4 645 0 +14a8 4 647 0 +14ac 4 647 0 +14b0 c 647 0 +14bc 8 647 0 +14c4 4 649 0 +14c8 8 649 0 +14d0 4 650 0 +14d4 4 652 0 +14d8 4 652 0 +14dc c 652 0 +14e8 8 652 0 +14f0 4 654 0 +14f4 8 654 0 +14fc 4 655 0 +1500 4 657 0 +1504 4 657 0 +1508 c 657 0 +1514 8 657 0 +151c 4 658 0 +1520 8 658 0 +1528 4 659 0 +152c 4 661 0 +1530 4 661 0 +1534 c 661 0 +1540 8 661 0 +1548 4 667 0 +154c c 666 0 +1558 4 669 0 +155c 4 670 0 +1560 4 670 0 +1564 c 670 0 +1570 8 670 0 +1578 4 671 0 +157c 8 671 0 +1584 4 672 0 +1588 4 673 0 +158c 4 673 0 +1590 c 673 0 +159c 8 673 0 +15a4 4 674 0 +15a8 8 674 0 +15b0 4 675 0 +15b4 8 675 0 +15bc 4 676 0 +15c0 c 676 0 +15cc 4 677 0 +15d0 8 677 0 +15d8 4 678 0 +15dc 4 680 0 +15e0 4 680 0 +15e4 c 680 0 +15f0 8 680 0 +15f8 4 681 0 +15fc 8 681 0 +1604 4 682 0 +1608 4 684 0 +160c 4 684 0 +1610 c 684 0 +161c 8 684 0 +1624 4 686 0 +1628 10 685 0 +1638 4 687 0 +163c 4 689 0 +1640 4 689 0 +1644 c 689 0 +1650 8 689 0 +1658 4 691 0 +165c 10 690 0 +166c 4 692 0 +1670 4 694 0 +1674 4 694 0 +1678 c 694 0 +1684 8 694 0 +168c 4 696 0 +1690 10 695 0 +16a0 4 697 0 +16a4 4 699 0 +16a8 4 699 0 +16ac c 699 0 +16b8 8 699 0 +16c0 4 701 0 +16c4 10 700 0 +16d4 4 702 0 +16d8 4 704 0 +16dc 4 704 0 +16e0 c 704 0 +16ec 8 704 0 +16f4 4 705 0 +16f8 4 705 0 +16fc c 705 0 +1708 4 705 0 +170c 4 706 0 +1710 8 706 0 +1718 4 707 0 +171c c 707 0 +1728 8 707 0 +1730 4 709 0 +1734 8 708 0 +173c 4 710 0 +1740 4 710 0 +1744 c 710 0 +1750 8 710 0 +1758 4 712 0 +175c 8 711 0 +1764 4 713 0 +1768 4 713 0 +176c c 713 0 +1778 8 713 0 +1780 4 715 0 +1784 8 714 0 +178c 4 716 0 +1790 8 0 0 +1798 4 717 0 +179c 4 718 0 +17a0 10 721 0 +17b0 4 722 0 +17b4 4 722 0 +17b8 c 722 0 +17c4 8 722 0 +17cc 18 723 0 +17e4 8 724 0 +17ec 4 725 0 +17f0 4 727 0 +17f4 4 727 0 +17f8 8 727 0 +1800 c 728 0 +180c 4 731 0 +1810 4 731 0 +1814 c 731 0 +1820 8 731 0 +1828 c 733 0 +1834 14 733 0 +1848 10 732 0 +1858 10 735 0 +1868 c 735 0 +1874 10 734 0 +1884 20 737 0 +18a4 c 737 0 +18b0 1c 736 0 +18cc c 740 0 +18d8 c 739 0 +18e4 10 738 0 +18f4 8 741 0 +18fc 10 742 0 +190c c 742 0 +1918 10 743 0 +1928 10 743 0 +1938 c 745 0 +1944 14 744 0 +1958 c 749 0 +1964 c 748 0 +1970 10 747 0 +1980 4 750 0 +1984 4 753 0 +1988 8 753 0 +1990 14 754 0 +19a4 18 755 0 +19bc 14 756 0 +19d0 c 757 0 +19dc 4 757 0 +19e0 4 758 0 +19e4 4 760 0 +19e8 4 760 0 +19ec c 760 0 +19f8 8 760 0 +1a00 8 761 0 +1a08 10 763 0 +1a18 14 762 0 +1a2c c 765 0 +1a38 14 764 0 +1a4c c 767 0 +1a58 14 766 0 +1a6c 14 768 0 +1a80 14 769 0 +1a94 14 770 0 +1aa8 20 772 0 +1ac8 8 776 0 +1ad0 24 775 0 +1af4 8 778 0 +1afc 14 780 0 +1b10 c 779 0 +1b1c 14 782 0 +1b30 c 781 0 +1b3c 14 783 0 +1b50 14 785 0 +1b64 18 787 0 +1b7c 4 789 0 +1b80 4 791 0 +1b84 4 791 0 +1b88 c 791 0 +1b94 8 791 0 +1b9c 18 793 0 +1bb4 4 792 0 +1bb8 4 794 0 +1bbc c 794 0 +1bc8 4 795 0 +1bcc 4 797 0 +1bd0 4 797 0 +1bd4 8 797 0 +1bdc 4 798 0 +1be0 4 798 0 +1be4 c 798 0 +1bf0 8 798 0 +1bf8 c 799 0 +1c04 4 800 0 +1c08 4 801 0 +1c0c 4 801 0 +1c10 c 801 0 +1c1c 8 801 0 +1c24 4 802 0 +1c28 4 802 0 +1c2c 4 802 0 +1c30 c 802 0 +1c3c 4 803 0 +1c40 14 803 0 +1c54 4 804 0 +1c58 c 802 0 +1c64 4 802 0 +1c68 8 806 0 +1c70 c 808 0 +1c7c 4 809 0 +1c80 4 810 0 +1c84 4 810 0 +1c88 c 810 0 +1c94 8 810 0 +1c9c c 811 0 +1ca8 4 812 0 +1cac 4 813 0 +1cb0 4 815 0 +1cb4 4 815 0 +1cb8 8 815 0 +1cc0 4 816 0 +1cc4 4 816 0 +1cc8 c 816 0 +1cd4 8 816 0 +1cdc 8 817 0 +1ce4 14 817 0 +1cf8 4 818 0 +1cfc 4 819 0 +1d00 4 819 0 +1d04 c 819 0 +1d10 8 819 0 +1d18 8 820 0 +1d20 14 820 0 +1d34 8 822 0 +1d3c 24 821 0 +1d60 8 824 0 +1d68 2c 823 0 +1d94 4 825 0 +1d98 4 826 0 +1d9c 4 826 0 +1da0 c 826 0 +1dac 8 826 0 +1db4 8 827 0 +1dbc 10 829 0 +1dcc 10 828 0 +1ddc 14 830 0 +1df0 14 831 0 +1e04 4 832 0 +1e08 4 833 0 +1e0c 4 833 0 +1e10 c 833 0 +1e1c 8 833 0 +1e24 4 834 0 +1e28 4 834 0 +1e2c 4 834 0 +1e30 c 834 0 +1e3c 8 836 0 +1e44 14 835 0 +1e58 4 837 0 +1e5c c 834 0 +1e68 4 834 0 +1e6c 8 838 0 +1e74 8 840 0 +1e7c 14 839 0 +1e90 4 841 0 +1e94 4 842 0 +1e98 4 842 0 +1e9c c 842 0 +1ea8 8 842 0 +1eb0 c 843 0 +1ebc 4 844 0 +1ec0 4 845 0 +1ec4 4 847 0 +1ec8 4 847 0 +1ecc c 847 0 +1ed8 8 847 0 +1ee0 c 848 0 +1eec 14 849 0 +1f00 8 850 0 +1f08 10 850 0 +1f18 10 853 0 +1f28 14 851 0 +1f3c 1c 854 0 +1f58 8 855 0 +1f60 4 856 0 +1f64 14 858 0 +1f78 8 860 0 +1f80 14 859 0 +1f94 10 862 0 +1fa4 18 861 0 +1fbc 8 863 0 +1fc4 24 866 0 +1fe8 c 867 0 +1ff4 10 870 0 +2004 8 871 0 +200c 10 873 0 +201c c 874 0 +2028 10 877 0 +2038 10 879 0 +2048 14 878 0 +205c 8 880 0 +2064 4 881 0 +2068 4 883 0 +206c 4 883 0 +2070 c 883 0 +207c 8 883 0 +2084 c 884 0 +2090 c 885 0 +209c 4 886 0 +20a0 4 886 0 +20a4 4 886 0 +20a8 4 887 0 +20ac 4 889 0 +20b0 4 889 0 +20b4 c 889 0 +20c0 8 889 0 +20c8 c 892 0 +20d4 18 894 0 +20ec 4 893 0 +20f0 4 895 0 +20f4 c 895 0 +2100 4 896 0 +2104 4 898 0 +2108 4 898 0 +210c c 898 0 +2118 8 898 0 +2120 c 899 0 +212c c 900 0 +2138 4 901 0 +213c 4 903 0 +2140 4 903 0 +2144 c 903 0 +2150 8 903 0 +2158 4 904 0 +215c 4 905 0 +2160 4 907 0 +2164 4 907 0 +2168 c 907 0 +2174 8 907 0 +217c 4 908 0 +2180 4 908 0 +2184 4 908 0 +2188 c 908 0 +2194 30 910 0 +21c4 c 911 0 +21d0 8 911 0 +21d8 4 912 0 +21dc c 908 0 +21e8 4 908 0 +21ec 4 913 0 +21f0 4 915 0 +21f4 4 915 0 +21f8 c 915 0 +2204 8 915 0 +220c 4 916 0 +2210 4 917 0 +2214 4 919 0 +2218 4 919 0 +221c c 919 0 +2228 8 919 0 +2230 4 920 0 +2234 4 920 0 +2238 24 922 0 +225c 10 926 0 +226c 4 927 0 +2270 8 927 0 +2278 10 929 0 +2288 4 930 0 +228c 8 930 0 +2294 4 932 0 +2298 4 932 0 +229c c 932 0 +22a8 8 932 0 +22b0 4 935 0 +22b4 c 935 0 +22c0 4 937 0 +22c4 18 936 0 +22dc 4 936 0 +22e0 4 939 0 +22e4 c 938 0 +22f0 4 940 0 +22f4 4 942 0 +22f8 14 942 0 +230c 4 943 0 +2310 4 945 0 +2314 4 945 0 +2318 c 945 0 +2324 8 945 0 +232c 4 946 0 +2330 4 946 0 +2334 4 946 0 +2338 c 946 0 +2344 38 948 0 +237c c 950 0 +2388 14 952 0 +239c 4 953 0 +23a0 c 946 0 +23ac 4 946 0 +23b0 4 954 0 +23b4 4 956 0 +23b8 4 956 0 +23bc c 956 0 +23c8 8 956 0 +23d0 4 957 0 +23d4 4 958 0 +23d8 4 960 0 +23dc 4 960 0 +23e0 c 960 0 +23ec 8 960 0 +23f4 8 961 0 +23fc 4 962 0 +2400 4 964 0 +2404 4 964 0 +2408 c 964 0 +2414 8 964 0 +241c 8 965 0 +2424 4 966 0 +2428 4 968 0 +242c 4 968 0 +2430 c 968 0 +243c 8 968 0 +2444 c 970 0 +2450 c 971 0 +245c 4 971 0 +2460 4 972 0 +2464 4 974 0 +2468 4 974 0 +246c c 974 0 +2478 8 974 0 +2480 4 975 0 +2484 4 976 0 +2488 4 977 0 +248c 4 977 0 +2490 c 977 0 +249c 8 977 0 +24a4 4 978 0 +24a8 4 979 0 +24ac 4 980 0 +24b0 4 980 0 +24b4 c 980 0 +24c0 8 980 0 +24c8 4 981 0 +24cc 4 982 0 +24d0 4 992 0 +24d4 4 992 0 +24d8 c 992 0 +24e4 8 992 0 +24ec 20 993 0 +250c 4 995 0 +2510 4 995 0 +2514 c 995 0 +2520 8 995 0 +2528 4 1000 0 +252c 4 1003 0 +2530 4 1003 0 +2534 c 1003 0 +2540 8 1003 0 +2548 8 1004 0 +2550 4 1005 0 +2554 4 1006 0 +2558 4 1006 0 +255c c 1006 0 +2568 8 1006 0 +2570 4 1007 0 +2574 8 1007 0 +257c 4 1008 0 +2580 4 1011 0 +2584 4 1011 0 +2588 c 1011 0 +2594 8 1011 0 +259c 1c 1012 0 +25b8 4 1014 0 +25bc 4 1014 0 +25c0 c 1014 0 +25cc 8 1014 0 +25d4 4 1016 0 +25d8 10 1016 0 +25e8 10 1017 0 +25f8 c 1018 0 +2604 4 1019 0 +2608 14 1020 0 +261c 4 1021 0 +2620 4 1022 0 +2624 4 1022 0 +2628 c 1022 0 +2634 8 1022 0 +263c 18 1023 0 +2654 4 1025 0 +2658 4 1025 0 +265c c 1025 0 +2668 8 1025 0 +2670 10 1026 0 +2680 4 1027 0 +2684 8 1028 0 +268c c 1029 0 +2698 14 1031 0 +26ac 4 1032 0 +26b0 4 1033 0 +26b4 4 1033 0 +26b8 c 1033 0 +26c4 8 1033 0 +26cc 24 1034 0 +26f0 8 1037 0 +26f8 4 1038 0 +26fc 4 1039 0 +2700 4 1039 0 +2704 c 1039 0 +2710 8 1039 0 +2718 24 1040 0 +273c 4 1044 0 +2740 4 1044 0 +2744 c 1047 0 +2750 4 1048 0 +2754 c 1048 0 +2760 4 1048 0 +2764 4 1049 0 +2768 8 1049 0 +2770 4 1050 0 +2774 c 1050 0 +2780 4 1051 0 +2784 4 1051 0 +2788 4 1052 0 +278c 4 1055 0 +2790 4 1055 0 +2794 4 1055 0 +2798 c 1058 0 +27a4 8 1060 0 +27ac 8 1060 0 +27b4 4 1060 0 +27b8 10 1060 0 +27c8 c 1059 0 +27d4 4 1063 0 +27d8 8 1063 0 +27e0 4 1066 0 +27e4 4 1066 0 +27e8 4 1067 0 +27ec 4 1068 0 +27f0 4 1068 0 +27f4 c 1068 0 +2800 8 1068 0 +2808 1c 1069 0 +2824 1c 1071 0 +2840 20 1074 0 +2860 8 1077 0 +2868 4 1079 0 +286c 4 1081 0 +2870 4 1081 0 +2874 c 1081 0 +2880 8 1081 0 +2888 14 1083 0 +289c 4 1082 0 +28a0 4 1086 0 +28a4 4 1086 0 +28a8 c 1086 0 +28b4 8 1086 0 +28bc 4 1087 0 +28c0 8 1087 0 +28c8 4 1088 0 +28cc 8 1090 0 +28d4 c 1092 0 +28e0 14 1091 0 +28f4 4 1094 0 +28f8 4 1094 0 +28fc c 1094 0 +2908 8 1094 0 +2910 c 1095 0 +291c 4 1098 0 +2920 4 1098 0 +2924 c 1097 0 +2930 4 1099 0 +2934 4 1102 0 +2938 8 1102 0 +2940 4 1101 0 +2944 8 1105 0 +294c 18 1105 0 +2964 10 1104 0 +2974 4 1107 0 +2978 4 1107 0 +297c c 1107 0 +2988 8 1107 0 +2990 4 1109 0 +2994 8 1108 0 +299c 4 1110 0 +29a0 4 1112 0 +29a4 4 1112 0 +29a8 c 1112 0 +29b4 8 1112 0 +29bc 4 1114 0 +29c0 18 1114 0 +29d8 4 1113 0 +29dc 4 1116 0 +29e0 c 1116 0 +29ec 4 1115 0 +29f0 8 1119 0 +29f8 18 1119 0 +2a10 10 1118 0 +2a20 4 1121 0 +2a24 4 1121 0 +2a28 c 1121 0 +2a34 8 1121 0 +2a3c 4 1122 0 +2a40 8 1122 0 +2a48 4 1124 0 +2a4c 8 1123 0 +2a54 4 1125 0 +2a58 4 1127 0 +2a5c 4 1127 0 +2a60 4 1128 0 +2a64 4 1128 0 +2a68 4 1129 0 +2a6c 4 1131 0 +2a70 4 1131 0 +2a74 c 1131 0 +2a80 8 1131 0 +2a88 4 1132 0 +2a8c 4 1132 0 +2a90 1c 1133 0 +2aac 14 1135 0 +2ac0 4 1136 0 +2ac4 4 1136 0 +2ac8 c 1136 0 +2ad4 8 1136 0 +2adc c 1137 0 +2ae8 4 1138 0 +2aec 4 1139 0 +2af0 4 1139 0 +2af4 c 1139 0 +2b00 8 1139 0 +2b08 8 1141 0 +2b10 14 1140 0 +2b24 4 1142 0 +2b28 4 1143 0 +2b2c 4 1145 0 +2b30 10 1145 0 +2b40 4 1146 0 +2b44 4 1146 0 +2b48 c 1146 0 +2b54 8 1146 0 +2b5c c 1147 0 +2b68 4 1148 0 +2b6c 4 1149 0 +2b70 4 1151 0 +2b74 4 1151 0 +2b78 c 1151 0 +2b84 8 1151 0 +2b8c 18 1152 0 +2ba4 4 1153 0 +2ba8 4 1156 0 +2bac 4 1158 0 +2bb0 4 1158 0 +2bb4 c 1158 0 +2bc0 8 1158 0 +2bc8 8 1159 0 +2bd0 4 1160 0 +2bd4 4 1162 0 +2bd8 4 1162 0 +2bdc c 1162 0 +2be8 8 1162 0 +2bf0 4 1163 0 +2bf4 4 1164 0 +2bf8 8 1166 0 +2c00 28 1167 0 +2c28 4 0 0 +2c2c 10 1167 0 +FUNC 2c3c a0 0 has_arg +2c3c 14 257 0 +2c50 8 258 0 +2c58 4 258 0 +2c5c 4 258 0 +2c60 4 258 0 +2c64 c 258 0 +2c70 4 259 0 +2c74 4 259 0 +2c78 4 259 0 +2c7c 4 259 0 +2c80 4 259 0 +2c84 8 259 0 +2c8c 4 0 0 +2c90 10 260 0 +2ca0 4 262 0 +2ca4 c 258 0 +2cb0 4 258 0 +2cb4 4 0 0 +2cb8 10 263 0 +2cc8 8 264 0 +2cd0 c 264 0 +FUNC 2cdc 58 0 print_envelope +2cdc 14 246 0 +2cf0 4 248 0 +2cf4 4 249 0 +2cf8 4 249 0 +2cfc 4 249 0 +2d00 4 250 0 +2d04 14 250 0 +2d18 4 251 0 +2d1c 4 251 0 +2d20 4 252 0 +2d24 4 252 0 +2d28 c 253 0 +FUNC 2d34 50 0 before_send_callback +2d34 14 93 0 +2d48 10 99 0 +2d58 14 98 0 +2d6c 8 102 0 +2d74 4 102 0 +2d78 c 102 0 +FUNC 2d84 34 0 discarding_before_send_callback +2d84 14 108 0 +2d98 8 113 0 +2da0 8 114 0 +2da8 4 114 0 +2dac c 114 0 +FUNC 2db8 24 0 on_crash_callback +2db8 10 132 0 +2dc8 8 137 0 +2dd0 4 137 0 +2dd4 8 137 0 +FUNC 2ddc 34 0 discarding_on_crash_callback +2ddc 14 120 0 +2df0 8 125 0 +2df8 8 126 0 +2e00 4 126 0 +2e04 c 126 0 +FUNC 2e10 4c 0 before_transaction_callback +2e10 10 142 0 +2e20 10 146 0 +2e30 14 145 0 +2e44 8 147 0 +2e4c 4 147 0 +2e50 c 147 0 +FUNC 2e5c 64 0 discarding_before_transaction_callback +2e5c 10 152 0 +2e6c 14 155 0 +2e80 8 155 0 +2e88 8 155 0 +2e90 8 156 0 +2e98 8 157 0 +2ea0 4 157 0 +2ea4 8 159 0 +2eac 4 159 0 +2eb0 4 160 0 +2eb4 c 160 0 +FUNC 2ec0 70 0 before_send_log_callback +2ec0 10 164 0 +2ed0 10 167 0 +2ee0 10 167 0 +2ef0 14 168 0 +2f04 14 168 0 +2f18 8 170 0 +2f20 4 170 0 +2f24 c 170 0 +FUNC 2f30 78 0 discarding_before_send_log_callback +2f30 10 175 0 +2f40 14 178 0 +2f54 14 178 0 +2f68 8 177 0 +2f70 8 177 0 +2f78 8 180 0 +2f80 8 181 0 +2f88 4 181 0 +2f8c 8 183 0 +2f94 4 183 0 +2f98 4 184 0 +2f9c c 184 0 +FUNC 2fa8 e8 0 traces_sampler_callback +2fa8 18 66 0 +2fc0 4 69 0 +2fc4 8 69 0 +2fcc 4 70 0 +2fd0 4 70 0 +2fd4 8 70 0 +2fdc 18 71 0 +2ff4 c 73 0 +3000 4 75 0 +3004 4 75 0 +3008 c 75 0 +3014 8 75 0 +301c 4 78 0 +3020 4 78 0 +3024 c 78 0 +3030 8 78 0 +3038 14 82 0 +304c 8 81 0 +3054 c 81 0 +3060 c 84 0 +306c 4 86 0 +3070 4 87 0 +3074 c 88 0 +3080 4 89 0 +3084 c 89 0 +FUNC 3090 e0 0 make_proxy_url +3090 24 274 0 +30b4 4 275 0 +30b8 4 275 0 +30bc 4 275 0 +30c0 4 276 0 +30c4 8 276 0 +30cc 4 277 0 +30d0 4 277 0 +30d4 4 277 0 +30d8 4 279 0 +30dc 8 279 0 +30e4 40 280 0 +3124 4 282 0 +3128 3c 283 0 +3164 c 285 0 +FUNC 3170 a4 0 test_logger_callback +3170 2c 232 0 +319c 24 237 0 +31c0 14 240 0 +31d4 c 241 0 +31e0 4 241 0 +31e4 20 242 0 +3204 10 242 0 +FUNC 3214 70 0 before_send_metric_callback +3214 10 188 0 +3224 10 191 0 +3234 10 191 0 +3244 14 192 0 +3258 14 192 0 +326c 8 194 0 +3274 4 194 0 +3278 c 194 0 +FUNC 3284 30 0 discarding_before_send_metric_callback +3284 10 199 0 +3294 8 201 0 +329c 8 202 0 +32a4 4 202 0 +32a8 c 202 0 +FUNC 32b4 4c 0 before_breadcrumb_callback +32b4 10 207 0 +32c4 10 212 0 +32d4 14 211 0 +32e8 8 214 0 +32f0 4 214 0 +32f4 c 214 0 +FUNC 3300 30 0 discarding_before_breadcrumb_callback +3300 10 220 0 +3310 8 224 0 +3318 8 225 0 +3320 4 225 0 +3324 c 225 0 +FUNC 3330 98 0 get_arg_value +3330 14 289 0 +3344 8 290 0 +334c 4 290 0 +3350 4 290 0 +3354 4 290 0 +3358 4 290 0 +335c c 290 0 +3368 4 291 0 +336c 4 291 0 +3370 4 291 0 +3374 4 291 0 +3378 4 291 0 +337c 8 291 0 +3384 4 292 0 +3388 4 292 0 +338c 4 292 0 +3390 4 292 0 +3394 8 292 0 +339c 4 294 0 +33a0 c 290 0 +33ac 4 290 0 +33b0 8 295 0 +33b8 4 296 0 +33bc c 296 0 +FUNC 33c8 d8 0 run_threads +33c8 20 501 0 +33e8 4 503 0 +33ec 4 503 0 +33f0 4 503 0 +33f4 c 503 0 +3400 4 504 0 +3404 8 504 0 +340c 8 504 0 +3414 8 504 0 +341c 4 505 0 +3420 c 503 0 +342c 4 503 0 +3430 4 506 0 +3434 4 506 0 +3438 4 506 0 +343c c 506 0 +3448 4 507 0 +344c 8 507 0 +3454 8 507 0 +345c 4 508 0 +3460 c 506 0 +346c 4 506 0 +3470 20 509 0 +3490 10 509 0 +FUNC 34a0 120 0 create_debug_crumb +34a0 c 403 0 +34ac 4 404 0 +34b0 10 404 0 +34c0 10 406 0 +34d0 14 405 0 +34e4 10 408 0 +34f4 14 407 0 +3508 8 413 0 +3510 10 415 0 +3520 14 414 0 +3534 10 417 0 +3544 14 416 0 +3558 c 419 0 +3564 14 418 0 +3578 10 420 0 +3588 14 420 0 +359c 14 421 0 +35b0 4 422 0 +35b4 c 422 0 +FUNC 35c0 4c 0 trigger_oom +35c0 8 386 0 +35c8 8 387 0 +35d0 4 388 0 +35d4 4 389 0 +35d8 4 389 0 +35dc 4 389 0 +35e0 4 390 0 +35e4 8 390 0 +35ec c 394 0 +35f8 4 396 0 +35fc c 397 0 +3608 4 388 0 +FUNC 360c 24 0 trigger_crash +360c 4 367 0 +3610 18 373 0 +3628 8 375 0 +FUNC 3630 50 0 trigger_stack_overflow +3630 c 379 0 +363c 10 380 0 +364c 4 381 0 +3650 20 382 0 +3670 10 382 0 +PUBLIC 0 0 _mh_execute_header +PUBLIC c000 0 invalid_mem +STACK CFI INIT d98 24 .cfa: sp 0 + .ra: x30 +STACK CFI da0 .cfa: sp 32 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT dbc 78 .cfa: sp 0 + .ra: x30 +STACK CFI dc4 .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT e34 6c .cfa: sp 0 + .ra: x30 +STACK CFI e3c .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT ea0 1d9c .cfa: sp 0 + .ra: x30 +STACK CFI eac .cfa: sp 1664 + .ra: .cfa -8 + ^ x27: .cfa -24 + ^ x28: .cfa -32 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2c3c a0 .cfa: sp 0 + .ra: x30 +STACK CFI 2c44 .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2cdc 58 .cfa: sp 0 + .ra: x30 +STACK CFI 2ce4 .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2d34 50 .cfa: sp 0 + .ra: x30 +STACK CFI 2d3c .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2d84 34 .cfa: sp 0 + .ra: x30 +STACK CFI 2d8c .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2ddc 34 .cfa: sp 0 + .ra: x30 +STACK CFI 2de4 .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2e10 4c .cfa: sp 0 + .ra: x30 +STACK CFI 2e18 .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2e5c 64 .cfa: sp 0 + .ra: x30 +STACK CFI 2e64 .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2ec0 70 .cfa: sp 0 + .ra: x30 +STACK CFI 2ec8 .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2f30 78 .cfa: sp 0 + .ra: x30 +STACK CFI 2f38 .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 2fa8 e8 .cfa: sp 0 + .ra: x30 +STACK CFI 2fb0 .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3090 e0 .cfa: sp 0 + .ra: x30 +STACK CFI 3098 .cfa: sp 112 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3170 a4 .cfa: sp 0 + .ra: x30 +STACK CFI 317c .cfa: sp 1120 + .ra: .cfa -8 + ^ x27: .cfa -24 + ^ x28: .cfa -32 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3214 70 .cfa: sp 0 + .ra: x30 +STACK CFI 321c .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3284 30 .cfa: sp 0 + .ra: x30 +STACK CFI 328c .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 32b4 4c .cfa: sp 0 + .ra: x30 +STACK CFI 32bc .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3300 30 .cfa: sp 0 + .ra: x30 +STACK CFI 3308 .cfa: sp 48 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3330 98 .cfa: sp 0 + .ra: x30 +STACK CFI 3338 .cfa: sp 64 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 33c8 d8 .cfa: sp 0 + .ra: x30 +STACK CFI 33d4 .cfa: sp 464 + .ra: .cfa -8 + ^ x27: .cfa -24 + ^ x28: .cfa -32 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 34a0 120 .cfa: sp 0 + .ra: x30 +STACK CFI 34a8 .cfa: sp 96 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 35c0 4c .cfa: sp 0 + .ra: x30 +STACK CFI 35c8 .cfa: sp 32 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 360c 24 .cfa: sp 0 + .ra: x30 +STACK CFI 3610 .cfa: sp 16 + .ra: .cfa -8 + ^ x29: .cfa -16 + ^ +STACK CFI INIT 3630 50 .cfa: sp 0 + .ra: x30 +STACK CFI 363c .cfa: sp 1072 + .ra: .cfa -8 + ^ x27: .cfa -24 + ^ x28: .cfa -32 + ^ x29: .cfa -16 + ^