Tanya Lattner
0561f78a14
Revertin 50867 since it was breaking the build.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50871 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-08 21:54:20 +00:00
Mikhail Glushenkov
194a78f149
Add -E and -S options
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50868 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-08 20:02:36 +00:00
Mikhail Glushenkov
21607fa63c
A small refactoring (extract method) + some comment fixes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50867 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-08 20:02:03 +00:00
Mikhail Glushenkov
4561ab5d81
Use Doxygen-style comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50833 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-07 21:50:19 +00:00
Owen Anderson
77a895e599
Disable loop deletion until the release branch.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50787 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 23:56:34 +00:00
Mikhail Glushenkov
e0ff9ae91e
Change from llvm::SmallSet<std::string> to llvm::StringMap<char>.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50766 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:18:58 +00:00
Mikhail Glushenkov
29063554d0
Add new edge property combinator: weight.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50765 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:18:20 +00:00
Mikhail Glushenkov
6a6cd729aa
Add a help string for the -c option
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50764 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:17:42 +00:00
Mikhail Glushenkov
77ddce97ad
Update documentation to reflect the current state of affairs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50763 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:17:19 +00:00
Mikhail Glushenkov
be86712de8
Some cosmetic changes (change some comments, move code around a bit).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50762 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:16:52 +00:00
Mikhail Glushenkov
4c11a62d69
Refactoring: split the function CompilationGraph::Build() into two parts.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50760 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:15:35 +00:00
Mikhail Glushenkov
76b1b24dc8
Use edge weights to choose the right linker based on input language names.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50759 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:15:12 +00:00
Mikhail Glushenkov
bb8b58dcf3
Add weights to graph edges. Choose between edges based on their weight.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50757 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:14:24 +00:00
Mikhail Glushenkov
d83038c960
Remove the UnpackValues() function.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50756 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:13:45 +00:00
Mikhail Glushenkov
978d498e40
Add a --linker command-line option, make all tests pass.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50755 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:13:00 +00:00
Mikhail Glushenkov
895820da24
Naming fix: LLVMCCConfigurationEmitter -> LLVMCConfigurationEmitter.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50754 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:12:03 +00:00
Mikhail Glushenkov
87416b4cea
Add -x option (like in gcc).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50750 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:10:53 +00:00
Mikhail Glushenkov
35a85e8453
Take object file as input and handle files with the same name correctly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50749 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:10:20 +00:00
Mikhail Glushenkov
be9d9a153f
Add output redirection, rename namespace llvmcc to namespace llvmc.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50746 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:08:59 +00:00
Mikhail Glushenkov
f7bab8c743
Make AutoGenerated.inc depend also on Tools.td and Common.td
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50745 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:08:12 +00:00
Mikhail Glushenkov
3d688228f6
Utilize topological sort in CompilationGraph::Build().
...
This makes more interesting graph topologies possible. Currently all tests pass,
but more testing is needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50744 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:07:48 +00:00
Mikhail Glushenkov
0260658079
Add TopologicalSort method to CompilationGraph.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50743 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:07:14 +00:00
Mikhail Glushenkov
d7bb87a5a3
Do not require positional arguments when we're only printing out the graph.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50742 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:44:16 +00:00
Mikhail Glushenkov
4f6e3a497e
Make ChooseEdge more generic and use it to choose between different toolchains.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50741 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:28:03 +00:00
Mikhail Glushenkov
bbbc9d4384
Remove unnecessary argument from PassThroughGraph
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50740 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:27:37 +00:00
Mikhail Glushenkov
c74bfc946d
Add inward edge counters to Nodes; Associate JoinLists with JoinTools.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50738 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:26:53 +00:00
Mikhail Glushenkov
97fda6d915
Enhancements for --view-graph
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50737 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:26:14 +00:00
Mikhail Glushenkov
2ba4c5abab
Split the Build function into two parts.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50736 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:25:51 +00:00
Mikhail Glushenkov
d81887841c
Make llvmc return 1 when the compilation fails.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50735 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:25:23 +00:00
Mikhail Glushenkov
b96cb60827
Return const char* instead of std::string in Tool classes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50733 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:24:26 +00:00
Mikhail Glushenkov
6591c8938c
Add an ability to choose between different edges based on edge properties.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50732 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:23:50 +00:00
Mikhail Glushenkov
64683edb4d
Add new edge properties: parameter_equals, element_in_list, and.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50730 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:22:47 +00:00
Mikhail Glushenkov
581936a99c
Implemented switch_on edge property.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50729 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:22:03 +00:00
Mikhail Glushenkov
a4db8c070f
Cosmetic change: if( -> if (
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50728 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:37:33 +00:00
Mikhail Glushenkov
e74420ab24
Remove ExampleWithOpt.td: this file was merged with Example.td.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50727 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:37:12 +00:00
Mikhail Glushenkov
d752c3ffd8
More work on edge properties. Use Edge classes instead of strings in CompilationGraph.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50726 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:36:50 +00:00
Mikhail Glushenkov
0a174930e2
Ongoing work: add an edge typechecker, rudimentary support for edge properties.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50725 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:36:06 +00:00
Mikhail Glushenkov
0d08db0345
Convert internal representation to use DAG. This gives us more flexibility and enables future improvements.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50724 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:35:25 +00:00
Mikhail Glushenkov
aa4948f992
Small const-correctness fix
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50723 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:34:39 +00:00
Mikhail Glushenkov
b90cd834ca
Code reorg
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50722 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 16:34:12 +00:00
Owen Anderson
3f3d95c75a
Enable dead loop elimination.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50682 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-05 23:38:07 +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
Anton Korobeynikov
a9d9ca469f
Drop llvm2cpp, it's now a llc target
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50614 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-04 06:16:50 +00:00
Chris Lattner
866b9e1520
move libcalls to the same place llvm-gcc has it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50593 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-02 22:05:06 +00:00
Anton Korobeynikov
9ef7425a4d
Add possibility of using arbitrary to to execute stuff from bugpoint.
...
Patch by Pekka Jääskeläinen!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50373 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-28 20:53:48 +00:00
Chris Lattner
e78109eb3a
several multiple-retval fixes for bugpoint.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50331 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-28 00:04:58 +00:00
Nick Lewycky
280a6e607d
Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989
...
r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50265 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-25 16:53:59 +00:00
Anton Korobeynikov
9692db9c09
Disable building of llvm2cpp. The directory will be removed before 2.3 release.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50193 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-23 22:46:24 +00:00
Anton Korobeynikov
5027652b8a
First step of implementing PR1538: move llvm2cpp logic to new 'target'
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50189 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-23 22:29:24 +00:00
Bill Wendling
480311b548
Use the Create static method for some of these objects. They no longer
...
have public constructors. This should fix PR2246.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50145 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-23 07:13:17 +00:00