Watcom C32 Optimizing Compiler  Version 11.0 
Copyright by Sybase, Inc., and its subsidiaries, 1984, 1997.
All rights reserved.  Watcom is a trademark of Sybase, Inc.
Usage: wcc386 [options] file [options]
Options:
	    ( /option is also accepted )
-3r	      386 register calling conventions
-3s	      386 stack calling conventions
-4r	      486 register calling conventions
-4s	      486 stack calling conventions
-5r	      Pentium register calling conventions
-5s	      Pentium stack calling conventions
-6r	      Pentium Pro register calling conventions
-6s	      Pentium Pro stack calling conventions
-aa	      allow non const initializers for local aggregates or unions
-ai	      turn off type checking on static initialization
-aq	      turn off qualifier mismatch warning for const/volatile
-bd	      build target is a dynamic link library (DLL)
-bm	      build target is a multi-thread environment
-br	      build with dll run-time library
-bt=<id>      build target for operating system <id>
-bw	      build target is a default windowing application
-d<id>[=text] precompilation #define <id> [text]
-d0	      no debugging information
-d1{+}	      line number debugging information
-d2	      full symbolic debugging information
-d3	      full symbolic debugging with unreferenced type names
-d+	      allow extended -d macro definitions
-db	      generate browsing information
-e=<num>      set limit on number of error messages
-ee	      call epilogue hook routine
-ef	      use full pathnames in error and warning messages
-ei	      force enums to be at least as large as an int
-em	      force enum base type to use minimum integral type
-en	      emit routine names in the code segment
-ep[=<num>]   call prologue hook routine with <num> stack bytes available
-eq	      do not display error messages (they are still written to a file)
-et	      P5 profiling
-ez	      generate PharLap EZ-OMF object files
-fh[=<file>]  use pre-compiled headers
-fhq[=<file>] do not display pre-compiled header activity warnings
-fi=<file>    force <file> to be included
-fo[=<file>]  set object or preprocessor output file name
-fr[=<file>]  set error file name
-fp2	      generate 287 floating-point code
-fp3	      generate 387 floating-point code
-fp5	      optimize floating-point for Pentium
-fp6	      optimize floating-point for Pentium Pro
-fpc	      calls to floating-point library
-fpi	      inline 80x87 instructions with emulation
-fpi87	      inline 80x87 instructions
-fpr	      generate backward compatible 80x87 code
-g=<id>       set code group name
-hc	      generate Codeview debugging information
-hd	      generate DWARF debugging information
-hw	      generate Watcom debugging information
-i=<path>     add another include path
-j	      change char default from unsigned to signed
-mc	      compact memory model (small code/large data)
-mf	      flat memory model (small code/small data assuming CS=DS=SS=ES)
-ml	      large memory model (large code/large data)
-mm	      medium memory model (large code/small data)
-ms	      small memory model (small code/small data)
-nc=<id>      set code class name
-nd=<id>      set data segment name
-nm=<file>    set module name
-nt=<id>      set name of text segment
-o{a,b,c,d,e,f[+],h,i,k,l,m,n,o,p,r,s,t,u,x,z} control optimization
  a	      -> relax aliasing constraints
  b	      -> branch prediction
  c	      -> disable <call followed by return> to <jump> optimization
  d	      -> disable all optimizations
  e[=<num>]   -> expand user functions inline (<num> controls max size)
  f	      -> generate traceable stack frames as needed
  f+	      -> always generate traceable stack frames
  h	      -> enable expensive optimizations
  i	      -> expand intrinsic functions inline
  k	      -> push register saves into flow graph
  l	      -> enable loop optimizations
  l+	      -> enable loop unrolling optimizations
  m	      -> generate inline code for math functions
  n	      -> allow numerically unstable optimizations
  o	      -> continue compilation if low on memory
  p	      -> generate consistent floating-point results
  r	      -> reorder instructions for best pipeline usage
  s	      -> favor code size over execution time in optimizations
  t	      -> favor execution time over code size in optimizations
  u	      -> all functions must have unique addresses
  x	      -> equivalent to -obmilker -s
  z	      -> NULL points to valid memory in the target environment
-p{c,l,w=<num>} preprocess source file
  c	      -> preserve comments
  l	      -> insert #line directives
  w=<num>     -> wrap output lines at <num> columns. Zero means no wrap.
-r	      save/restore segment registers across calls
-ri	      return chars and shorts as ints
-s	      remove stack overflow checks
-sg	      generate calls to grow the stack
-st	      touch stack through SS first
-tp=<id>      set #pragma on( <id> )
-u<id>	      undefine macro <id>
-v	      output function declarations to .def
-vcap	      VC++ compatibility: alloca allowed in argument lists
-w=<num>      set warning level number
-wcd=<num>    warning control: disable warning message <num>
-wce=<num>    warning control: enable warning message <num>
-we	      treat all warnings as errors
-za	      disable extensions (i.e., accept only ISO/ANSI C)
-zc	      place literal strings in the code segment
-zdf	      DS floats i.e. not fixed to DGROUP
-zdp	      DS is pegged to DGROUP
-zdl	      Load DS directly from DGROUP
-ze	      enable extensions (i.e., near, far, export, etc.)
-zff	      FS floats i.e. not fixed to a segment
-zfp	      FS is pegged to a segment
-zgf	      GS floats i.e. not fixed to a segment
-zgp	      GS is pegged to a segment
-zg	      generate function prototypes using base types
-zk0	      double-byte character support: Kanji
-zk0u	      translate double-byte Kanji to Unicode
-zk1	      double-byte character support: Chinese/Taiwanese
-zk2	      double-byte character support: Korean
-zku	      double-byte character support: local installed language
-zku=<num>    load UNICODE translate table for specified code page
-zl	      remove default library information
-zld	      remove file dependency information
-zm	      place each function in separate segment
-zp=<num>     pack structure members with alignment {1,2,4,8,16}
-zpw	     output warning when padding is added in a struct
-zq	      operate quietly
-zs	      syntax check only
-zt[=<num>]   set far data threshold (i.e., larger objects go in far memory)
-zu	      SS != DGROUP (i.e., don't assume stack is in your data segment)
-zw	      generate code for Microsoft Windows