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
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
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
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
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
Mikhail Glushenkov
1f1fab8c91
Fix the -I option (llvmc -I dir1 -I dir2 didn't work).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60101 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-26 10:57:31 +00:00
Mikhail Glushenkov
8b4c5f5d26
Refactor Tools.td to remove repetition.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60100 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-26 10:56:56 +00:00
Mikhail Glushenkov
d91487785f
Make -fsyntax-only, -include and -emit-llvm work for C++ and Objective-C/C++.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60047 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-25 21:35:20 +00:00
Daniel Dunbar
911cfdb7d7
LLVMC2: -emit-llvm stops compilation.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59586 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-19 04:15:56 +00:00
Daniel Dunbar
ff6477b720
LLVMC2: Teach llvm_gcc_c tool about -include and -fsyntax-only.
...
- Only focusing on llvm_gcc_c for now, eventually this needs to be
refactored so it can be shared via all the gcc-like tools.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59582 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-19 02:59:00 +00:00
Mikhail Glushenkov
35fde15059
Support dependencies between plugins by priority-sorting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59449 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-17 17:30:25 +00:00
Mikhail Glushenkov
010887765a
Add a layer of indirection to make plugins more flexible.
...
Use strings instead of TableGen defs in the compilation graph
definition. Makes it easier for the plugins to modify an existing graph.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59447 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-17 17:29:18 +00:00
Daniel Dunbar
77e0c85dcc
Add LLVMC2 tool definitions for Objective-C and Objective-C++.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58885 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-08 03:25:47 +00:00
Mikhail Glushenkov
e4a5ea3130
Build system tweaks to make it more convenient for the plugin authors.
...
Plugins can be now compiled in with a slight Makefile change.
For example, to compile the new Clang driver, use:
cd $LLVMC2_DIR
make TOOLNAME=ccc2 BUILTIN_PLUGINS=Clang
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56967 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-02 21:15:05 +00:00
Dale Johannesen
869aed7d83
Remove silly semicolon.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56481 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 23:28:18 +00:00
Dale Johannesen
2165e1288e
Remove a compiler warning.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56478 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 22:33:34 +00:00
Mikhail Glushenkov
14ef05937f
Convert llvmc2 plugins to use llvm/Support/Registry.h machinery.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56467 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 20:51:19 +00:00
Mikhail Glushenkov
4a1a77c1c9
Move llvmc2 header files under include/llvm/CompilerDriver
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56466 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-22 20:50:40 +00:00