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