Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 1 | # Stacker Configuration File For llvmc |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 2 | |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 3 | ########################################################## |
| 4 | # Language definitions |
| 5 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 6 | lang.name=Stacker |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 7 | lang.opt1=-simplifycfg -instcombine -mem2reg |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 8 | lang.opt2=-simplifycfg -instcombine -mem2reg -load-vn -gcse -dse -scalarrepl -sccp |
| 9 | lang.opt3=-simplifycfg -instcombine -mem2reg -load-vn -gcse -dse -scalarrepl -sccp \ |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 10 | -branch-combine -adce -globaldce -inline -licm -pre |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 11 | lang.opt4=-simplifycfg -instcombine -mem2reg -load-vn -gcse -dse -scalarrepl -sccp \ |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 12 | -ipconstprop -branch-combine -adce -globaldce -inline -licm -pre |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 13 | lang.opt5=-simplifycfg -instcombine -mem2reg --load-vn -gcse -dse scalarrepl -sccp \ |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 14 | -ipconstprop -branch-combine -adce -globaldce -inline -licm -pre \ |
| 15 | -block-placement |
| 16 | |
| 17 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 18 | # Pre-processor definitions |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 19 | ########################################################## |
| 20 | |
| 21 | # Stacker doesn't have a preprocessor but the following |
| 22 | # allows the -E option to be supported |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 23 | preprocessor.command=cp %in% %out% |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 24 | preprocessor.required=false |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 25 | |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 26 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 27 | # Translator definitions |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 28 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 29 | |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 30 | # To compile stacker source, we just run the stacker |
| 31 | # compiler with a default stack size of 2048 entries. |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 32 | translator.command=stkrc -s 2048 %in% -o %out% %time% %stats% |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 33 | |
| 34 | # stkrc doesn't preprocess but we set this to true so |
| 35 | # that we don't run the cp command by default. |
| 36 | translator.preprocesses=true |
| 37 | |
| 38 | # The translator is required to run. |
| 39 | translator.required=true |
| 40 | |
| 41 | # stkrc doesn't do any optimization, it just translates |
| 42 | translator.optimizes=no |
| 43 | |
| 44 | # stkrc doesn't handle the -On options |
| 45 | translator.groks_dash_O=no |
| 46 | |
| 47 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 48 | # Optimizer definitions |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 49 | ########################################################## |
| 50 | |
| 51 | # For optimization, we use the LLVM "opt" program |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 52 | optimizer.command=opt %in% -o %out% %opt% %time% %stats% |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 53 | |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 54 | # opt doesn't (yet) grok -On |
| 55 | optimizer.groks_dash_O=no |
| 56 | |
| 57 | # opt doesn't translate |
| 58 | optimizer.translates = no |
| 59 | |
| 60 | # opt doesn't preprocess |
| 61 | optimizer.preprocesses=no |
| 62 | |
| 63 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 64 | # Assembler definitions |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 65 | ########################################################## |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 66 | assembler.command=llc %in% -o %out% %target% "-regalloc=linearscan" \ |
| 67 | %time% %stats% |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 68 | |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 69 | ########################################################## |
Reid Spencer | 936f5c7 | 2004-08-15 08:16:12 +0000 | [diff] [blame] | 70 | # Linker definitions |
Reid Spencer | bae6825 | 2004-08-19 04:49:47 +0000 | [diff] [blame] | 71 | ########################################################## |
Reid Spencer | 53aa793 | 2004-08-20 22:53:11 +0000 | [diff] [blame^] | 72 | linker.libs=stkr_runtime |
| 73 | linker.paths= |