C/C++ Compiler (cl.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Maximum P-Code Optimization (/Oq)
                                             Up Contents Index Back
─────C/C++ Compiler─────────────────────────────────────────────────────────
 
     Syntax:  /Oq
 
     The /Oq option optimizes your code for size by compiling the
     program into an alternate form called "p-code." P-code produces
     much smaller programs than machine code, but your machine cannot
     execute them directly. Programs compiled into p-code are executed
     by a small run-time interpreter incorporated into your executable
     file. Use of the /Oq option causes CL to emit the _PCODE
     preprocessor identifier. P-code does not support initialized
     static huge data.
 
     You can also directly control aspects of p-code optimization.
     See: Turn P-Code Quoting On and Off (/Of)
          Remove P-Code Native Entry Points (/Gn)
          Enable and Disable Frame Sorting (/Ov)
 
     Mixing P-Code and Machine Language
 
     You can control which sections of the program get compiled into
     p-code using the optimize pragma with the /Oq option.
 
     For example,
 
          #pragma optimize ("q", on)
 
          // Functions compiled into p-code
 
          #pragma optimize ("q", off)
 
          // Remaining functions compiled into machine code
 
     These pragmas are ignored if the program is not compiled with
     the /Oq option.
 
     Since p-code runs more slowly than machine language, you may want
     to have the speed-critical sections of your program compiled into
     machine language.
                                    -♦-