85 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			85 lines
		
	
	
	
		
			3 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .TH CEMCOM 1L 86/11/12
 | |
| .SH NAME
 | |
| cemcom \- C to EM compiler
 | |
| .SH SYNOPSIS
 | |
| \fBcemcom\fP [\fIoptions\fP] \fIsource \fP[\fIdestination \fP[\fInamelist\fP]]
 | |
| .SH DESCRIPTION
 | |
| \fICemcom\fP is a compiler that translates C programs
 | |
| into EM compact code.
 | |
| The input is taken from \fIsource\fP, while the
 | |
| EM code is written on \fIdestination\fP.
 | |
| If either of these two names is "\fB-\fP", standard input or output respectively
 | |
| is taken.
 | |
| The file \fInamelist\fP, if supplied, will contain a list of the names
 | |
| of external, so-called \fBcommon\fP, variables.
 | |
| When the preprocessor is invoked to run stand-alone, \fIdestination\fP
 | |
| needs not be specified.
 | |
| .br
 | |
| \fIOptions\fP is a, possibly empty, sequence of the following combinations:
 | |
| .IP \fB\-C\fR
 | |
| list the sequence of input tokens while maintaining the comments.
 | |
| .IP \fB\-D\fIname\fR=\fItext\fR
 | |
| .br
 | |
| define \fIname\fR as a macro with \fItext\fR as its replacement text.
 | |
| .IP \fB\-D\fIname\fR
 | |
| .br
 | |
| the same as \fB\-D\fIname\fR=1.
 | |
| .IP \fB\-E\fR
 | |
| list the sequence of input tokens and delete any comments.
 | |
| Control lines of the form
 | |
| .RS
 | |
| .RS
 | |
| #\fBline\fR <\fIinteger\fR> "\fIfilename\fR"
 | |
| .RE
 | |
| are generated whenever needed.
 | |
| .RE
 | |
| .IP \fB\-I\fIdirname\fR
 | |
| .br
 | |
| insert \fIdirname\fR in the list of include directories.
 | |
| .IP \fB\-M\fP\fIn\fP
 | |
| set maximum identifier length to \fIn\fP.
 | |
| .IP \fB\-n\fR
 | |
| do not generate EM register messages.
 | |
| The user-declared variables are not stored into registers on the target
 | |
| machine.
 | |
| .IP \fB\-p\fR
 | |
| generate the EM \fBfil\fR and \fBlin\fR instructions in order to enable
 | |
| an interpreter to keep track of the current location in the source code.
 | |
| .IP \fB\-P\fR
 | |
| like \fB\-E\fR but without #\fBline\fR control lines.
 | |
| .IP \fB\-R\fR
 | |
| interpret the input as restricted C (according to the language as 
 | |
| described in \fIThe C programming language\fR by Kernighan and Ritchie.)
 | |
| .IP \fB\-U\fIname\fR
 | |
| .br
 | |
| get rid of the compiler-predefined macro \fIname\fR.
 | |
| .IP \fB\-V\fIcm\fR.\fIn\fR,\ \fB\-V\fIcm\fR.\fIncm\fR.\fIn\fR\ ...
 | |
| .br
 | |
| set the size and alignment requirements.
 | |
| The letter \fIc\fR indicates the simple type, which is one of
 | |
| \fBs\fR(short), \fBi\fR(int), \fBl\fR(long), \fBf\fR(float), \fBd\fR(double) or
 | |
| \fBp\fR(pointer).
 | |
| The \fIm\fR parameter can be used to specify the length of the type (in bytes)
 | |
| and the \fIn\fR parameter for the alignment of that type.
 | |
| Absence of \fIm\fR or \fIn\fR causes the default value to be retained.
 | |
| To specify that the bitfields should be right adjusted instead of the
 | |
| default left adjustment, specify \fBr\fR as \fIc\fR parameter.
 | |
| .IP \fB\-w\fR
 | |
| suppress warning messages
 | |
| .IP \fB\-\-\fItext\fR
 | |
| .br
 | |
| where \fItext\fR can be either of the above or
 | |
| a debug flag of the compiler (which is not useful for the common user.)
 | |
| This feature can be used in various shell scripts and surrounding programs
 | |
| to force a certain option to be handed over to \fBcemcom\fR.
 | |
| .LP
 | |
| .SH FILES
 | |
| .IR /usr/em/lib/em_cemcom :
 | |
| the compiler
 | |
| .SH DIAGNOSTICS
 | |
| All warning and error messages are written on standard error output.
 | |
| .SH BUGS
 | |
| Feel free to report them to erikb@vu44.uucp
 | |
| .SH REFERENCE
 | |
| Baalbergen, E.H., D. Grune, M. Waage ;"\fIThe CEM compiler\fR", 
 | |
| Informatica Manual IM-4
 |