Commit Graph

267 Commits

Author SHA1 Message Date
Sanjiv Gupta
549882d312 Added few more options to individual tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75120 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-09 08:20:25 +00:00
Sanjiv Gupta
44a382f894 Return dir separator as per platform.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75119 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-09 08:17:55 +00:00
Mikhail Glushenkov
bb41b2deca Documentation update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74913 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-07 16:43:49 +00:00
Mikhail Glushenkov
091ca1c9e0 Show how to modify built-in options.
Sanjiv complained about the need to maintain local changes to
lib/CompilerDriver.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74912 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-07 16:39:33 +00:00
Mikhail Glushenkov
dad7820e14 Documentation update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74907 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-07 16:09:29 +00:00
Sanjiv Gupta
7c07f3ae8d Prefix bin dir to executables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74713 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-02 17:51:09 +00:00
Sanjiv Gupta
31b798197e Fixed handling of -c option.wq
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74711 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-02 17:35:38 +00:00
Sanjiv Gupta
81d0c2abc8 Executables will be at InstallDir/bin directory. Std header files will be at InstallDir/include, libs will be at InstallDir/lib. Define hooks for these and use them in the options for various tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74611 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-01 16:10:29 +00:00
Mikhail Glushenkov
e8e4d588c3 Clang is now production quality (at least for C).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74484 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-30 00:16:22 +00:00
Mikhail Glushenkov
875ace52ee Add a way to access argv[0] in hooks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74483 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-30 00:16:00 +00:00
Mikhail Glushenkov
294f5074f5 Update documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74191 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25 18:20:44 +00:00
Mikhail Glushenkov
0a1cb1ea86 Remove duplication.
Factor out common preprocessor-related bits to Makefile.rules.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74153 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25 01:07:00 +00:00
Mikhail Glushenkov
223e99cd8d Temporary copy-pasto to make examples compile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74001 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23 20:47:24 +00:00
Mikhail Glushenkov
d80d8690af Make llvmc work again.
Chris recently broke llvmc with his Makefile changes (r75379). That patch made
the global change .o -> .a, which caused built-in llvmc plugins to stop working
since plugin initialization in llvmc is based on static variables not referenced
from the main executable. This patch implements auto-generated forced references
to the plugin libraries.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74000 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-23 20:46:48 +00:00
Mikhail Glushenkov
4aecec1f50 Another small documentation update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73596 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-17 02:56:08 +00:00
Chris Lattner
6be926647d Remove support for building LLVM libraries into "relinked"
object files.  Now we always build LLVM libraries into archives (.a files).

This makes the 'make' build work more like the cmake build, among other
things.  Doing this exposed some latent circular library dependencies, so
I think that llvm-config wasn't quite right for .o files anyway.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73579 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 23:00:42 +00:00
Mikhail Glushenkov
530f399743 Documentation update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 00:13:52 +00:00
Mikhail Glushenkov
9dcc26b6a0 A basic PIC16 toolchain driver.
Nice addition to the examples and also a starting point for Sanjiv to work on.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73013 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07 07:08:01 +00:00
Mikhail Glushenkov
e89331b93d The 'forward_as' property did not use its second argument.
See PR4159 for details. Patch by Martin Nowack!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71054 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-06 01:41:19 +00:00
Mikhail Glushenkov
4558f481b8 Support --with-llvmgccdir and friends in llvmc, take 2.
Should now work when building with objdir != srcdir and when llvm-gcc is not
available.

Thanks to Duncan Sands for testing and advice!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69700 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-21 19:46:10 +00:00
Bill Wendling
5a22d6a6a0 Revert 69474 and 69475. They are causing failures during a bootstrap on Darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69478 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 21:45:27 +00:00
Mikhail Glushenkov
7ba8ad31df Add a configure check for llvm-gcc (reapply).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69474 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 20:55:28 +00:00
Bill Wendling
ebcceeeaba Temporarily revert r69438 and r69439. These were causing failures during a
release build of llvm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69440 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 11:20:33 +00:00
Mikhail Glushenkov
126b014c60 Add a configure check for llvm-gcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69438 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-18 09:57:58 +00:00
Mikhail Glushenkov
46801029ea Do not pass '-relocation-model=pic' to llc.
Does not work well on 32 bit targets. Bug reported by Albert Graef.

This patch also adds new "-Wllc,option" syntax to pass options to llc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68127 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-31 18:33:54 +00:00
Mikhail Glushenkov
4ad0d571fa Documentation update.
Expand a bit on various '--*-graph' options.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67836 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-27 12:58:29 +00:00
Mikhail Glushenkov
283bb58332 Add example/Skeleton.
This is a template that can be used to build your own LLVMC-based drivers.
It can be also useful as a "bare-bones" LLVMC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65944 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-03 11:02:48 +00:00
Mikhail Glushenkov
03c050f018 Comment fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65943 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-03 10:04:57 +00:00
Mikhail Glushenkov
cfa036b8f0 Use LLVMLIBS instead of USEDLIBS.
Since this Makefile is supposed to be usable from LLVM-based projects not in the
tree, LLVMLIBS should be used instead of USEDLIBS. This depends on my previous
fix to Makefile.rules.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65941 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-03 10:03:53 +00:00
Mikhail Glushenkov
178b00ce50 Move example plugins to the example/ directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65939 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-03 10:02:53 +00:00
Mikhail Glushenkov
540d73f0cb Move the rules for building plugins to Makefile.rules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65827 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-02 09:04:13 +00:00
Mikhail Glushenkov
b14f5b5e9d Fix build with objdir != srcdir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65826 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-02 09:03:36 +00:00
Mikhail Glushenkov
95e2aa8967 Move code from Main.cpp to the include dir.
User drivers based on llvmc must all share the initialization code.
Putting main() into libCompilerDriver is not a very good idea IMO (and ld gave
me some strange EH-related error anyway).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65825 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-02 09:03:02 +00:00
Mikhail Glushenkov
f188178a2f Reorganize llvmc code.
Move the code from 'llvmc/driver' into a new CompilerDriver library, and change
the build system accordingly. Makes it easier for projects using LLVM to build
their own llvmc-based drivers.

Tested with objdir != srcdir.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65821 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-02 09:01:14 +00:00
Mikhail Glushenkov
7ba6052852 Add some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63364 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-30 02:12:57 +00:00
Mikhail Glushenkov
19d3e82905 Add three new option properties.
Adds new option properties 'multi_val', 'one_or_more' and 'zero_or_one'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63172 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-28 03:47:20 +00:00
Mikhail Glushenkov
e441b831c0 Fix 'llvm-config --libs' output.
Change the naming scheme for llvmc plugins so that they do not appear in
'llvm-config --libs' output.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62687 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-21 13:05:00 +00:00
Mikhail Glushenkov
b6b514124d Change the hook API back to prevent memory leaks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62686 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-21 13:04:33 +00:00
Mikhail Glushenkov
a298bb7525 Allow hooks with arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62685 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-21 13:04:00 +00:00
Mikhail Glushenkov
f9b1d79a54 Some small documentation fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62251 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-15 02:42:40 +00:00
Mikhail Glushenkov
564b75a4c6 Clarify the documentation a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62249 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-15 02:04:54 +00:00
Mikhail Glushenkov
15b064d045 Make -o a prefix option.
Both 'llvmc -o file' and 'llvmc -ofile' should work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62211 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-14 02:02:16 +00:00
Mikhail Glushenkov
f8c430b3da Add a --check-graph option to llvmc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61989 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-09 16:16:27 +00:00
Mikhail Glushenkov
5c2b6b26c9 Some enhancements for the 'case' expression.
Add (error) and (empty).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61117 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-17 02:47:01 +00:00
Mikhail Glushenkov
23f522a545 Add a comment to the auto-generated docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60985 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-13 17:51:47 +00:00
Mikhail Glushenkov
8cc8288bef Merge llvm-rst.css and llvm.css.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60984 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-13 17:50:58 +00:00
Mikhail Glushenkov
462886e8ad Some more documentation tweaks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60970 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-13 03:11:37 +00:00
Mikhail Glushenkov
d565203d96 More cosmetic tweaks for llvmc docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60969 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-13 02:28:58 +00:00
Mikhail Glushenkov
905315441e Fix W3C validator errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60912 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-11 23:43:14 +00:00
Mikhail Glushenkov
99a3a2c44c Use correct file for the llvmc tutorial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60910 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-11 23:33:33 +00:00
Mikhail Glushenkov
68319f87cc Update the auto-generated llvmc documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60909 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-11 23:24:40 +00:00
Mikhail Glushenkov
ba71d677dd Add a '-Wo,' option that passes options to opt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60902 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-11 22:19:14 +00:00
Mikhail Glushenkov
de1e521648 Merge Base.td and Tools.td.
This stuff is not used outside Base.td, and with the conversion of the
compilation graph to string-based format became much less (if at all)
useful.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60873 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-11 10:38:06 +00:00
Mikhail Glushenkov
74bcb057c0 Support -emit-llvm properly (with -S and -c).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60764 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-09 14:40:18 +00:00
Oscar Fuentes
f76eda70fa CMake: Added Tool.cpp to tools/llvmc/driver.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60670 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 17:01:16 +00:00
Mikhail Glushenkov
4410e3203d Describe recent changes in the documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60668 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:47:42 +00:00
Mikhail Glushenkov
b4ced5a3c4 Make 'extern' an option property.
Makes (forward) work better.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60667 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:47:12 +00:00
Mikhail Glushenkov
940cdfe697 Plugin updates: support more options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60666 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:46:23 +00:00
Mikhail Glushenkov
b677df82ed Join tools couldn't be used in the middle of the toolchain.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60665 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:45:37 +00:00
Mikhail Glushenkov
0bef2ad481 Enable the Clang plugin by default.
This will eventually replace `ccc`. The command `llvmc -clang` now uses
the Clang toolchain instead of `llvm-gcc`.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60661 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:43:42 +00:00
Mikhail Glushenkov
c8813da34a Update plugins to use (actions).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60660 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:43:17 +00:00
Mikhail Glushenkov
f915253dfc Use (actions) instead of option properties, support external options.
Also includes a major refactoring. See documentation for more
information.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60656 91177308-0d34-0410-b5e6-96231b3b80d8
2008-12-07 16:41:11 +00:00
Mikhail Glushenkov
bfdef3a6b2 Scrap some boilerplate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60200 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28 00:14:11 +00:00
Mikhail Glushenkov
739c720e66 Add 'hidden' and 'really_hidden' option properties.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60198 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28 00:13:25 +00:00
Mikhail Glushenkov
3321b0ff24 Documentation: clarify what is meant by 'multiple edges'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60197 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-28 00:12:09 +00:00
Mikhail Glushenkov
7e6d70a425 Disallow multiple edges.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60127 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-26 22:59:45 +00:00
Oscar Fuentes
63c956c083 CMake: llvmc2 is now known as llvmc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60052 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-25 22:18:49 +00:00
Mikhail Glushenkov
113ec35f7f Since the old llvmc was removed, rename llvmc2 to llvmc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60048 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-25 21:38:12 +00:00
Anton Korobeynikov
cae8ccd12d Drop llvmc also, it will be replaced by shiny new llvmc2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50615 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-04 06:19:55 +00:00
Bill Wendling
584c3bf650 Detabify.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47596 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-26 10:46:10 +00:00
Anton Korobeynikov
44a2a79f18 Get rid of hash_map in llvmc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47374 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-20 11:28:26 +00:00
Anton Korobeynikov
ae9f3a3b7c Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47367 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-20 11:08:44 +00:00
Chris Lattner
cf78659a82 regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45424 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29 20:47:37 +00:00
Chris Lattner
4c06e0d8a5 remove attributions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45423 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29 20:46:15 +00:00
Chris Lattner
21c62da287 remove attributions from tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45421 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29 20:44:31 +00:00
Chris Lattner
5116784826 remove attributions from tools/utils makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45414 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-29 20:07:17 +00:00
Chris Lattner
706a5e6124 add a 'don't use me' marker.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43226 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-22 19:41:46 +00:00
Dan Gohman
82a13c9c48 Move the space in overview output for commands out of each of the
commands and into the common code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42752 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-08 15:45:12 +00:00
Chris Lattner
f87bd845da update the .cvs files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37919 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-05 17:27:31 +00:00
Gabor Greif
a99be51bf5 Here is the bulk of the sanitizing.
Almost all occurrences of "bytecode" in the sources have been eliminated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-05 17:07:56 +00:00
John Criswell
e644ef7b09 Convert .cvsignore files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 16:35:07 +00:00
Chris Lattner
065344dfd5 use the new MemoryBuffer interfaces to simplify error reporting in clients.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36900 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 23:45:49 +00:00
Chris Lattner
44dadffe4b switch tools to bitcode instead of bytecode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36868 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 09:29:57 +00:00
Chris Lattner
5e8edbbf11 add bitcode support, optimize reading to not read all function bodies just
to get deplibs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36851 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 05:51:37 +00:00
Reid Spencer
b9125b1c85 Make TempDir a PathWithStatus so we don't have to cast it to one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35772 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-08 20:08:01 +00:00
Reid Spencer
c74b461507 For PR1291:
Change uses of sys::Path class to sys::PathWithStatus in those places where
the file status information is needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35743 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-07 18:53:16 +00:00
Reid Spencer
8475ec068c For PR789:
Make the sys::Path::getFileStatus function more efficient by having it
return a pointer to the FileStatus structure rather than copy it. Adjust
uses of the function accordingly. Also, fix some memory issues in sys::Path.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35476 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-29 19:05:44 +00:00
Anton Korobeynikov
9ba8a76f8b Add possibility to set memory limit for binaries run via libSystem. This
is especially needed for bugpoint. This partly implements PR688


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34349 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-16 19:11:07 +00:00
Lauro Ramos Venancio
34a451ddc8 Fix build error on ARM.
Since CompilerDriver.cpp revision 1.44, llvmc must be linked against LLVMCore.a (llvm::Module::~Module) and LLVMBCReader.a
(llvm::getBytecodeModuleProvider).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34196 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-12 18:31:46 +00:00
Chris Lattner
7cf7c2b703 move an llvmc-specific function out of the bcreader into llvmc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34021 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-07 23:48:32 +00:00
Chris Lattner
f2e292ce58 push bytecode decompressor out through APIs. Now the bytecode reader
api's look like this:

ModuleProvider *getBytecodeModuleProvider(
  const std::string &Filename,  ///< Name of file to be read
  BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer,
  std::string* ErrMsg = 0,      ///< Optional error message holder
  BytecodeHandler* H = 0        ///< Optional handler for reader events
);

This is ugly, but allows a client to say:

  getBytecodeModuleProvider("foo", 0);

If they do this, there is no dependency on the compression libraries, saving
codesize.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34012 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-07 21:41:02 +00:00
Reid Spencer
8782e53fd5 Ressurrect this needed file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32537 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-13 08:10:16 +00:00
Reid Spencer
b6f4ff2cb0 Ressurrect the Stacker "st" configuration. Someday this will all go
away, but until then Stacker needs its configuration.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32536 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-13 08:09:48 +00:00
Chris Lattner
c30598bc3a make all llvm tools call llvm_shutdown when they exit, static'ify some stuff.
With this change, I can now move -stats to print when llvm_shutdown is called.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32250 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-06 01:18:01 +00:00
Reid Spencer
3ed469ccd7 For PR786:
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31380 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-02 20:25:50 +00:00
Chris Lattner
aea932d27f Use LINK_COMPONENTS to specify *components* to link against instead of
using USED_LIBS to specify *libraries* to link against.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30090 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-04 05:59:09 +00:00
Reid Spencer
e3a1069870 Delete a no-longer-supported configuration item.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29960 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-29 20:52:44 +00:00
Reid Spencer
0b5a504d10 For PR797:
Remove exception throwing/handling from lib/Bytecode, and adjust its users
to compensate for changes in the interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29875 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-25 17:43:11 +00:00
Reid Spencer
487447626c Make the sys::Path::GetTemporaryDirectory method not throw exceptions and
adjust users of it to compensate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29831 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-22 19:01:30 +00:00
Reid Spencer
8ea5ecb056 For PR797:
Adjust usage of the ExecuteAndWait function to use the last argument which
is the ErrMsg string. This is necessitated because this function no longer
throws exceptions on error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29791 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-21 06:04:45 +00:00