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

2980 Commits

Author SHA1 Message Date
Dan Gohman
00b088d848 Add a note mentioning that uses of the return value of an invoke
must be dominated by the normal label.

llvm-svn: 72285
2009-05-22 21:47:08 +00:00
Stuart Hastings
bf369bba4a Add some missing steps to the sacred testing ritual scriptures.
llvm-svn: 72222
2009-05-21 20:23:59 +00:00
Cristian Cadar
9c425ac042 Test commit.
llvm-svn: 72092
2009-05-19 01:56:08 +00:00
Evan Cheng
96674b2285 Add short descriptions of 'implicit' and 'parallel'.
llvm-svn: 72050
2009-05-18 22:14:45 +00:00
Bill Wendling
97af952d7a Formatting. Some updating of data structures. More work needs to be done to update the examples.
llvm-svn: 71974
2009-05-17 05:52:39 +00:00
David Greene
9a1e15d0d0 Implement !if, analogous to $(if) in GNU make.
llvm-svn: 71815
2009-05-14 23:26:46 +00:00
David Greene
70881bc6ae Graduate LLVM to the big leagues by embedding a LISP processor into TableGen.
Ok, not really, but do support some common LISP functions:

* car
* cdr
* null

llvm-svn: 71805
2009-05-14 22:38:31 +00:00
David Greene
fab0ee79db Implement a !foreach operator analogous to GNU make's $(foreach).
Use it on dags and lists like this:

class decls {
  string name;
}

def Decls : decls;

class B<list<string> names> : A<!foreach(Decls.name, names, !strconcat(Decls.name, ", Sr."))>;

llvm-svn: 71803
2009-05-14 22:23:47 +00:00
David Greene
26054a566e Implement a !subst operation simmilar to $(subst) in GNU make to do
def/var/string substitution on generic pattern templates.  For example:

def Type;
def v4f32 : Type;
def TYPE : Type;

class GenType<Type t> {
  let type = !(subst TYPE, v4f32, t);
}

def TheType : GenType<TYPE>;

llvm-svn: 71801
2009-05-14 21:54:42 +00:00
David Greene
e2871b8c65 Implement !cast.
llvm-svn: 71794
2009-05-14 21:22:49 +00:00
Jim Grosbach
f3e59935c3 clean up line-wrapping
llvm-svn: 71771
2009-05-14 15:44:15 +00:00
Jim Grosbach
bed3aeff20 Update the names of the exception handling sjlj instrinsics to
llvm.eh.sjlj.* for better clarity as to their purpose and scope. Add
a description of llvm.eh.sjlj.setjmp to ExceptionHandling.html.
(llvm.eh.sjlj.longjmp documentation coming when that implementation is
added).

llvm-svn: 71758
2009-05-14 00:46:35 +00:00
Bill Wendling
e421c8f63d Change MachineInstrBuilder::addReg() to take a flag instead of a list of
booleans. This gives a better indication of what the "addReg()" is
doing. Remembering what all of those booleans mean isn't easy, especially if you
aren't spending all of your time in that code.

I took Jakob's suggestion and made it illegal to pass in "true" for the
flag. This should hopefully prevent any unintended misuse of this (by reverting
to the old way of using addReg()).

llvm-svn: 71722
2009-05-13 21:33:08 +00:00
Chris Lattner
e5e368472b garbage allocation is not a good idea :)
llvm-svn: 71680
2009-05-13 18:02:09 +00:00
Bill Wendling
562178b9a4 Use llvm::raw_stream instead of llvm::Streams.
llvm-svn: 71573
2009-05-12 18:29:42 +00:00
Nick Lewycky
f417462ddf Make MDNode use CallbackVH. Also change MDNode to store Value* instead of
Constant* in preperation of a future change to support holding non-Constants
in an MDNode.

llvm-svn: 71407
2009-05-10 20:57:05 +00:00
Chris Lattner
e8160d0836 fix typo
llvm-svn: 71362
2009-05-09 18:11:50 +00:00
Bill Wendling
3bb11df772 Fix typo.
llvm-svn: 71260
2009-05-08 20:49:29 +00:00
Duncan Sands
880eaf5278 Allow readonly functions to unwind exceptions. Teach
the optimizers about this.  For example, a readonly
function with no uses cannot be removed unless it is
also marked nounwind.

llvm-svn: 71071
2009-05-06 06:49:50 +00:00
Mikhail Glushenkov
2a24374c7f Regenerate documentation.
llvm-svn: 71055
2009-05-06 01:41:47 +00:00
Dan Gohman
ad61ec36ad Add some more documentation for x86 special address spaces.
llvm-svn: 71012
2009-05-05 20:48:47 +00:00
Chris Lattner
5cc9a36d1c Add basic support for code generation of
addrspace(257) -> FS relative on x86.  Patch by Zoltan Varga!

llvm-svn: 70992
2009-05-05 18:52:19 +00:00
Anton Korobeynikov
fca7d58578 It turns out that this version of gcc is broken (cygwin is well-known in shipping
of broken/buggy/snapshot-based compilers)

llvm-svn: 70848
2009-05-04 10:24:46 +00:00
Chris Lattner
b38edd3714 Remove obsolete wording, the only exception a readnone function can throw
is the empty set. :)  Thanks to Fritz for pointing this out.

llvm-svn: 70790
2009-05-03 19:06:00 +00:00
Chris Lattner
abf304f36e be very explicit that readnone/readonly functions can't
throw exceptions.

llvm-svn: 70788
2009-05-03 18:49:37 +00:00
Misha Brukman
064820037b HTML-escape '>' as '&gt;' in sample C++ code.
llvm-svn: 70569
2009-05-01 20:40:51 +00:00
Jeffrey Yasskin
7263dc71e2 Add a mention of TypeBuilder to the programmer's manual, and clean up the class
comment a bit.

llvm-svn: 70515
2009-04-30 22:33:41 +00:00
Bill Wendling
7546bed590 Second attempt:
Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.

Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'll change the JIT with a follow-up patch.

llvm-svn: 70343
2009-04-29 00:15:41 +00:00
Duncan Sands
8ba0b4d4f2 Fix some confusion in the Ada f-e build instructions between
building without optimization and building with checking.

llvm-svn: 70205
2009-04-27 11:21:35 +00:00
Sanjiv Gupta
e903d414ee Now that any size of integer indices are allowed for sequential types, remove the unneccessary gyan about promoting them.
llvm-svn: 70181
2009-04-27 03:21:00 +00:00
Chris Lattner
f84ee5d944 Add two new record types to the blockinfo block:
BLOCKNAME and SETRECORDNAME.  This allows a bitcode
file to be self describing with pretty names for 
records and blocks in addition to numbers.  This
enhances llvm-bcanalyzer to use this to print prettily.

llvm-svn: 70165
2009-04-26 22:21:57 +00:00
Sanjiv Gupta
0877e1eabe Any size of integral indices are allowed in gep for indexing into sequential types. Also adding a test case to check the indices type allowed into struct.
llvm-svn: 70134
2009-04-26 17:14:35 +00:00
Chris Lattner
d31285fdb7 improve documentation on build configurations, patch by
Josef Eisl!

llvm-svn: 70087
2009-04-25 22:24:49 +00:00
Chris Lattner
6d2e830ad8 aDd support for building a subset of the llvm tools, patch by Jeffrey Yasskin!
llvm-svn: 70082
2009-04-25 22:08:52 +00:00
Chris Lattner
c23e28732d Update docs to not mention gcse/loadvn and mention memdep and
new stuff.  PR3924.

llvm-svn: 70077
2009-04-25 21:11:37 +00:00
Sanjiv Gupta
9093a67350 Fixed the gep example for i16 type indices.
llvm-svn: 70019
2009-04-25 07:27:44 +00:00
Sanjiv Gupta
14c405828e Fixed spaces and the getelementpointer example with i16 type indices.
llvm-svn: 69971
2009-04-24 16:38:13 +00:00
Sanjiv Gupta
f1177e1be7 Allow i16 type indices to gep.
llvm-svn: 69946
2009-04-24 02:37:54 +00:00
David Greene
ddac45edb9 Fix a documentation bug.
llvm-svn: 69923
2009-04-23 21:27:58 +00:00
David Greene
a92a50c7c2 Make BinOps typed and require a type specifier for !nameconcat. This
allows binops to be used in typed contexts such as when passing
arguments to classes.

llvm-svn: 69921
2009-04-23 21:25:15 +00:00
David Greene
e41e6599cf Allow defm to inherit from multiple multiclasses.
llvm-svn: 69832
2009-04-22 22:17:51 +00:00
David Greene
0698602922 Implement !nameconcat to concatenate strings and look up the resulting
name in the symbol table, returning an object.

llvm-svn: 69822
2009-04-22 20:18:10 +00:00
David Greene
9d99a33f27 Implement multiclass inheritance.
llvm-svn: 69810
2009-04-22 16:42:54 +00:00
Dan Gohman
640b379ae6 ISD::ADD_PARTS is gone; use ISD::SMUL_LOHI as an example instead.
llvm-svn: 69804
2009-04-22 15:55:31 +00:00
Duncan Sands
ece3370566 Make it clearer that llvm-gcc is not needed for
building llvm.

llvm-svn: 69441
2009-04-18 12:40:19 +00:00
Jim Grosbach
0603bca31b Update information on canadian cross builds
llvm-svn: 69358
2009-04-17 17:25:16 +00:00
Bill Wendling
1b271d471e More obsessive reformatting. Fixed some validation errors.
llvm-svn: 69130
2009-04-15 02:12:37 +00:00
Chris Lattner
c1bfdc9bb2 Add a new "available_externally" linkage type. This is intended
to support C99 inline, GNU extern inline, etc.  Related bugzilla's
include PR3517, PR3100, & PR2933.  Nothing uses this yet, but it
appears to work.

llvm-svn: 68940
2009-04-13 05:44:34 +00:00
Nick Lewycky
92b1375909 Add paragraph tags.
llvm-svn: 68934
2009-04-13 02:03:40 +00:00
Nick Lewycky
2874a8dd3d Fix compile error. Pointed out by mait on #llvm IRC!
llvm-svn: 68910
2009-04-12 20:15:44 +00:00