1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
Commit Graph

2256 Commits

Author SHA1 Message Date
Chris Lattner
30583c34ed make llvm-ld smart enough to link against native libraries that are
not in system library directories by checking -L paths as well.
Patch by Axel Naumann!

llvm-svn: 61730
2009-01-05 19:01:32 +00:00
Bill Wendling
58dc5669b7 Setting BUILD_ARCHIVE to 0 has the same effect as defining it to 1.
llvm-svn: 61599
2009-01-03 01:48:26 +00:00
Chris Lattner
f28c74870f Reimplement the old and horrible bison parser for .ll files with a nice
and clean recursive descent parser.

This change has a couple of ramifications:
1. The parser code is about 400 lines shorter (in what we maintain, not
   including what is autogenerated).
2. The code should be significantly faster than the old code because we 
   don't have to work around bison's poor handling of datatypes with 
   ctors/dtors.  This also makes the code much more resistant to memory 
   leaks.
3. We now get caret diagnostics from the .ll parser, woo.
4. The actual diagnostics emited from the parser are completely different
   so a bunch of testcases had to be updated.
5. I now disallow "%ty = type opaque %ty = type i32".  There was no good
   reason to support this, it was just an accident of the old 
   implementation.  I have no reason to think that anyone is actually using
   this.
6. The syntax for sticking a global variable has changed to make it 
   unambiguous.  I don't think anyone is depending on this since only clang
   supports this and it is not solid yet, so I'm not worried about anything
   breaking.
7. This gets rid of the last use of bison, and along with it the .cvs files.
   I'll prune this from the makefiles as a subsequent commit.

There are a few minor cleanups that can be done after this commit (suggestions
welcome!) but this passes dejagnu testing and is ready for its time in the
limelight.

llvm-svn: 61558
2009-01-02 07:01:27 +00:00
Misha Brukman
3eb537b893 Add spacing between type and variable name.
llvm-svn: 61530
2008-12-31 17:41:49 +00:00
Misha Brukman
ba68ff9a5d Comment headers should extend to 80 chars.
llvm-svn: 61529
2008-12-31 17:40:52 +00:00
Misha Brukman
6c8b57ddfa Fix spacing to be uniform for parameters.
llvm-svn: 61528
2008-12-31 17:39:58 +00:00
Duncan Sands
36db5853cb Rename AddReadAttrs to FunctionAttrs, and teach it how
to work out (in a very simplistic way) which function
arguments (pointer arguments only) are only dereferenced
and so do not escape.  Mark such arguments 'nocapture'.

llvm-svn: 61525
2008-12-31 16:14:43 +00:00
Mikhail Glushenkov
90baa08c2b Some enhancements for the 'case' expression.
Add (error) and (empty).

llvm-svn: 61117
2008-12-17 02:47:01 +00:00
Mikhail Glushenkov
2f6a78628d Add a comment to the auto-generated docs.
llvm-svn: 60985
2008-12-13 17:51:47 +00:00
Mikhail Glushenkov
e114e7652a Merge llvm-rst.css and llvm.css.
llvm-svn: 60984
2008-12-13 17:50:58 +00:00
Mikhail Glushenkov
8d8dd2f6a3 Some more documentation tweaks.
llvm-svn: 60970
2008-12-13 03:11:37 +00:00
Mikhail Glushenkov
37399780e2 More cosmetic tweaks for llvmc docs.
llvm-svn: 60969
2008-12-13 02:28:58 +00:00
Mikhail Glushenkov
0f084f3469 Fix W3C validator errors.
llvm-svn: 60912
2008-12-11 23:43:14 +00:00
Mikhail Glushenkov
7ac8dfbc99 Use correct file for the llvmc tutorial.
llvm-svn: 60910
2008-12-11 23:33:33 +00:00
Mikhail Glushenkov
24b3fd0fa8 Update the auto-generated llvmc documentation.
llvm-svn: 60909
2008-12-11 23:24:40 +00:00
Mikhail Glushenkov
0ed5bf3b7a Add a '-Wo,' option that passes options to opt.
llvm-svn: 60902
2008-12-11 22:19:14 +00:00
Mikhail Glushenkov
751b67348d 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.

llvm-svn: 60873
2008-12-11 10:38:06 +00:00
Mikhail Glushenkov
6f236eebcf Support -emit-llvm properly (with -S and -c).
llvm-svn: 60764
2008-12-09 14:40:18 +00:00
Dan Gohman
df0e24acce Generalize bugpoint's concept of a "safe" backend, and add options
to allow the "safe" backend to be run with a different path, and/or
with different command-line options.

This enables the following use cases:
 - bugpoint llc against an llc command from a different build
 - bugpoint llc against the same llc with different command-line options
 - and more...

Also, document the existing "custom" interpreter options.

llvm-svn: 60681
2008-12-08 04:02:47 +00:00
Oscar Fuentes
3eaab7ff7a CMake: Added Tool.cpp to tools/llvmc/driver.
llvm-svn: 60670
2008-12-07 17:01:16 +00:00
Mikhail Glushenkov
c1fc4efe85 Describe recent changes in the documentation.
llvm-svn: 60668
2008-12-07 16:47:42 +00:00
Mikhail Glushenkov
c75a4df77c Make 'extern' an option property.
Makes (forward) work better.

llvm-svn: 60667
2008-12-07 16:47:12 +00:00
Mikhail Glushenkov
bc0bc455b7 Plugin updates: support more options.
llvm-svn: 60666
2008-12-07 16:46:23 +00:00
Mikhail Glushenkov
72a5dd4ae6 Join tools couldn't be used in the middle of the toolchain.
llvm-svn: 60665
2008-12-07 16:45:37 +00:00
Mikhail Glushenkov
7a56e66e32 Enable the Clang plugin by default.
This will eventually replace `ccc`. The command `llvmc -clang` now uses
the Clang toolchain instead of `llvm-gcc`.

llvm-svn: 60661
2008-12-07 16:43:42 +00:00
Mikhail Glushenkov
53f66e6d9a Update plugins to use (actions).
llvm-svn: 60660
2008-12-07 16:43:17 +00:00
Mikhail Glushenkov
f01331152a Use (actions) instead of option properties, support external options.
Also includes a major refactoring. See documentation for more
information.

llvm-svn: 60656
2008-12-07 16:41:11 +00:00
Devang Patel
508dc0b548 Enable LoopIndexSplit pass.
llvm-svn: 60555
2008-12-04 21:40:31 +00:00
Nick Lewycky
d0b10fefba Remove warning about declaration does not declare anything. This class was
already declared in the other headers.

llvm-svn: 60261
2008-11-30 00:36:34 +00:00
Nick Lewycky
39e055d2a3 Add protected visibility to libLTO.
llvm-svn: 60257
2008-11-29 22:49:59 +00:00
Mikhail Glushenkov
ee55a49632 Scrap some boilerplate.
llvm-svn: 60200
2008-11-28 00:14:11 +00:00
Mikhail Glushenkov
187b171022 Add 'hidden' and 'really_hidden' option properties.
llvm-svn: 60198
2008-11-28 00:13:25 +00:00
Mikhail Glushenkov
45f83604cd Documentation: clarify what is meant by 'multiple edges'.
llvm-svn: 60197
2008-11-28 00:12:09 +00:00
Mikhail Glushenkov
869ded12c8 Disallow multiple edges.
llvm-svn: 60127
2008-11-26 22:59:45 +00:00
Devang Patel
c17a1f06f3 Disable -loop-index-split for now.
llvm-svn: 60087
2008-11-26 04:58:14 +00:00
Zhongxing Xu
985967aa25 Adjust indent.
llvm-svn: 60081
2008-11-26 02:57:24 +00:00
Oscar Fuentes
4588307b06 CMake: llvmc2 is now known as llvmc.
llvm-svn: 60052
2008-11-25 22:18:49 +00:00
Mikhail Glushenkov
89bfeb825b Since the old llvmc was removed, rename llvmc2 to llvmc.
llvm-svn: 60048
2008-11-25 21:38:12 +00:00
Mikhail Glushenkov
4877183f90 docs: Add author info + fix incorrect code example.
llvm-svn: 60046
2008-11-25 21:34:53 +00:00
Mikhail Glushenkov
a1314465ee Small documentation update.
llvm-svn: 60045
2008-11-25 21:34:29 +00:00
Mikhail Glushenkov
3a0ef826d3 Document the plugin priority feature.
llvm-svn: 60044
2008-11-25 21:34:01 +00:00
Andrew Lenharth
54748faa8a ignore the -m elf_i386 directive used in the linux kernel
llvm-svn: 59642
2008-11-19 17:00:08 +00:00
Mikhail Glushenkov
0c4ad9c7cc Support dependencies between plugins by priority-sorting.
llvm-svn: 59449
2008-11-17 17:30:25 +00:00
Mikhail Glushenkov
773924299a 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.

llvm-svn: 59447
2008-11-17 17:29:18 +00:00
Oscar Fuentes
bc0f4b6c9a CMake: Removed some cruft.
llvm-svn: 59376
2008-11-15 20:51:18 +00:00
Oscar Fuentes
d7820a0c15 CMake: Recursively invokes cmake using the right directories.
LLVM_MAIN_SRC_DIR and LLVM_BINARY_DIR are not the cmake top level
directories when LLVM is embedded on the build of other project.

Fixes PR #3072.

llvm-svn: 59374
2008-11-15 20:35:25 +00:00
Oscar Fuentes
c036da8d8e CMake: Remove unused tablegenning code from tools/llvmc2/driver.
llvm-svn: 59333
2008-11-14 23:59:50 +00:00
Daniel Dunbar
a830cb14f3 Add Binary flag to raw_fd_ostream constructor.
Document raw_fd_ostream's treatment of "-".

llvm-svn: 59219
2008-11-13 05:01:07 +00:00
Mikhail Glushenkov
bb1a81c8e7 Some cosmetic changes.
llvm-svn: 59096
2008-11-12 00:04:46 +00:00
Devang Patel
b3ecdedbe0 Remove incomplete lto-bugpoint tool. If there is an interest then we can resurrect this tool later on and finish implementation.
llvm-svn: 59071
2008-11-11 19:35:38 +00:00