From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29568 invoked by alias); 5 Jun 2009 14:57:18 -0000 Received: (qmail 29550 invoked by uid 22791); 5 Jun 2009 14:57:16 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-pz0-f173.google.com (HELO mail-pz0-f173.google.com) (209.85.222.173) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 05 Jun 2009 14:57:07 +0000 Received: by pzk3 with SMTP id 3so1413651pzk.0 for ; Fri, 05 Jun 2009 07:57:04 -0700 (PDT) Received: by 10.142.238.20 with SMTP id l20mr1568232wfh.169.1244213824620; Fri, 05 Jun 2009 07:57:04 -0700 (PDT) Received: from Paullaptop (124-168-137-88.dyn.iinet.net.au [124.168.137.88]) by mx.google.com with ESMTPS id k2sm3857689rvb.0.2009.06.05.07.57.02 (version=SSLv3 cipher=RC4-MD5); Fri, 05 Jun 2009 07:57:03 -0700 (PDT) Message-ID: <22637DCC73B54BD1B74D5A5F1939C6AF@Paullaptop> From: "Paul Edwards" To: "Joseph S. Myers" Cc: References: In-Reply-To: Subject: Re: i370 port Date: Fri, 05 Jun 2009 14:57:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="Windows-1252"; reply-type=original Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-06/txt/msg00097.txt.bz2 >> We were both maintaining it, and continue to maintain it, >> because MVS doesn't have any alternate free C compiler >> available. > > To merge back into FSF GCC, the people who have made changes that would be > merged back will need to have copyright assignments on file at the FSF > (and disclaimers from any relevant employers). I don't have a current > copy of the assignments list (my very old copy does show assignments from > David G. Pitts with an employer disclaimer dating from 1993). There's only 3 people who have made changes. Dave Pitts, Linas Vepstas and myself. Dave you already have apparently. Linas's code is largely already merged - just his last set of changes didn't get put in. That leaves me. I work as a contractor and I'd probably be sacked if I tried to either bring in or attempt to maintain gcc. All my work was done at home. >> So, my question is - what is required to get the i370 port reinstated >> into the GCC mainline? > > The basic requirements for a resurrected port are the same as for a new > port; it needs to be assigned to the FSF, to pass the normal technical > review, and the SC needs to approve someone as a maintainer of the port > (there may be a bottleneck with the last stage, since there are currently > at least three new ports pending approval). It is a very good idea if you > can run the testsuite for the port and will be posting results to > gcc-testresults regularly. The port is to a pure C90 environment (ie not posix, not unix). It was a major effort to achieve that, and it has only just been completed to the point where the compiler recompiles itself with full optimization. The environment where it runs is not set up to run shell scripts or makes or test suites. It's set up to run JCL, and there's a stack of JCL card decks to allow GCC to compile, which would be good to have included in the i370 directory. It's difficult enough just to get GCC to know to open dd:include(xxx) for an include of "xxx.h" and dd:sysincl(xxx) for an include of . That logic was revamped in gcc 3.4.6 so I haven't put it in yet. It'll probably be months before I do that, because I can't test it until it gets up onto the mainframe. And once again, in preparation for that, I need to make it a pure C90 application. So that is where I spend my effort. Note that the i370 port used to be in GCC even though it was riddled with bugs. It took literally years to get rid of them. I would have thought that GCC recompiling itself was a damn good start for inclusion, irrespective of any test suites (assuming those test suites are even C90 code - as they would need to be to work). > I would encourage going through all the changes made to the i370 port on > GCC mainline, after 3.1/3.2 branched and before the port was removed, to > see what should be merged into your version for mainline; ultimately it > would be up to you how you get it updated for all the mechanical changes > on mainline since 3.2, but those changes (see command above to get logs) > may be a useful guide to how to do some of the updates. I have already merged the changes made from 3.2.3 to 3.4.6 into my code, and have a diff against 3.4.6 available already. ie, that covers all known code changes. But it only works as a cross-compiler at the moment. It's probably a few months away from being native. BFN. Paul.