mirror of
https://github.com/yuzu-emu/breakpad.git
synced 2025-02-02 16:51:09 +00:00
Fix breakpad for arm on arm64
On arm64 devices, GETFPREGS fails with errno==EIO. Ignore those failures on Android arm builds. BUG=508324 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1268023003 . git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1479 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
parent
0dbae0cf3f
commit
64c0d9c66d
|
@ -206,12 +206,18 @@ bool LinuxPtraceDumper::GetThreadInfoByIndex(size_t index, ThreadInfo* info) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !(defined(__ANDROID__) && defined(__ARM_EABI__))
|
||||||
|
// When running an arm build on an arm64 device, attempting to get the
|
||||||
|
// floating point registers fails. On Android, the floating point registers
|
||||||
|
// aren't written to the cpu context anyway, so just don't get them here.
|
||||||
|
// See http://crbug.com/508324
|
||||||
void* fp_addr;
|
void* fp_addr;
|
||||||
info->GetFloatingPointRegisters(&fp_addr, NULL);
|
info->GetFloatingPointRegisters(&fp_addr, NULL);
|
||||||
if (sys_ptrace(PTRACE_GETFPREGS, tid, NULL, fp_addr) == -1) {
|
if (sys_ptrace(PTRACE_GETFPREGS, tid, NULL, fp_addr) == -1) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#endif // PTRACE_GETREGSET
|
||||||
|
|
||||||
#if defined(__i386)
|
#if defined(__i386)
|
||||||
#if !defined(bit_FXSAVE) // e.g. Clang
|
#if !defined(bit_FXSAVE) // e.g. Clang
|
||||||
|
|
Loading…
Reference in a new issue