22-Jan-2004

Porting code

I have now successfully ported all my C code written for my current employer to OpenVMS 8.1 running on an Itanium based server, including one user written system service and one executive mode hack, and some true kernel threaded stuff.

The only changes I had to make were in conditional code that assumed if the architecture was not Alpha, it was VAX. Additionally, I had to regenerate some MMS files that knew about some specific alpha directories.

I also had to include an IA64 specific code in a MACRO-32 module that defines a parse table for LIB$TABLE_PARSE(). The source for the architecture-specific code is supplied with the operating system and can be found in SYS$EXAMPLES:ARCH_DEFS.MAR.

If I remember correctly, I had to do the ARCH_DEFS.MAR hack when I first ported to Alpha over ten years ago. Then the requirement for this hack was removed by the defaults in the MACRO-32 compiler changing.

That's it! That's all I had to do to port approximately 100,000 lines of C, and 5,000 lines of MACRO-32 (plus sundry MMS and MSG files) in less than six hours.

Posted at January 22, 2004 4:51 PM
Tag Set:
Comments

I am impressed :-)

Posted by: Ned at January 23, 2004 9:16 AM

Comments are closed