From patchwork Fri Oct 17 15:31:20 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Will Newton X-Patchwork-Id: 3268 Received: (qmail 16538 invoked by alias); 17 Oct 2014 15:31:37 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 16478 invoked by uid 89); 17 Oct 2014 15:31:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-wg0-f42.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=9x279Qcju9g1i+mwffftdzCW1ZvSg6SID/f4Mu7G59Q=; b=CU4t+g164C8E3HwNBSxgXIKn3/qT6jQWCBTUDNhaqWyBYsMIzlN/YtAO7QLtHUwmQI 3jXjKuLUtKecsSta715UqThHkTZYoRot0snuIWRxmPUuzvro6Frky/3LolCCQq+nC6Oe UyEo0OdV42RI8VU+MMd17np+Y6dce7wAebKnwlHuhAVTZdIeFW/iwd9xT0EPzUc7CHz0 NkWxDPSFcWWWTKMpnfYWvWBn325j6W960TfSOknuJQIVRthNtqLUS2VidiyraGX2KzoB alrZ9FLR6FgpL5kD6v++XhcsRPnKjFGZsQDVfyIzS1J2ZCJvsB2Sf+YZtgRqw7hcug6r 3Mqg== X-Gm-Message-State: ALoCoQn5wpyXmyuEl5coCngplBX2Z1F/NptBe/LuciIZ1PRDArD0sPrzxEYaT90BRyy5ux6aVsbk X-Received: by 10.194.221.105 with SMTP id qd9mr11231576wjc.51.1413559892580; Fri, 17 Oct 2014 08:31:32 -0700 (PDT) From: Will Newton To: libc-alpha@sourceware.org Subject: [PATCH 3/5] sysdeps/generic/atomic_types.h: Add generic atomic types header Date: Fri, 17 Oct 2014 16:31:20 +0100 Message-Id: <1413559882-959-4-git-send-email-will.newton@linaro.org> In-Reply-To: <1413559882-959-1-git-send-email-will.newton@linaro.org> References: <1413559882-959-1-git-send-email-will.newton@linaro.org> Add a header which defines a number of standard typedefs for atomic types. The list was taken from the ia64 port which seems to have the widest array of types. ChangeLog: 2014-10-15 Will Newton * sysdeps/generic/atomic_types.h: New file. --- sysdeps/generic/atomic_types.h | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 sysdeps/generic/atomic_types.h diff --git a/sysdeps/generic/atomic_types.h b/sysdeps/generic/atomic_types.h new file mode 100644 index 0000000..93e8396 --- /dev/null +++ b/sysdeps/generic/atomic_types.h @@ -0,0 +1,44 @@ +/* Atomic types. Generic version. + Copyright (C) 2014 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 + . */ + +#include + +typedef int8_t atomic8_t; +typedef uint8_t uatomic8_t; +typedef int_fast8_t atomic_fast8_t; +typedef uint_fast8_t uatomic_fast8_t; + +typedef int16_t atomic16_t; +typedef uint16_t uatomic16_t; +typedef int_fast16_t atomic_fast16_t; +typedef uint_fast16_t uatomic_fast16_t; + +typedef int32_t atomic32_t; +typedef uint32_t uatomic32_t; +typedef int_fast32_t atomic_fast32_t; +typedef uint_fast32_t uatomic_fast32_t; + +typedef int64_t atomic64_t; +typedef uint64_t uatomic64_t; +typedef int_fast64_t atomic_fast64_t; +typedef uint_fast64_t uatomic_fast64_t; + +typedef intptr_t atomicptr_t; +typedef uintptr_t uatomicptr_t; +typedef intmax_t atomic_max_t; +typedef uintmax_t uatomic_max_t;