Bug 29374 - Inordinate space required for modulo scheduling
Inordinate space required for modulo scheduling
Status: UNCONFIRMED
Product: gcc
Classification: Unclassified
Component: middle-end
4.2.0
: P3 normal
: ---
Assigned To: Not yet assigned to anyone
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-10-06 23:05 UTC by lucier
Modified: 2006-10-26 01:29 UTC (History)
2 users (show)

See Also:
Host: x86_64-unknown-linux-gnu
Target: x86_64-unknown-linux-gnu
Build: x86_64-unknown-linux-gnu
Known to work:
Known to fail:
Last reconfirmed:


Attachments
macro-expanded test file (221.76 KB, application/x-tar)
2006-10-06 23:06 UTC, lucier
Details

Note You need to log in before you can comment on or make changes to this bug.
Description lucier 2006-10-06 23:05:07 UTC
Compiling this file took about 2.9GB of ram with -fmodulo-sched -freschedule-modulo-scheduled-loops and 1.8 gigs without (visual inspection of "top").  I guess even the "without" space requirements are somewhat outside my expectations.

all.i.gz will be attached to the next message.

euler-7% gcc -v
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: ../configure --prefix=/pkgs/gcc-mainline --disable-checking --enable-languages=c
Thread model: posix
gcc version 4.2.0 20061006 (experimental)

With modulo-scheduling:

euler-6% gcc -I../include -I. -Wall -W -Wno-unused -O1 -fno-math-errno -fschedule-insns2 -fno-trapping-math -fno-strict-aliasing -fwrapv -fexpensive-optimizations -fforce-addr -fpeephole2 -falign-jumps -falign-functions -fno-function-cse -ftree-copyrename -ftree-fre -ftree-dce -fregmove -fgcse-las -freorder-functions -fcaller-saves -fno-if-conversion2 -foptimize-sibling-calls -fcse-skip-blocks -funit-at-a-time -finline-functions -fmodulo-sched -freschedule-modulo-scheduled-loops -fomit-frame-pointer -fPIC -fno-common -mieee-fp -DHAVE_CONFIG_H -D___PRIMAL -D___LIBRARY -D___GAMBCDIR=\"/pkgs/Gambit-C/4.0b20\" -c _io.c -save-temps -ftime-report -fmem-report
Memory still allocated at the end of the compilation process
Size   Allocated        Used    Overhead
8             16k         15k        480 
16            16k         12k        352 
64          4096         640          64 
256           12k       9216         168 
512           56k         53k        784 
1024         136k        136k       1904 
2048         116k        114k       1624 
4096         100k        100k       1400 
8192          56k         56k        392 
16384         16k         16k         56 
112         4096         672          56 
208           12k       8112         168 
192           12k       8256         168 
160           88k         82k       1232 
176          160k        157k       2240 
96          1500k       1475k         20k
416          188k        171k       2632 
128           52k         51k        728 
48           228k        225k       3648 
224          368k        359k       5152 
32           224k        222k       4032 
80            12k         11k        168 
Total       3376k       3286k         47k

String pool
entries         15401
identifiers     15401 (100.00%)
slots           32768
bytes           426k (18k overhead)
table size      256k
coll/search     0.3413
ins/search      0.0729
avg. entry      28.37 bytes (+/- 15.54)
longest entry   92

??? tree nodes created

(No per-node statistics)
Type hash: size 1021, 372 elements, 0.247253 collisions
DECL_DEBUG_EXPR  hash: size 1021, 0 elements, 0.000000 collisions
DECL_VALUE_EXPR  hash: size 1021, 0 elements, 0.000000 collisions

Execution times (seconds)
 TOTAL                 :   0.46             0.02             0.64               3231 kB

Memory still allocated at the end of the compilation process
Size   Allocated        Used    Overhead
8             16k         13k        480 
16            92k         39k       2024 
64           820k        729k         12k
256         4096        1024          56 
512         4096         512          56 
1024         124k        120k       1736 
2048          12k         10k        168 
4096          64k         64k        896 
8192          40k         40k        280 
16384         16k         16k         56 
32768         96k         96k        168 
65536        704k        704k        616 
131072        512k        512k        224 
524288       1024k       1024k        112 
112          216k        200k       3024 
208           20k         17k        280 
192         1572k       1539k         21k
160           40k         18k        560 
176          976k        723k         13k
96          5536k       4706k         75k
416           16k       8320         224 
48          1744k        826k         27k
224          440k        390k       6160 
32          1616k        257k         28k
80          9624k       1018k        131k
Total         24M         12M        327k

String pool
entries         49980
identifiers     49980 (100.00%)
slots           131072
bytes           736k (54k overhead)
table size      1024k
coll/search     0.4881
ins/search      0.1914
avg. entry      15.09 bytes (+/- 11.94)
longest entry   92

??? tree nodes created

(No per-node statistics)
Type hash: size 1021, 515 elements, 0.801737 collisions
DECL_DEBUG_EXPR  hash: size 4093, 0 elements, 0.732265 collisions
DECL_VALUE_EXPR  hash: size 1021, 0 elements, 0.000000 collisions

Execution times (seconds)
 garbage collection    :   1.69 ( 2%) usr   0.08 ( 1%) sys   1.81 ( 2%) wall       0 kB ( 0%) ggc
 callgraph construction:   0.21 ( 0%) usr   0.03 ( 1%) sys   0.26 ( 0%) wall    4932 kB ( 0%) ggc
 callgraph optimization:   0.01 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall       0 kB ( 0%) ggc
 ipa reference         :   0.06 ( 0%) usr   0.02 ( 0%) sys   0.08 ( 0%) wall       8 kB ( 0%) ggc
 cfg cleanup           :   1.30 ( 2%) usr   0.00 ( 0%) sys   1.38 ( 2%) wall     432 kB ( 0%) ggc
 trivially dead code   :   0.32 ( 0%) usr   0.00 ( 0%) sys   0.33 ( 0%) wall       0 kB ( 0%) ggc
 life analysis         :   4.40 ( 6%) usr   0.00 ( 0%) sys   4.58 ( 5%) wall    3687 kB ( 0%) ggc
 life info update      :   0.30 ( 0%) usr   0.00 ( 0%) sys   0.27 ( 0%) wall       0 kB ( 0%) ggc
 alias analysis        :   0.44 ( 1%) usr   0.00 ( 0%) sys   0.50 ( 1%) wall    5208 kB ( 0%) ggc
 register scan         :   0.17 ( 0%) usr   0.00 ( 0%) sys   0.20 ( 0%) wall       1 kB ( 0%) ggc
 rebuild jump labels   :   0.12 ( 0%) usr   0.00 ( 0%) sys   0.12 ( 0%) wall       0 kB ( 0%) ggc
 preprocessing         :   0.34 ( 0%) usr   0.39 ( 7%) sys   0.62 ( 1%) wall    1187 kB ( 0%) ggc
 lexical analysis      :   0.26 ( 0%) usr   0.67 (12%) sys   1.19 ( 1%) wall       0 kB ( 0%) ggc
 parser                :   0.46 ( 1%) usr   0.46 ( 8%) sys   0.88 ( 1%) wall   26574 kB ( 2%) ggc
 integration           :   0.08 ( 0%) usr   0.02 ( 0%) sys   0.10 ( 0%) wall       0 kB ( 0%) ggc
 tree gimplify         :   0.27 ( 0%) usr   0.01 ( 0%) sys   0.29 ( 0%) wall    8869 kB ( 1%) ggc
 tree eh               :   0.02 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall       0 kB ( 0%) ggc
 tree CFG construction :   0.10 ( 0%) usr   0.01 ( 0%) sys   0.12 ( 0%) wall   21804 kB ( 2%) ggc
 tree CFG cleanup      :   1.07 ( 1%) usr   0.00 ( 0%) sys   1.08 ( 1%) wall    3029 kB ( 0%) ggc
 tree copy propagation :   0.40 ( 1%) usr   0.01 ( 0%) sys   0.40 ( 0%) wall     931 kB ( 0%) ggc
 tree store copy prop  :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.16 ( 0%) wall     288 kB ( 0%) ggc
 tree find ref. vars   :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall    1300 kB ( 0%) ggc
 tree PTA              :   1.19 ( 2%) usr   0.02 ( 0%) sys   1.28 ( 1%) wall    1176 kB ( 0%) ggc
 tree alias analysis   :   0.62 ( 1%) usr   0.13 ( 2%) sys   0.70 ( 1%) wall     106 kB ( 0%) ggc
 tree PHI insertion    :   0.14 ( 0%) usr   0.02 ( 0%) sys   0.15 ( 0%) wall    8889 kB ( 1%) ggc
 tree SSA rewrite      :   0.62 ( 1%) usr   0.01 ( 0%) sys   0.67 ( 1%) wall   10323 kB ( 1%) ggc
 tree SSA other        :   0.03 ( 0%) usr   0.02 ( 0%) sys   0.11 ( 0%) wall       0 kB ( 0%) ggc
 tree SSA incremental  :   1.53 ( 2%) usr   0.01 ( 0%) sys   1.62 ( 2%) wall    1494 kB ( 0%) ggc
 tree operand scan     :   0.53 ( 1%) usr   0.28 ( 5%) sys   0.87 ( 1%) wall   10327 kB ( 1%) ggc
 dominator optimization:   0.74 ( 1%) usr   0.00 ( 0%) sys   0.81 ( 1%) wall   17425 kB ( 2%) ggc
 tree SRA              :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall       0 kB ( 0%) ggc
 tree STORE-CCP        :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.14 ( 0%) wall       2 kB ( 0%) ggc
 tree CCP              :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.15 ( 0%) wall       9 kB ( 0%) ggc
 tree PHI const/copy prop:   0.04 ( 0%) usr   0.00 ( 0%) sys   0.06 ( 0%) wall       0 kB ( 0%) ggc
 tree split crit edges :   0.03 ( 0%) usr   0.01 ( 0%) sys   0.04 ( 0%) wall    8831 kB ( 1%) ggc
 tree reassociation    :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.16 ( 0%) wall      15 kB ( 0%) ggc
 tree FRE              :   3.54 ( 4%) usr   0.04 ( 1%) sys   3.76 ( 4%) wall    6874 kB ( 1%) ggc
 tree code sinking     :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.15 ( 0%) wall       1 kB ( 0%) ggc
 tree linearize phis   :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.03 ( 0%) wall       0 kB ( 0%) ggc
 tree forward propagate:   0.03 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       1 kB ( 0%) ggc
 tree conservative DCE :   0.42 ( 1%) usr   0.00 ( 0%) sys   0.44 ( 0%) wall       0 kB ( 0%) ggc
 tree aggressive DCE   :   0.13 ( 0%) usr   0.00 ( 0%) sys   0.14 ( 0%) wall       0 kB ( 0%) ggc
 tree DSE              :   0.10 ( 0%) usr   0.00 ( 0%) sys   0.11 ( 0%) wall       1 kB ( 0%) ggc
 PHI merge             :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall      15 kB ( 0%) ggc
 tree loop bounds      :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       3 kB ( 0%) ggc
 loop invariant motion :   0.10 ( 0%) usr   0.00 ( 0%) sys   0.11 ( 0%) wall       0 kB ( 0%) ggc
 tree canonical iv     :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       3 kB ( 0%) ggc
 scev constant prop    :   0.15 ( 0%) usr   0.01 ( 0%) sys   0.16 ( 0%) wall     586 kB ( 0%) ggc
 complete unrolling    :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.02 ( 0%) wall       7 kB ( 0%) ggc
 tree iv optimization  :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.00 ( 0%) wall      46 kB ( 0%) ggc
 tree loop init        :   0.43 ( 1%) usr   0.02 ( 0%) sys   0.45 ( 1%) wall   12011 kB ( 1%) ggc
 tree copy headers     :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       8 kB ( 0%) ggc
 tree SSA uncprop      :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.06 ( 0%) wall       0 kB ( 0%) ggc
 tree SSA to normal    :   4.47 ( 6%) usr   0.02 ( 0%) sys   4.69 ( 5%) wall   23550 kB ( 2%) ggc
 tree rename SSA copies:   0.13 ( 0%) usr   0.00 ( 0%) sys   0.13 ( 0%) wall       0 kB ( 0%) ggc
 dominance frontiers   :   0.13 ( 0%) usr   0.00 ( 0%) sys   0.14 ( 0%) wall       0 kB ( 0%) ggc
 dominance computation :   0.56 ( 1%) usr   0.00 ( 0%) sys   0.59 ( 1%) wall       0 kB ( 0%) ggc
 expand                :   2.06 ( 3%) usr   0.03 ( 1%) sys   2.21 ( 2%) wall   39692 kB ( 4%) ggc
 jump                  :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       0 kB ( 0%) ggc
 CSE                   :   0.51 ( 1%) usr   0.01 ( 0%) sys   0.55 ( 1%) wall    1357 kB ( 0%) ggc
 loop analysis         :   3.37 ( 4%) usr   0.89 (16%) sys   4.46 ( 5%) wall    1712 kB ( 0%) ggc
 branch prediction     :   0.22 ( 0%) usr   0.00 ( 0%) sys   0.23 ( 0%) wall     534 kB ( 0%) ggc
 flow analysis         :   0.05 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall       0 kB ( 0%) ggc
 combiner              :   0.51 ( 1%) usr   0.02 ( 0%) sys   0.54 ( 1%) wall    6020 kB ( 1%) ggc
 if-conversion         :   0.18 ( 0%) usr   0.00 ( 0%) sys   0.19 ( 0%) wall      93 kB ( 0%) ggc
 regmove               :   0.28 ( 0%) usr   0.00 ( 0%) sys   0.31 ( 0%) wall       0 kB ( 0%) ggc
 mode switching        :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall       0 kB ( 0%) ggc
 sms modulo scheduling :  34.03 (43%) usr   1.44 (26%) sys  37.23 (42%) wall    1692 kB ( 0%) ggc
 local alloc           :   0.63 ( 1%) usr   0.00 ( 0%) sys   0.67 ( 1%) wall    1722 kB ( 0%) ggc
 global alloc          :   2.13 ( 3%) usr   0.04 ( 1%) sys   2.28 ( 3%) wall    2239 kB ( 0%) ggc
 reload CSE regs       :   0.63 ( 1%) usr   0.01 ( 0%) sys   0.65 ( 1%) wall    6964 kB ( 1%) ggc
 flow 2                :   0.13 ( 0%) usr   0.00 ( 0%) sys   0.15 ( 0%) wall     889 kB ( 0%) ggc
 peephole 2            :   0.09 ( 0%) usr   0.00 ( 0%) sys   0.11 ( 0%) wall     289 kB ( 0%) ggc
 rename registers      :   0.18 ( 0%) usr   0.02 ( 0%) sys   0.19 ( 0%) wall      22 kB ( 0%) ggc
 scheduling 2          :   0.93 ( 1%) usr   0.01 ( 0%) sys   0.96 ( 1%) wall    5634 kB ( 0%) ggc
 machine dep reorg     :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.16 ( 0%) wall      50 kB ( 0%) ggc
 reorder blocks        :   3.74 ( 5%) usr   0.62 (11%) sys   4.60 ( 5%) wall  879054 kB (78%) ggc
 final                 :   0.53 ( 1%) usr   0.02 ( 0%) sys   0.57 ( 1%) wall    1073 kB ( 0%) ggc
 TOTAL                 :  79.08             5.58            88.85            1131330 kB

Without modulo-scheduling:

euler-12% gcc -I../include -I. -Wall -W -Wno-unused -O1 -fno-math-errno -fschedule-insns2 -fno-trapping-math -fno-strict-aliasing -fwrapv -fexpensive-optimizations -fforce-addr -fpeephole2 -falign-jumps -falign-functions -fno-function-cse -ftree-copyrename -ftree-fre -ftree-dce -fregmove -fgcse-las -freorder-functions -fcaller-saves -fno-if-conversion2 -foptimize-sibling-calls -fcse-skip-blocks -funit-at-a-time -finline-functions -fomit-frame-pointer -fPIC -fno-common -mieee-fp -DHAVE_CONFIG_H -D___PRIMAL -D___LIBRARY -D___GAMBCDIR=\"/pkgs/Gambit-C/4.0b20\" -c _io.c -save-temps -ftime-report -fmem-report
Memory still allocated at the end of the compilation process
Size   Allocated        Used    Overhead
8             16k         15k        480 
16            16k         12k        352 
64          4096         640          64 
256           12k       9216         168 
512           56k         53k        784 
1024         136k        136k       1904 
2048         116k        114k       1624 
4096         100k        100k       1400 
8192          56k         56k        392 
16384         16k         16k         56 
112         4096         672          56 
208           12k       8112         168 
192           12k       8256         168 
160           88k         82k       1232 
176          160k        157k       2240 
96          1500k       1475k         20k
416          188k        171k       2632 
128           52k         51k        728 
48           228k        225k       3648 
224          368k        359k       5152 
32           224k        222k       4032 
80            12k         11k        168 
Total       3376k       3286k         47k

String pool
entries         15401
identifiers     15401 (100.00%)
slots           32768
bytes           426k (18k overhead)
table size      256k
coll/search     0.3413
ins/search      0.0729
avg. entry      28.37 bytes (+/- 15.54)
longest entry   92

??? tree nodes created

(No per-node statistics)
Type hash: size 1021, 372 elements, 0.247253 collisions
DECL_DEBUG_EXPR  hash: size 1021, 0 elements, 0.000000 collisions
DECL_VALUE_EXPR  hash: size 1021, 0 elements, 0.000000 collisions

Execution times (seconds)
 TOTAL                 :   0.47             0.02             0.59               3231 kB
Memory still allocated at the end of the compilation process
Size   Allocated        Used    Overhead
8             16k         13k        480 
16            92k         39k       2024 
64           820k        729k         12k
256         4096        1024          56 
512         4096         512          56 
1024         124k        120k       1736 
2048          12k         10k        168 
4096          64k         64k        896 
8192          40k         40k        280 
16384         16k         16k         56 
32768         96k         96k        168 
65536        704k        704k        616 
131072        512k        512k        224 
524288       1024k       1024k        112 
112          216k        200k       3024 
208           20k         17k        280 
192         1572k       1539k         21k
160           40k         18k        560 
176          976k        723k         13k
96          5536k       4706k         75k
416           16k       8320         224 
48          1744k        826k         27k
224          440k        390k       6160 
32          1620k        257k         28k
80          9636k       1018k        131k
Total         24M         12M        327k

String pool
entries         49980
identifiers     49980 (100.00%)
slots           131072
bytes           736k (54k overhead)
table size      1024k
coll/search     0.4881
ins/search      0.1914
avg. entry      15.09 bytes (+/- 11.94)
longest entry   92

??? tree nodes created

(No per-node statistics)
Type hash: size 1021, 515 elements, 0.801737 collisions
DECL_DEBUG_EXPR  hash: size 4093, 0 elements, 0.758810 collisions
DECL_VALUE_EXPR  hash: size 1021, 0 elements, 0.000000 collisions

Execution times (seconds)
 garbage collection    :   1.62 ( 4%) usr   0.07 ( 2%) sys   1.70 ( 3%) wall       0 kB ( 0%) ggc
 callgraph construction:   0.20 ( 0%) usr   0.03 ( 1%) sys   0.24 ( 0%) wall    4932 kB ( 0%) ggc
 callgraph optimization:   0.01 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall       0 kB ( 0%) ggc
 ipa reference         :   0.07 ( 0%) usr   0.02 ( 1%) sys   0.09 ( 0%) wall       8 kB ( 0%) ggc
 cfg cleanup           :   1.22 ( 3%) usr   0.00 ( 0%) sys   1.23 ( 3%) wall     344 kB ( 0%) ggc
 trivially dead code   :   0.30 ( 1%) usr   0.00 ( 0%) sys   0.32 ( 1%) wall       0 kB ( 0%) ggc
 life analysis         :   3.98 ( 9%) usr   0.00 ( 0%) sys   4.02 ( 8%) wall    3773 kB ( 0%) ggc
 life info update      :   0.19 ( 0%) usr   0.00 ( 0%) sys   0.19 ( 0%) wall       0 kB ( 0%) ggc
 alias analysis        :   0.37 ( 1%) usr   0.00 ( 0%) sys   0.37 ( 1%) wall    4696 kB ( 0%) ggc
 register scan         :   0.19 ( 0%) usr   0.00 ( 0%) sys   0.20 ( 0%) wall       1 kB ( 0%) ggc
 rebuild jump labels   :   0.10 ( 0%) usr   0.00 ( 0%) sys   0.10 ( 0%) wall       0 kB ( 0%) ggc
 preprocessing         :   0.38 ( 1%) usr   0.41 (10%) sys   0.66 ( 1%) wall    1187 kB ( 0%) ggc
 lexical analysis      :   0.21 ( 0%) usr   0.66 (17%) sys   1.05 ( 2%) wall       0 kB ( 0%) ggc
 parser                :   0.54 ( 1%) usr   0.38 (10%) sys   1.00 ( 2%) wall   26574 kB ( 2%) ggc
 integration           :   0.08 ( 0%) usr   0.02 ( 1%) sys   0.10 ( 0%) wall       0 kB ( 0%) ggc
 tree gimplify         :   0.27 ( 1%) usr   0.01 ( 0%) sys   0.29 ( 1%) wall    8869 kB ( 1%) ggc
 tree eh               :   0.02 ( 0%) usr   0.01 ( 0%) sys   0.03 ( 0%) wall       0 kB ( 0%) ggc
 tree CFG construction :   0.10 ( 0%) usr   0.01 ( 0%) sys   0.13 ( 0%) wall   21804 kB ( 2%) ggc
 tree CFG cleanup      :   1.03 ( 2%) usr   0.00 ( 0%) sys   1.08 ( 2%) wall    3029 kB ( 0%) ggc
 tree copy propagation :   0.40 ( 1%) usr   0.01 ( 0%) sys   0.40 ( 1%) wall     931 kB ( 0%) ggc
 tree store copy prop  :   0.15 ( 0%) usr   0.00 ( 0%) sys   0.15 ( 0%) wall     288 kB ( 0%) ggc
 tree find ref. vars   :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall    1300 kB ( 0%) ggc
 tree PTA              :   1.16 ( 3%) usr   0.04 ( 1%) sys   1.26 ( 3%) wall    1176 kB ( 0%) ggc
 tree alias analysis   :   0.61 ( 1%) usr   0.16 ( 4%) sys   0.78 ( 2%) wall     106 kB ( 0%) ggc
 tree PHI insertion    :   0.13 ( 0%) usr   0.01 ( 0%) sys   0.15 ( 0%) wall    8889 kB ( 1%) ggc
 tree SSA rewrite      :   0.65 ( 1%) usr   0.00 ( 0%) sys   0.65 ( 1%) wall   10323 kB ( 1%) ggc
 tree SSA other        :   0.03 ( 0%) usr   0.04 ( 1%) sys   0.08 ( 0%) wall       0 kB ( 0%) ggc
 tree SSA incremental  :   1.56 ( 4%) usr   0.00 ( 0%) sys   1.57 ( 3%) wall    1494 kB ( 0%) ggc
 tree operand scan     :   0.54 ( 1%) usr   0.22 ( 6%) sys   0.75 ( 2%) wall   10327 kB ( 1%) ggc
 dominator optimization:   0.76 ( 2%) usr   0.02 ( 1%) sys   0.82 ( 2%) wall   17425 kB ( 2%) ggc
 tree STORE-CCP        :   0.13 ( 0%) usr   0.00 ( 0%) sys   0.14 ( 0%) wall       2 kB ( 0%) ggc
 tree CCP              :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.15 ( 0%) wall       9 kB ( 0%) ggc
 tree PHI const/copy prop:   0.06 ( 0%) usr   0.00 ( 0%) sys   0.06 ( 0%) wall       0 kB ( 0%) ggc
 tree split crit edges :   0.05 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall    8831 kB ( 1%) ggc
 tree reassociation    :   0.13 ( 0%) usr   0.00 ( 0%) sys   0.16 ( 0%) wall      15 kB ( 0%) ggc
 tree FRE              :   3.59 ( 8%) usr   0.04 ( 1%) sys   3.83 ( 8%) wall    6874 kB ( 1%) ggc
 tree code sinking     :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.14 ( 0%) wall       1 kB ( 0%) ggc
 tree linearize phis   :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.03 ( 0%) wall       0 kB ( 0%) ggc
 tree forward propagate:   0.07 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall       1 kB ( 0%) ggc
 tree conservative DCE :   0.42 ( 1%) usr   0.00 ( 0%) sys   0.42 ( 1%) wall       0 kB ( 0%) ggc
 tree aggressive DCE   :   0.14 ( 0%) usr   0.00 ( 0%) sys   0.14 ( 0%) wall       0 kB ( 0%) ggc
 tree DSE              :   0.09 ( 0%) usr   0.00 ( 0%) sys   0.12 ( 0%) wall       1 kB ( 0%) ggc
 PHI merge             :   0.00 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall      15 kB ( 0%) ggc
 tree loop bounds      :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       3 kB ( 0%) ggc
 loop invariant motion :   0.11 ( 0%) usr   0.00 ( 0%) sys   0.10 ( 0%) wall       0 kB ( 0%) ggc
 tree canonical iv     :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       3 kB ( 0%) ggc
 scev constant prop    :   0.15 ( 0%) usr   0.00 ( 0%) sys   0.16 ( 0%) wall     586 kB ( 0%) ggc
 complete unrolling    :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall       7 kB ( 0%) ggc
 tree iv optimization  :   0.01 ( 0%) usr   0.00 ( 0%) sys   0.01 ( 0%) wall      46 kB ( 0%) ggc
 tree loop init        :   0.39 ( 1%) usr   0.02 ( 1%) sys   0.44 ( 1%) wall   12011 kB ( 1%) ggc
 tree copy headers     :   0.03 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       8 kB ( 0%) ggc
 tree SSA uncprop      :   0.06 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall       0 kB ( 0%) ggc
 tree SSA to normal    :   4.65 (10%) usr   0.02 ( 1%) sys   4.69 (10%) wall   23550 kB ( 2%) ggc
 tree rename SSA copies:   0.13 ( 0%) usr   0.00 ( 0%) sys   0.13 ( 0%) wall       0 kB ( 0%) ggc
 dominance frontiers   :   0.13 ( 0%) usr   0.00 ( 0%) sys   0.16 ( 0%) wall       0 kB ( 0%) ggc
 dominance computation :   0.57 ( 1%) usr   0.00 ( 0%) sys   0.57 ( 1%) wall       0 kB ( 0%) ggc
 expand                :   2.04 ( 5%) usr   0.03 ( 1%) sys   2.07 ( 4%) wall   39692 kB ( 3%) ggc
 varconst              :   0.00 ( 0%) usr   0.01 ( 0%) sys   0.00 ( 0%) wall       8 kB ( 0%) ggc
 jump                  :   0.04 ( 0%) usr   0.00 ( 0%) sys   0.04 ( 0%) wall       0 kB ( 0%) ggc
 CSE                   :   0.53 ( 1%) usr   0.01 ( 0%) sys   0.54 ( 1%) wall    1357 kB ( 0%) ggc
 loop analysis         :   3.17 ( 7%) usr   0.76 (19%) sys   3.93 ( 8%) wall    1712 kB ( 0%) ggc
 branch prediction     :   0.22 ( 0%) usr   0.00 ( 0%) sys   0.23 ( 0%) wall     534 kB ( 0%) ggc
 flow analysis         :   0.05 ( 0%) usr   0.00 ( 0%) sys   0.05 ( 0%) wall       0 kB ( 0%) ggc
 combiner              :   0.51 ( 1%) usr   0.00 ( 0%) sys   0.52 ( 1%) wall    6020 kB ( 1%) ggc
 if-conversion         :   0.17 ( 0%) usr   0.00 ( 0%) sys   0.18 ( 0%) wall      93 kB ( 0%) ggc
 regmove               :   0.30 ( 1%) usr   0.00 ( 0%) sys   0.30 ( 1%) wall       0 kB ( 0%) ggc
 local alloc           :   0.65 ( 1%) usr   0.01 ( 0%) sys   0.66 ( 1%) wall    2420 kB ( 0%) ggc
 global alloc          :   2.03 ( 5%) usr   0.04 ( 1%) sys   2.07 ( 4%) wall    2856 kB ( 0%) ggc
 reload CSE regs       :   0.61 ( 1%) usr   0.01 ( 0%) sys   0.61 ( 1%) wall    6964 kB ( 1%) ggc
 flow 2                :   0.11 ( 0%) usr   0.00 ( 0%) sys   0.11 ( 0%) wall     888 kB ( 0%) ggc
 peephole 2            :   0.08 ( 0%) usr   0.00 ( 0%) sys   0.08 ( 0%) wall     287 kB ( 0%) ggc
 rename registers      :   0.17 ( 0%) usr   0.00 ( 0%) sys   0.17 ( 0%) wall       4 kB ( 0%) ggc
 scheduling 2          :   0.91 ( 2%) usr   0.02 ( 1%) sys   0.94 ( 2%) wall    5694 kB ( 0%) ggc
 machine dep reorg     :   0.16 ( 0%) usr   0.00 ( 0%) sys   0.15 ( 0%) wall      50 kB ( 0%) ggc
 reorder blocks        :   3.74 ( 8%) usr   0.70 (18%) sys   4.44 ( 9%) wall  892891 kB (78%) ggc
 final                 :   0.53 ( 1%) usr   0.00 ( 0%) sys   0.53 ( 1%) wall    1073 kB ( 0%) ggc
 TOTAL                 :  44.31             3.97            49.15            1144316 kB
Comment 1 lucier 2006-10-06 23:06:21 UTC
Created attachment 12394 [details]
macro-expanded test file
Comment 2 lucier 2006-10-06 23:31:03 UTC
On Darwin you can't compile the PPC64 version of _num.c, an even smaller file, with Apple's gcc 4.0.1, and I can't build a 64-bit version of 4.2 to test it.

Blah.

gcc -mcpu=970 -m64 -I../include -I. -no-cpp-precomp -Wall -W -Wno-unused -O1 -fno-math-errno -fschedule-insns2 -fno-trapping-math -fno-strict-aliasing -fwrapv -fexpensive-optimizations -fforce-addr -fpeephole2 -falign-jumps -falign-functions -fno-function-cse -ftree-copyrename -ftree-fre -ftree-dce -fregmove -fgcse-las -freorder-functions -fcaller-saves -fno-if-conversion2 -foptimize-sibling-calls -fcse-skip-blocks -funit-at-a-time -finline-functions -fmodulo-sched -freschedule-modulo-scheduled-loops -fomit-frame-pointer -fPIC -fno-common -DHAVE_CONFIG_H -D___PRIMAL -D___LIBRARY -D___GAMBCDIR=\"/usr/local/Gambit-C/4.0b20\" -c _num.c
cc1(10820) malloc: *** vm_allocate(size=220135424) failed (error code=3)
cc1(10820) malloc: *** error: can't allocate region
cc1(10820) malloc: *** set a breakpoint in szone_error to debug

cc1: out of memory allocating 220132608 bytes after a total of 0 bytes
make[1]: *** [_num.o] Error 1