From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8117 invoked by alias); 28 Oct 2014 19:46:33 -0000 Mailing-List: contact libffi-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libffi-discuss-owner@sourceware.org Received: (qmail 8096 invoked by uid 89); 28 Oct 2014 19:46:31 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-qa0-f47.google.com Received: from mail-qa0-f47.google.com (HELO mail-qa0-f47.google.com) (209.85.216.47) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Tue, 28 Oct 2014 19:46:30 +0000 Received: by mail-qa0-f47.google.com with SMTP id dc16so1019703qab.20 for ; Tue, 28 Oct 2014 12:46:27 -0700 (PDT) X-Received: by 10.224.25.129 with SMTP id z1mr8356798qab.3.1414525587628; Tue, 28 Oct 2014 12:46:27 -0700 (PDT) Received: from anchor.com (50-194-63-110-static.hfc.comcastbusiness.net. [50.194.63.110]) by mx.google.com with ESMTPSA id 11sm2042715qgj.34.2014.10.28.12.46.25 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 28 Oct 2014 12:46:26 -0700 (PDT) From: Richard Henderson To: libffi-discuss@sourceware.org Cc: davem@davemloft.net Subject: [PATCH 0/8] Go closures for Sparc Date: Tue, 28 Oct 2014 19:46:00 -0000 Message-Id: <1414525555-21256-1-git-send-email-rth@twiddle.net> X-SW-Source: 2014/txt/msg00149.txt.bz2 This patch set splits apart the v8 and v9 abis. It will never be possible to swap between them at runtime, so give up pretending. It then streamlines handling of v9 structures, which is then used by the addition of support for complex. r~ Richard Henderson (8): sparc: Eliminate long double ifdefs sparc: Tidy up symbols sparc: Rewrite everything sparc: Preprocess float point struct return sparc: Handle more cases of structure return directly sparc: Add support for complex types sparc: Add support for Go closures sparc: Re-add abi compliant structure support Makefile.am | 4 +- src/prep_cif.c | 11 - src/sparc/ffi.c | 861 ++++++++++++++---------------------- src/sparc/ffi64.c | 592 +++++++++++++++++++++++++ src/sparc/ffitarget.h | 15 +- src/sparc/internal.h | 26 ++ src/sparc/v8.S | 551 ++++++++++++----------- src/sparc/v9.S | 504 ++++++++++++--------- testsuite/libffi.call/call.exp | 12 +- testsuite/libffi.call/complex_int.c | 4 +- 10 files changed, 1530 insertions(+), 1050 deletions(-) create mode 100644 src/sparc/ffi64.c create mode 100644 src/sparc/internal.h -- 1.9.3