Commit Graph

38611 Commits

Author SHA1 Message Date
Owen Anderson
8b23bb792e We need to update PHIs containing the exiting block, not the exit block. We really should come up with better names for these.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50770 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 20:55:16 +00:00
Gordon Henriksen
919852b0e6 Improve documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50768 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 19:17:01 +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
2e9e0c2951 Move test files around a bit - fixes the reported number of test cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50761 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:16:20 +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
ceda1734cc Add two (currently failing) tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50752 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:11:21 +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
ecbdcf2ae0 Rename LLVMCCConfigurationEmitter to LLVMCConfigurationEmitter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50748 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 18:09:29 +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
ee628d93aa Small output formatting fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50739 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:27:15 +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
3c30e6c653 First small tests for llvmc2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50734 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:24:54 +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
9ef501b120 Refactoring: extract method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50731 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 17:23:14 +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
Duncan Sands
c8d9fe6bf9 Testcase for PR2292.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50718 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 14:56:40 +00:00
Bill Wendling
1f85129eb7 Remove tar ball from installed directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50717 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 08:33:07 +00:00
Evan Cheng
21037da713 Fix PR2287. Darwin passes mmx values in register in 64-mode, not Linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50716 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 07:23:50 +00:00
Devang Patel
d1e50edf5a Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50713 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 05:40:11 +00:00
Nick Lewycky
08de613d2d Fix typo and indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50706 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 04:03:18 +00:00
Nick Lewycky
5c632e904c Fix renamePathOnDisk on Win32, patch from David Leon. This fixes problems with
llvm-ar being unable to rename files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50702 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 03:42:21 +00:00
Chris Lattner
9b34849a6b fix typo Duncan noticed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50699 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-06 02:31:18 +00:00