cemcom.1 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. .TH CEMCOM 1L 86/11/12
  2. .SH NAME
  3. cemcom \- C to EM compiler
  4. .SH SYNOPSIS
  5. \fBcemcom\fP [\fIoptions\fP] \fIsource \fP[\fIdestination \fP[\fInamelist\fP]]
  6. .SH DESCRIPTION
  7. \fICemcom\fP is a compiler that translates C programs
  8. into EM compact code.
  9. The input is taken from \fIsource\fP, while the
  10. EM code is written on \fIdestination\fP.
  11. If either of these two names is "\fB-\fP", standard input or output respectively
  12. is taken.
  13. The file \fInamelist\fP, if supplied, will contain a list of the names
  14. of external, so-called \fBcommon\fP, variables.
  15. When the preprocessor is invoked to run stand-alone, \fIdestination\fP
  16. needs not be specified.
  17. .br
  18. \fIOptions\fP is a, possibly empty, sequence of the following combinations:
  19. .IP \fB\-D\fIname\fR=\fItext\fR
  20. .br
  21. define \fIname\fR as a macro with \fItext\fR as its replacement text.
  22. .IP \fB\-D\fIname\fR
  23. .br
  24. the same as \fB\-D\fIname\fR=1.
  25. .IP \fB\-I\fIdirname\fR
  26. .br
  27. insert \fIdirname\fR in the list of include directories.
  28. .IP \fB\-M\fP\fIn\fP
  29. set maximum identifier length to \fIn\fP.
  30. .IP \fB\-n\fR
  31. do not generate EM register messages.
  32. The user-declared variables are not stored into registers on the target
  33. machine.
  34. .IP \fB\-L\fR
  35. don't generate the EM \fBfil\fR and \fBlin\fR instructions
  36. that usually are generated to enable
  37. an interpreter to keep track of the current location in the source code.
  38. .IP \fB\-p\fR
  39. generate code at each procedure entry to call the routine
  40. .BR procentry ,
  41. and at each return to call the routine
  42. .BE procexit .
  43. These routines are supplied with one parameter, a pointer to a
  44. string containing the name of the procedure.
  45. .IP \fB\-R\fR
  46. interpret the input as restricted C (according to the language as
  47. described in \fIThe C programming language\fR by Kernighan and Ritchie.)
  48. .IP \fB\-U\fIname\fR
  49. .br
  50. get rid of the compiler-predefined macro \fIname\fR.
  51. .IP \fB\-V\fIcm\fR.\fIn\fR,\ \fB\-V\fIcm\fR.\fIncm\fR.\fIn\fR\ ...
  52. .br
  53. set the size and alignment requirements.
  54. The letter \fIc\fR indicates the simple type, which is one of
  55. \fBs\fR(short), \fBi\fR(int), \fBl\fR(long), \fBf\fR(float), \fBd\fR(double) or
  56. \fBp\fR(pointer).
  57. The \fIm\fR parameter can be used to specify the length of the type (in bytes)
  58. and the \fIn\fR parameter for the alignment of that type.
  59. Absence of \fIm\fR or \fIn\fR causes the default value to be retained.
  60. To specify that the bitfields should be right adjusted instead of the
  61. default left adjustment, specify \fBr\fR as \fIc\fR parameter.
  62. .IP \fB\-w\fR
  63. suppress warning messages
  64. .IP \fB\-\-\fItext\fR
  65. .br
  66. where \fItext\fR can be either of the above or
  67. a debug flag of the compiler (which is not useful for the common user.)
  68. This feature can be used in various shell scripts and surrounding programs
  69. to force a certain option to be handed over to \fBcemcom\fR.
  70. .LP
  71. .SH FILES
  72. .IR ~em/lib/em_cemcom :
  73. the compiler
  74. .SH DIAGNOSTICS
  75. All warning and error messages are written on standard error output.
  76. .SH REFERENCE
  77. Baalbergen, E.H., D. Grune, M. Waage ;"\fIThe CEM compiler\fR",
  78. Informatica Manual IM-4