Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
3.4 KiB

  1. C/C++ COMPILER OPTIONS
  2. -OPTIMIZATION-
  3. /O1 minimize space /Op[-] improve floating-pt consistency
  4. /O2 maximize speed /Os favor code space
  5. /Oa assume no aliasing /Ot favor code speed
  6. /Ob<n> inline expansion (default n=0) /Ow assume cross-function aliasing
  7. /Od disable optimizations (default) /Ox maximum opts. (/Ogityb1 /Gs)
  8. /Og enable global optimization /Oy[-] enable frame pointer omission
  9. /Oi enable intrinsic functions
  10. -CODE GENERATION-
  11. /G3 optimize for 80386 /Ge enable stack checking calls
  12. /G4 optimize for 80486 /Gs[num] disable stack checking calls
  13. /G5 optimize for Pentium /Gh enable hook function call
  14. /GB optimize for blended model (default) /GR[-] enable C++ RTTI
  15. /Gd __cdecl calling convention /GX[-] enable C++ EH
  16. /Gr __fastcall calling convention /Gi[-] enable incremental compilation
  17. /Gz __stdcall calling convention /Gm[-] enable minimal rebuild
  18. /Gf enable string pooling /Gy separate functions for linker
  19. /GF enable read-only string pooling
  20. -OUTPUT FILES-
  21. /Fa[file] name assembly listing file /Fo<file> name object file
  22. /FA[sc] configure assembly listing /Fp<file> name precompiled header file
  23. /Fd[file] name .PDB file /Fr[file] name source browser file
  24. /Fe<file> name executable file /FR[file] name extended .SBR file
  25. /Fm[file] name map file
  26. -PREPROCESSOR-
  27. /C don't strip comments /FI<file> name forced include file
  28. /D<name>{=|#}<text> define macro /U<name> remove predefined macro
  29. /E preprocess to stdout /u remove all predefined macros
  30. /EP preprocess to stdout, no #line /I<dir> add to include search path
  31. /P preprocess to file /X ignore "standard places"
  32. -LANGUAGE-
  33. /vd{0|1} disable/enable vtordisp /Za disable extensions (implies /Op)
  34. /vm<x> type of pointers to members /Ze enable extensions (default)
  35. /Zi generate debugging information /Zg generate function prototypes
  36. /Z7 generate old-style debug info /Zl omit default library name in .OBJ
  37. /Zd line number debugging info only /Zs syntax check only
  38. /Zp[n] pack structs on n-byte boundary
  39. -MISCELLANEOUS-
  40. /?, /help print this help message /w disable all warnings
  41. /c compile only, no link /W<n> set warning level (default n=1)
  42. /H<num> max external name length /WX treat warnings as errors
  43. /J default char type is unsigned /Yc[file] create .PCH file
  44. /nologo suppress copyright message /Yd put debug info in every .OBJ
  45. /Tc<source file> compile file as .c /Yu[file] use .PCH file
  46. /Tp<source file> compile file as .cpp /YX[file] automatic .PCH
  47. /V<string> set version string /Zn turn off SBRPACK for .SBR files
  48. -LINKING-
  49. /MD link with MSVCRT.LIB /MTd link with LIBCMTD.LIB debug library
  50. /MDd link with MSVCRTD.LIB debug library /F<num> set stack size
  51. /ML link with LIBC.LIB /LD Create .DLL
  52. /MLd link with LIBCD.LIB debug library /LDd Create .DLL debug libary
  53. /MT link with LIBCMT.LIB /link [linker options and libraries]