From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29531 invoked by alias); 27 Jan 2014 20:51:01 -0000 Mailing-List: contact libc-ports-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: libc-ports-owner@sourceware.org Received: (qmail 29521 invoked by uid 89); 27 Jan 2014 20:51:00 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.2 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-ie0-f179.google.com Received: from mail-ie0-f179.google.com (HELO mail-ie0-f179.google.com) (209.85.223.179) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Mon, 27 Jan 2014 20:50:58 +0000 Received: by mail-ie0-f179.google.com with SMTP id ar20so6338630iec.24 for ; Mon, 27 Jan 2014 12:50:57 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=HxrjB8m+WSvezeqQAzXhY1BkLlEhBvWkSobwgKRU3tE=; b=WL1Lp0rKxdnCulE66fa712sGa/Hhm3ePdq5bQ9qToEDt6jEkomll8l/l3QdAG/hWDZ ESocq94vO+Z1suq123qcGKj9wZ2ZwmcMs+JFsY7r7URpzZdzfc2KTEnicyjt7nLYSDEP kKBrhwcBQ85tHtpDhzBoO3ctr+T9nIHLp2kxSb39oV5EbNW9WPurbC9XBFl71ysBbyTu Le7JQM7BDltxO1/nqUSuLgOOKE3aHXpBO0h7TuyfJRDch59A6g+cowf8IA7pl8MkErbB RUxQ9hLiQTx+4ZCiaBkwFJBv+ORbeyAQYvWyAFSaL9RmZYeveR/37FKtKHrkGMzJlRCt C60Q== X-Gm-Message-State: ALoCoQnboK/ahJizBuNgxNdCvjfNQYJ8Z2BRQAqVYWd7hDEnaa/j4K+xlC6/OJH3LN6kU3qr2/Hh MIME-Version: 1.0 X-Received: by 10.50.122.38 with SMTP id lp6mr11119202igb.30.1390855857197; Mon, 27 Jan 2014 12:50:57 -0800 (PST) Received: by 10.64.20.52 with HTTP; Mon, 27 Jan 2014 12:50:57 -0800 (PST) In-Reply-To: References: <1390815426-10792-1-git-send-email-will.newton@linaro.org> Date: Mon, 27 Jan 2014 20:51:00 -0000 Message-ID: Subject: Re: [PATCH] ARM: Add SystemTap probes to longjmp and setjmp. From: Will Newton To: "Joseph S. Myers" Cc: "libc-ports@sourceware.org" , Patch Tracking Content-Type: text/plain; charset=ISO-8859-1 X-IsSubscribed: yes X-SW-Source: 2014-01/txt/msg00064.txt.bz2 On 27 January 2014 18:22, Joseph S. Myers wrote: > On Mon, 27 Jan 2014, Will Newton wrote: > >> + /* longjmp probe expects longjmp first argument (4@r0), second >> + argument (-4@r1), and target address (4@r14), respectively. */ >> + LIBC_PROBE (longjmp, 3, 4@r0, -4@r1, 4@r14) > > I don't know what 4@r0 etc. mean - where is this documented (I don't see > it in include/stap-probe.h)? Also, where are the semantics of these > probes documented (I don't see them in manual/probes.texi)? None of this seems particularly well-documented as far as I can tell. The SystemTap probe syntax is covered here: https://sourceware.org/systemtap/wiki/UserSpaceProbeImplementation But there's no mention of ARM specifically, and the gdb source seems to be the place where the syntax is parsed so I wrote to match that. For example, lr does not seem to be a supported register name but r14 is. The semantics of the probes is not documented at all as far as I can tell. Again gdb is the consumer so I looked at the sources there as well as the comments in the powerpc port of glibc (thanks powerpc maintainers!). Only the third argument is used by gdb, which is the target pc. It would be great if someone who actually knew the details of this for sure added some docs (i.e. see discussion of longjmp_target probe that other architectures implement). -- Will Newton Toolchain Working Group, Linaro