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

3050 Commits

Author SHA1 Message Date
Devang Patel
95b4743214 Document noredzone and noimplicitfloat function attributes.
llvm-svn: 73246
2009-06-12 19:45:19 +00:00
Oscar Fuentes
9f16ef410d CMake: New variable LLVM_LIBDIR_SUFFIX.
Patch by Ingmar Vanhassel!

llvm-svn: 73216
2009-06-12 02:49:53 +00:00
Oscar Fuentes
fd06248a88 CMake: Documented how to cross-compile with CMake.
llvm-svn: 73181
2009-06-11 04:45:08 +00:00
David Greene
a51f014e59 Revert 73074 and 73099 because Windows doesn't have POSIX
regular expressions.  We will add an OpenBSD implementation
and re-apply ASAP.

llvm-svn: 73138
2009-06-09 18:31:17 +00:00
David Greene
e3c4370a47 Add a !patsubst operator. Use on string types.
llvm-svn: 73099
2009-06-08 23:05:37 +00:00
David Greene
5c75138561 Update documentation.
llvm-svn: 73092
2009-06-08 22:38:07 +00:00
Daniel Dunbar
89fef139c1 Document the stack alignment part of target data description.
llvm-svn: 73089
2009-06-08 22:17:53 +00:00
David Greene
21ba6012b2 Add a !regmatch operator to do pattern matching in TableGen.
llvm-svn: 73074
2009-06-08 17:00:34 +00:00
Nick Lewycky
cf715254c7 Move </pre> to column one to avoid an extra line of spaces in the example.
llvm-svn: 73003
2009-06-06 18:14:04 +00:00
Dan Gohman
5f6f8101d5 Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt

llvm-svn: 72897
2009-06-04 22:49:04 +00:00
Torok Edwin
8c34bcb7ab --plugin is not needed for bfd anymore. Update docs.
llvm-svn: 72867
2009-06-04 16:08:10 +00:00
Oscar Fuentes
cbaf5a8795 CMake: Renamed LLVM_ENABLE_ASSERTS to
LLVM_ENABLE_ASSERTIONS. Fine-tuned the logic that controls the
definition of NDEBUG and _DEBUG macros.

Thanks to Jay Foad for this suggestions.

llvm-svn: 72864
2009-06-04 09:26:16 +00:00
Torok Edwin
29762633ee lets not forget about c++!
llvm-svn: 72778
2009-06-03 15:42:26 +00:00
Oscar Fuentes
86f4f18dca CMake: Implements and documents option LLVM_ENABLE_ASSERTS.
llvm-svn: 72774
2009-06-03 15:11:25 +00:00
Torok Edwin
e056d0b8cd Document how easy it is to use the gold plugin and have LTO with autotooled projects.
Please correct the documentation if I missed anything.

llvm-svn: 72773
2009-06-03 15:06:19 +00:00
Jay Foad
203127a106 Document how phi and invoke instructions interact with SSA form.
llvm-svn: 72762
2009-06-03 10:20:10 +00:00
Nick Lewycky
b7afbf8a63 Metadata uses metadata type not empty struct.
llvm-svn: 72623
2009-05-30 16:08:30 +00:00
Nick Lewycky
a9de2f1c81 Give embedded metadata its own type instead of relying on EmptyStructTy.
llvm-svn: 72610
2009-05-30 05:06:04 +00:00
Bruno Cardoso Lopes
6ec3c6fab6 Fix some typos
llvm-svn: 72579
2009-05-29 17:08:57 +00:00
Nick Lewycky
c8242fc08b Remove border around table used for layout.
llvm-svn: 72357
2009-05-24 02:46:06 +00:00
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
Misha Brukman
6cee2e6033 Fixed spelling.
llvm-svn: 68821
2009-04-10 20:48:27 +00:00
Chris Lattner
0b8f2eafad fix typo, patch by Shlomi Fish!
llvm-svn: 68784
2009-04-10 15:38:51 +00:00
Chris Lattner
fc47fb0629 Remove AllowInverse: it leaks memory and is not the right
abstraction for CommandLine.

llvm-svn: 68588
2009-04-08 03:43:51 +00:00
Bill Wendling
f833088369 Use 'name' instead of 'href'.
llvm-svn: 68534
2009-04-07 18:54:06 +00:00
Bill Wendling
3da6e4a800 Fix verification failure.
llvm-svn: 68531
2009-04-07 18:52:30 +00:00
Bill Wendling
d8ad7f85a3 Offer an explanation of why building LLVM-GCC with objdir == srcdir doesn't
work.

llvm-svn: 68530
2009-04-07 18:51:13 +00:00
Bill Wendling
fad0a6efa8 Another reformatting. No change in docs.
llvm-svn: 68528
2009-04-07 18:40:56 +00:00
Chris Lattner
ac7e143979 add a new Blob encoding abbreviation for bitcode files that emits
elements in a form that is efficient for the reader to just get a
pointer in memory and start reading.  APIs to do efficient reading
and writing are still todo.

llvm-svn: 68465
2009-04-06 21:50:39 +00:00
Chris Lattner
367120583b clean up some html
llvm-svn: 68456
2009-04-06 20:35:19 +00:00
Bill Wendling
ca348b1f8e Add character encoding declaration to fix verification warning.
llvm-svn: 68440
2009-04-05 12:38:44 +00:00
Bill Wendling
c9e0b30d02 Obsessively format this document.
llvm-svn: 68439
2009-04-05 12:37:44 +00:00
Bill Wendling
ce489ee879 Add character encoding declaration.
llvm-svn: 68433
2009-04-05 00:44:06 +00:00
Bill Wendling
1b27430c80 Fix validation error.
llvm-svn: 68432
2009-04-05 00:43:04 +00:00
Bill Wendling
de19a199b5 A lot of formatting changes.
llvm-svn: 68431
2009-04-05 00:41:19 +00:00
Bill Wendling
6ccfb904ac Fix some HTML validation errors.
llvm-svn: 68427
2009-04-04 22:36:02 +00:00
Bill Wendling
c4f6e63a82 General clean-up of the bitcode format documentation. Having the paragraphs
formatted the same, putting words in <tt> tags, adding &mdash;s, etc.

llvm-svn: 68426
2009-04-04 22:27:03 +00:00
Nick Lewycky
eea5412e19 Add support for embedded metadata to LLVM. This introduces two new types of
Constant, MDString and MDNode which can only be used by globals with a name
that starts with "llvm." or as arguments to a function with the same naming
restriction.

llvm-svn: 68420
2009-04-04 07:22:01 +00:00
Bill Wendling
02eab17c83 Duplicate entry.
llvm-svn: 68401
2009-04-03 20:32:13 +00:00
Chris Lattner
6a9249765e "Add documentation about the fix for missing x86
target library in windows under the "Common problems" section."

Patch by Stefanus Du Toit!

llvm-svn: 68399
2009-04-03 20:23:52 +00:00
Chris Lattner
c8f5edab31 update some syntax
llvm-svn: 68362
2009-04-03 00:29:19 +00:00
Chris Lattner
2475b3316b add this to SVN to allow collaborative hacking.
llvm-svn: 68243
2009-04-01 21:11:04 +00:00
John Mosby
9b1b8d54fe docs/TestingGuide.html: correction to prev. text (objdir!=srcdir required for running test-suite), removed refs to llvm-test
llvm-svn: 68051
2009-03-30 18:56:53 +00:00
Chris Lattner
1901988355 fix some validation problems.
llvm-svn: 68026
2009-03-30 06:34:59 +00:00
John Mosby
8d4d6376bb Clarify section on setting up and running test-suite
llvm-svn: 68023
2009-03-30 04:37:51 +00:00
Bill Wendling
475a59038c Update the Visual Studio docs. Patch by Stefanus!
llvm-svn: 67940
2009-03-28 10:24:15 +00:00
Mikhail Glushenkov
d1d0033738 Documentation update.
Expand a bit on various '--*-graph' options.

llvm-svn: 67836
2009-03-27 12:58:29 +00:00
Duncan Sands
dd613ae0dd Mention explicitly that the Ada front-end will not bootstrap.
The configure line had --disable-bootstrap, but it was not
clear that this is essential.

llvm-svn: 67651
2009-03-24 21:16:39 +00:00
Chris Lattner
5e7dd59063 tt'ify.
llvm-svn: 67505
2009-03-23 04:53:34 +00:00
Chris Lattner
750312aa5e VC++ 6.0 is not future work :)
Do not recommend llvm::OStream anymore.  Use raw_ostream or MemoryBuffer.

llvm-svn: 67504
2009-03-23 04:52:53 +00:00
Duncan Sands
dca010d0d7 Add some explanations of how apint loads and stores
work.

llvm-svn: 67471
2009-03-22 11:33:16 +00:00