From dev-return-25314-apmail-apr-dev-archive=apr.apache.org@apr.apache.org Tue May 28 04:58:24 2013 Return-Path: X-Original-To: apmail-apr-dev-archive@www.apache.org Delivered-To: apmail-apr-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 2A9CFF8CC for ; Tue, 28 May 2013 04:58:24 +0000 (UTC) Received: (qmail 14305 invoked by uid 500); 28 May 2013 04:58:23 -0000 Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 14053 invoked by uid 500); 28 May 2013 04:58:23 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Id: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 13464 invoked by uid 99); 28 May 2013 04:58:22 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 28 May 2013 04:58:22 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of ben@reser.org designates 50.197.89.41 as permitted sender) Received: from [50.197.89.41] (HELO mail.brain.org) (50.197.89.41) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 28 May 2013 04:58:18 +0000 Received: from localhost (localhost [127.0.0.1]) by mail.brain.org (Postfix) with ESMTP id 8E4BD179E136 for ; Mon, 27 May 2013 21:57:57 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at fornix.brain.org Received: from mail.brain.org ([127.0.0.1]) by localhost (fornix.brain.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IIqFtaEvfivZ for ; Mon, 27 May 2013 21:57:47 -0700 (PDT) Received: from mail-ob0-x22a.google.com (mail-ob0-x22a.google.com [IPv6:2607:f8b0:4003:c01::22a]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mail.brain.org (Postfix) with ESMTPSA id 4A4D3179E19A for ; Mon, 27 May 2013 21:57:47 -0700 (PDT) Received: by mail-ob0-f170.google.com with SMTP id er7so8648476obc.15 for ; Mon, 27 May 2013 21:57:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=c4D/dGv92l3bASmnCeXE88igqdZ8rDvuiOU8l4nrwB4=; b=PBcZueucR5K9T6W5IUybL7q9/OvRntMmKyvC0aDn577OjfBOVMQnhI/1h/Dh7Gvlkk YWpL2buyH3l/Ya/MmBxlAqII1T59ScAtv9UyIUmysq/mwe6pMkNKS3mE5CYndZn0ZbMy V0kweKoREhjQ7WjMmix1PhlYZhFTLspXYTQre1qJdrn8usfnKeccdg6R+PepR+wbW5s6 k74u0wia9bvdX3rrN8IZulNqWxSuqvsFhoZy0L6A8u4/VA3ojNNlj8kWoB6BukU/OqNP Uq2hVgVMzeVJH7ofCg91dU1CcgK2Dtkmr65vDbGPiyXAZwiaHEl5XsSK94lyXuZn/R1J aWZA== MIME-Version: 1.0 X-Received: by 10.60.59.163 with SMTP id a3mr20162328oer.45.1369717065959; Mon, 27 May 2013 21:57:45 -0700 (PDT) Received: by 10.60.170.144 with HTTP; Mon, 27 May 2013 21:57:45 -0700 (PDT) In-Reply-To: References: Date: Mon, 27 May 2013 21:57:45 -0700 Message-ID: Subject: Re: apr_atomic functions usage From: Ben Reser To: dev , dev Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org On Mon, May 27, 2013 at 8:42 PM, kalyan sita wrote: > I see that the below functions have specific assembly implementations for > os32,ia32 architectures: > > apr_atomic_add32 > apr_atomic_sub32 > apr_atomic_inc32 > apr_atomic_dec32 > apr_atomic_set32 > apr_atomic_cas32 > apr_atomic_casptr > apr_atomic_xchg32 > apr_atomic_xchgptr > > How frequently are these functions used. > I am planning to write arm specific code for the above functions in arm.c > file. > Can anyone help me where to start ? You really should direct this at the dev@apr.apache.org list since it's not part of httpd (granted there's a lot of overlap between the projects). These are only used if the compiler doesn't provide the atomic builtins: http://gcc.gnu.org/onlinedocs/gcc-4.8.0/gcc/_005f_005fsync-Builtins.html#_005f_005fsync-Builtins If HAVE_ATOMIC_BUILTINS is true in include/arch/unix/apr_private.h then you don't need the ASM versions. One of the Linux Kernel hackers (Jon Masters) has a blog post up about ARM atomic operations: http://www.jonmasters.org/blog/2012/11/13/arm-atomic-operations/