From patchwork Fri May 31 17:57:29 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Botcazou X-Patchwork-Id: 247993 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "localhost", Issuer "www.qmailtoaster.com" (not verified)) by ozlabs.org (Postfix) with ESMTPS id CA8222C008A for ; Sat, 1 Jun 2013 03:58:28 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:mime-version:content-type :content-transfer-encoding; q=dns; s=default; b=ijCF5IFsdk17EsOq 0glvMiHoVv3QXNjy4bEBEoc29FuaHuK1cuWPLvN10ifVRRSGEhwlaLI9gzegzdzy 8Ea6Gi5Tnu8xnp1x7C9JmSl7ElQtKTmrQWwWwuD8EyytObIz8KkcxULSvYPjeQoD szlTDBwenmiSobprHfo39p6bpPs= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id:mime-version:content-type :content-transfer-encoding; s=default; bh=M8CX06uiqwDNhhWow+KV2Q kb11M=; b=XfgdEIbnxCLsJQN9L3U/lys75gPDeA3Z6V/oE0qucrr0gb2OKrfSXv ZlJw82WaglGkIga5GMTi8Jxmj1x/30C1I/V3CmAdbAPTGfxlcRzuBsCbenTjR1X6 WRIGhe63aVGuBRCJ0BFJv21fivTCmBaRfpVFlg0GO5hEkQoZ8SxcU= Received: (qmail 30384 invoked by alias); 31 May 2013 17:58:21 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 30373 invoked by uid 89); 31 May 2013 17:58:20 -0000 X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_HOSTKARMA_YE autolearn=ham version=3.3.1 Received: from smtp1-g21.free.fr (HELO smtp1-g21.free.fr) (212.27.42.1) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Fri, 31 May 2013 17:58:18 +0000 Received: from polaris.localnet (unknown [IPv6:2a01:e35:8a16:3850:1a03:73ff:fe45:373a]) by smtp1-g21.free.fr (Postfix) with ESMTPS id C0FD7940119; Fri, 31 May 2013 19:58:10 +0200 (CEST) From: Eric Botcazou To: gcc-patches@gcc.gnu.org Cc: Douglas B Rupp Subject: [ARM] Resurrect VxWorks port Date: Fri, 31 May 2013 19:57:29 +0200 Message-ID: <1683552.y1sNTR3Ayg@polaris> User-Agent: KMail/4.7.2 (Linux/3.1.10-1.19-desktop; KDE/4.7.2; x86_64; ; ) MIME-Version: 1.0 X-Virus-Found: No Hi, as diagnosed by Doug, the VxWorks port cannot be built since: 2011-05-18 Joseph Myers which reorganized the ARM options and turned arm_fp16_format from a global variable defined in arm.c into an option variable, leading to: In file included from ../../.././gcc/tm.h:20:0, from /home/eric/svn/gcc/libgcc/fp-bit.c:38: /home/eric/svn/gcc/libgcc/fp-bit.c: In function '__pack_f': /home/eric/svn/gcc/libgcc/../gcc/config/arm/arm.h:426:22: error: 'arm_fp16_format' undeclared (first use in this function) ((bits) == 16 && arm_fp16_format == ARM_FP16_FORMAT_ALTERNATIVE) ^ /home/eric/svn/gcc/libgcc/fp-bit.c:205:7: note: in expansion of macro 'LARGEST_EXPONENT_IS_NORMAL' if (LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS) && (isnan (src) || isinf (src))) ^ /home/eric/svn/gcc/libgcc/../gcc/config/arm/arm.h:426:22: note: each undeclared identifier is reported only once for each function it appears in ((bits) == 16 && arm_fp16_format == ARM_FP16_FORMAT_ALTERNATIVE) ^ /home/eric/svn/gcc/libgcc/fp-bit.c:205:7: note: in expansion of macro 'LARGEST_EXPONENT_IS_NORMAL' if (LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS) && (isnan (src) || isinf (src))) ^ make[3]: *** [_pack_sf.o] Error 1 Because fp-bit.c references macro LARGEST_EXPONENT_IS_NORMAL (FRAC_NBITS) which is defined in arm.h and references arm_fp16_format which in turn is now a macro defined in options.h: #define arm_fp16_format global_options.x_arm_fp16_format. Furthermore 2011-08-05 Rainer Orth moved fp-bit.c into libgcc, making it more convoluted to fix it. So we are proposing to switch the VxWorks port over to the soft-fp emulation instead of the fp-bit one, like most of the other ARM ports. Tested on ARM/VxWorks, OK for all active branches (they are all broken)? 2013-05-31 Douglas B Rupp * config.host (arm-wrs-vxworks): Configure with other soft float. Index: config.host =================================================================== --- config.host (revision 199343) +++ config.host (working copy) @@ -316,7 +316,7 @@ alpha*-dec-*vms*) md_unwind_header=alpha/vms-unwind.h ;; arm-wrs-vxworks) - tmake_file="$tmake_file arm/t-arm arm/t-vxworks t-fdpbit" + tmake_file="$tmake_file arm/t-arm arm/t-vxworks t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp" extra_parts="$extra_parts crti.o crtn.o" ;; arm*-*-netbsdelf*)