This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

A Case to maintain target i370-*-mvs as a live target

Hash: SHA1


I would like to make a case to keep i370-*-mvs a non-obsolete target
for gcc.

This is (to the best of my knowledge) the only freely available
compiler collection with a C processor for a number of possible

Granted, most of those operating systems are fairly deprecated as
well as their hardware but there are a number of projects (including
a free hardware emulator project) that thrives to maintain (mainly
for historical reasons) these architectures alive.

There is a free S/370 emulator available at
(This is a QPL licensed product - QPL being OSS certified).

There are at least 4 operating systems that can be used with little
constraint under that architecture that can benefit from that GCC
target : VM/370, OS/360, OS MVS 3.8j, DOS VS/34. Those operating
systems are no longer supported by the vendor (IBM) but are activelly
used by some people.

There is an estimated user base of approximatly 3000 users (based on
the number of subscribers to a mailing list discussing this

GCC can be made (with minimum work) to work as a cross compiler
target for any of those systems. This compilation produces Assembler
files which can then be processed on those systems.

I am aware this target has been very little maintained. With 3.4
there are some modifications that need to be done (especially
regarding the change of interface in respect to Character Sets) but
my preliminary belief is that with a clean "cross charset" interface
(cppcharset) this target should not create any extra burden on the
gcc system core (besides that any issues (like which only help to
spot as potential issues with the "cross charset" interface itself).

Running the testsuite for this target is of course problematic as it
cannot rely on "binutils". The compiler in this case is only used as
a 1st stage to final compilation (the C to ASM stage - the rest needs
to be processed by a custom method to either cross assemble or pass
the assembler source to the target for assembly / ar (creating a
linklib) / ld (creating an executable module) / etc..)

If it is necessary, I could volunteer to maintain *THIS* specific
target (i370-ibm-mvs) - But I would need to some time to understand
enough the gcc internals (and I am not even sure I have the
capability for this..)

Thank you,

- --Ivan

Version: PGP 8.0.3


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]