diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch new file mode 100644 index 000000000..b1c37fc8e --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch @@ -0,0 +1,30 @@ +Do not add stack pointer to clobber list + +it was being ignored until gcc 9.0 became capable +of flagging this silent ignoring via [1] + +[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813<Paste> + +Upstream-Status: Submitted [https://chromium-review.googlesource.com/c/linux-syscall-support/+/1390160] +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- a/src/third_party/lss/linux_syscall_support.h ++++ b/src/third_party/lss/linux_syscall_support.h +@@ -1966,7 +1966,7 @@ struct kernel_statfs { + __asm__ volatile(LSS_ENTRYPOINT \ + : "=a" (__res) \ + : "0" (__NR_##name) \ +- : "esp", "memory"); \ ++ : "memory"); \ + LSS_RETURN(type,__res); \ + } + #undef _syscall1 +@@ -2407,7 +2407,7 @@ struct kernel_statfs { + "d"(LSS_SYSCALL_ARG(parent_tidptr)), + "r"(LSS_SYSCALL_ARG(newtls)), + "r"(LSS_SYSCALL_ARG(child_tidptr)) +- : "rsp", "memory", "r8", "r10", "r11", "rcx"); ++ : "memory", "r8", "r10", "r11", "rcx"); + } + LSS_RETURN(int, __res); + } |