commit | de3ecd910a6812de864a7e97c550d57d61af883c | [log] [tgz] |
---|---|---|
author | Mark Mentovai <mark@chromium.org> | Tue Apr 21 10:56:57 2020 -0400 |
committer | Copybara-Service <copybara-worker@google.com> | Tue Jan 19 06:51:39 2021 -0800 |
tree | 33a0c6b8ce1919b20bbeeafa45822440eb5accbc | |
parent | d1452a86e93f9742de7c9ce77f7d0e87f19409ee [diff] |
ios: Provide a copy of mach_exc.defs and run mig on it This updates (and corrects) 8dbbaff2e1a5, which added exc.defs, by adding mach_exc.defs too. The difference betwen the exc and mach_exc subsystems is that the |code| parameter is int[] in exc and int64_t[] in mach_exc. Many exceptions carry the exception address in code[1], and a 32-bit int results in the exception address being truncated in exc. No information is lost in mach_exc, where a 64-bit int64_t is used. In 8dbbaff2e1a5, I misremembered the type of the |code| parameter as a type derived from uintptr_t, such as vm_address_t, an integer as wide as a pointer. I was wrong, and mach_exc is necessary. I also noted that Apple normally forbids mach_-prefixed interfaces in favor of the prefix-less ones for the reasons I mentioned, and that, all else being equal, it was desirable to adhere to the spirit of that convention. Because neither exc nor mach_exc are available in the SDK, it’s moot from a technical perspective, as we need to provide our own stubs either way. Bug: crashpad:31 Change-Id: I36411a4045a8468dd4f39f13008be65168e9ec7d Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/2159286 Reviewed-by: Justin Cohen <justincohen@chromium.org> Commit-Queue: Mark Mentovai <mark@chromium.org> GitOrigin-RevId: 3e748e9c4e0deccf2f95fe3c0ca6ea58b46632b0
Crashpad is a crash-reporting system.
Crashpad’s source code is hosted in a Git repository at https://chromium.googlesource.com/crashpad/crashpad.