public inbox for libc-ports@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] [AARCH64] - Add signal handler definitions for profiling.
@ 2013-09-23  5:44 Venkataramanan Kumar
  2013-09-24 12:21 ` Marcus Shawcroft
  0 siblings, 1 reply; 2+ messages in thread
From: Venkataramanan Kumar @ 2013-09-23  5:44 UTC (permalink / raw)
  To: Marcus Shawcroft, libc-ports, Patch Tracking

[-- Attachment #1: Type: text/plain, Size: 599 bytes --]

Hi Marcus,

As per your comments in
https://sourceware.org/ml/libc-ports/2013-09/msg00114.html, I have
separated the patch that adds signal handler definitions for
profiling.

Cross tested with glibc testsuites on ARM V8 foundation model, with no
regressions.

Also please let me know,  "_mcount" patch in
https://sourceware.org/ml/libc-ports/2013-09/msg00090.html is good to
go.

Changelog:

2013-09-23 Venkataramanan Kumar  <venkataramanan.kumar@linaro.org>
        * sysdeps/unix/sysv/linux/sigcontextinfo.h: New file

if they are OK, can someone please commit it on my behalf.

regards,
Venkat.

[-- Attachment #2: glibc.sigcontext.txt --]
[-- Type: text/plain, Size: 1645 bytes --]

diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h b/ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h
new file mode 100644
index 0000000..f660d1e
--- /dev/null
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h
@@ -0,0 +1,36 @@
+/* AArch64 definitions for signal handling calling conventions.
+   Copyright (C) 1996-2013 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#include <sys/ucontext.h>
+#include "kernel-features.h"
+
+#define SIGCONTEXT siginfo_t *_si, struct ucontext *
+#define GET_PC(ctx)	((void *) (ctx)->uc_mcontext.pc)
+
+/* There is no reliable way to get the sigcontext unless we use a
+   three-argument signal handler.  */
+#define __sigaction(sig, act, oact) ({ \
+  (act)->sa_flags |= SA_SIGINFO; \
+  (__sigaction) (sig, act, oact); \
+})
+
+#define sigaction(sig, act, oact) ({ \
+  (act)->sa_flags |= SA_SIGINFO; \
+  (sigaction) (sig, act, oact); \
+})
+

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-09-24 12:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-23  5:44 [PATCH] [AARCH64] - Add signal handler definitions for profiling Venkataramanan Kumar
2013-09-24 12:21 ` Marcus Shawcroft

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).