comparison dmd/mars.c @ 323:0d52412d5b1a trunk

[svn r344] Fixed some very minor issues with the usage listing when calling llvmdc with no arguments. Changed the way moduleinfo is registered to use the same approach as DMD, this eliminates the need for correct linking order and should make the way for using a natively compiled runtime library. This should speed up linking tremendously and should now be possible. Fixed the llvm.used array to only be emitted if really necessary.
author lindquist
date Wed, 09 Jul 2008 23:43:51 +0200
parents 0baca2feb554
children 781af50846b2
comparison
equal deleted inserted replaced
322:1aaf6ff7f685 323:0d52412d5b1a
159 global.llvmdc_version, global.version, global.copyright, global.written); 159 global.llvmdc_version, global.version, global.copyright, global.written);
160 printf("\ 160 printf("\
161 D Language Documentation: http://www.digitalmars.com/d/1.0/index.html\n\ 161 D Language Documentation: http://www.digitalmars.com/d/1.0/index.html\n\
162 LLVMDC Homepage: http://www.dsource.org/projects/llvmdc\n\ 162 LLVMDC Homepage: http://www.dsource.org/projects/llvmdc\n\
163 Usage:\n\ 163 Usage:\n\
164 dmd files.d ... { -switch }\n\ 164 llvmdc files.d ... { -switch }\n\
165 \n\ 165 \n\
166 files.d D source files\n%s\ 166 files.d D source files\n%s\
167 -annotate annotate the bitcode with human readable source code\n\ 167 -annotate annotate the bitcode with human readable source code\n\
168 -c do not link\n\ 168 -c do not link\n\
169 -cov do code coverage analysis\n\ 169 -cov do code coverage analysis\n\
186 --help print help\n\ 186 --help print help\n\
187 -I<path> where to look for imports\n\ 187 -I<path> where to look for imports\n\
188 -J<path> where to look for string imports\n\ 188 -J<path> where to look for string imports\n\
189 -ignore ignore unsupported pragmas\n\ 189 -ignore ignore unsupported pragmas\n\
190 -inline do function inlining\n\ 190 -inline do function inlining\n\
191 -Llinkerflag pass linkerflag to llvm-ld\n\ 191 -L<linkerflag> pass <linkerflag> to llvm-ld\n\
192 -m<arch> emit code specific to <arch>\n\ 192 -m<arch> emit code specific to <arch> being one of:\n\
193 x86 x86-64 ppc32 ppc64\n\ 193 x86 x86-64 ppc32 ppc64\n\
194 -noasm do not allow use of inline asm\n\ 194 -noasm do not allow use of inline asm\n\
195 -nofloat do not emit reference to floating point\n\ 195 -nofloat do not emit reference to floating point\n\
196 -noruntime do not allow code that generates implicit runtime calls\n\ 196 -noruntime do not allow code that generates implicit runtime calls\n\
197 -noverify do not run the validation pass before writing bitcode\n\ 197 -noverify do not run the validation pass before writing bitcode\n\
198 -O optimize, same as -O2\n\ 198 -O optimize, same as -O2\n\
199 -O<n> optimize at level <n> (0-5)\n\ 199 -O<n> optimize at level <n> (0-5)\n\
200 -o- do not write object file\n\ 200 -o- do not write object file\n\
201 -od<objdir> write object files to directory <objdir>\n\ 201 -od<objdir> write object files to directory <objdir>\n\
202 -of<filename> name output file to <filename>\n\ 202 -of<filename> name output file to <filename>\n\
203 -op do not strip paths from source file\n\ 203 -op do not strip paths from source file\n\
204 -oq write object files with fully qualified names\n\ 204 -oq write object files with fully qualified names\n\
205 -profile profile runtime performance of generated code\n\ 205 -profile profile runtime performance of generated code\n\
206 -quiet suppress unnecessary messages\n\ 206 -quiet suppress unnecessary messages\n\
207 -release compile release version\n\ 207 -release compile release version\n\
208 -run srcfile args... run resulting program, passing args\n\ 208 -run srcfile args... run resulting program, passing args\n\
209 -R<path> provide path to the directory containing the runtime library\n\ 209 -R<path> provide path to the directory containing the runtime library\n\
210 -unittest compile in unit tests\n\ 210 -unittest compile in unit tests\n\
211 -v verbose\n\ 211 -v verbose\n\
212 -vv very verbose (does not include -v)\n\ 212 -vv very verbose (does not include -v)\n\