Commentary
This commit is contained in:
parent
e46e7bbf99
commit
d2105ba390
|
|
@ -445,20 +445,23 @@ mappings of optimizations to -O letters.
|
|||
|
||||
Enables splitting the output .cpp/.sp files into multiple outputs. When a
|
||||
C++ file exceeds the specified number of operations, a new file will be
|
||||
created. In addition, any slow routines will be placed into __Slow files.
|
||||
This accelerates compilation by as optimization can be disabled on the slow
|
||||
routines, and the remaining files can be compiled on parallel machines.
|
||||
Using --output-split should have only a trivial impact on performance.
|
||||
With GCC 3.3 on a 2GHz Opteron, --output-split 20000 will result in
|
||||
splitting into approximately one-minute-compile chunks.
|
||||
created at the next function boundary. In addition, any slow routines will
|
||||
be placed into __Slow files. This accelerates compilation by as
|
||||
optimization can be disabled on the slow routines, and the remaining files
|
||||
can be compiled on parallel machines. Using --output-split should have
|
||||
only a trivial impact on performance. With GCC 3.3 on a 2GHz Opteron,
|
||||
--output-split 20000 will result in splitting into approximately
|
||||
one-minute-compile chunks.
|
||||
|
||||
=item --output-split-cfuncs I<statements>
|
||||
|
||||
Enables splitting functions in the output .cpp/.sp files into multiple
|
||||
functions. When a generated function exceeds the specified number of
|
||||
operations, a new function will be created. With --output-split, this will
|
||||
enable GCC to compile faster, at a small loss in performance that increases
|
||||
with smaller statement values.
|
||||
enable GCC to compile faster, at a small loss in performance that gets
|
||||
worse with decreasing split values. Note that this option is stronger than
|
||||
--output-split in the sense that --output-split will not split inside a
|
||||
function.
|
||||
|
||||
=item --prefix I<topname>
|
||||
|
||||
|
|
|
|||
|
|
@ -34,11 +34,11 @@
|
|||
// For each var it sets, make vertex and edge from cfunc vertex
|
||||
//
|
||||
// For each CFUNC in graph
|
||||
// Add ASSIGN(SEL(__Vm_funcActivity,activityNumber++),1)
|
||||
// Create __Vm_funcActivity vector
|
||||
// Add ASSIGN(SEL(__Vm_traceActivity,activityNumber++),1)
|
||||
// Create __Vm_traceActivity vector
|
||||
// Sort TRACEs by activityNumber(s) they come from (may be more than one)
|
||||
// Each set of activityNumbers
|
||||
// Add IF (SEL(__Vm_funcActivity,activityNumber),1)
|
||||
// Add IF (SEL(__Vm_traceActivity,activityNumber),1)
|
||||
// Add traces under that activity number.
|
||||
// Assign trace codes:
|
||||
// If from a VARSCOPE, record the trace->varscope map
|
||||
|
|
|
|||
Loading…
Reference in New Issue