Commit Graph

3010 Commits

Author SHA1 Message Date
Owen Anderson
1ad70e3bb4 Update the threading section to reflect current plans/implementation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73521 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 18:04:19 +00:00
Owen Anderson
5e8c50e550 Fix validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73515 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 17:40:28 +00:00
Eli Friedman
7ed5d56541 Remove the "llvm.umul.with.overflow is broken" warning; it should be
essentially working now, at least for common cases, and it shouldn't 
silently generate bad code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73484 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 10:24:13 +00:00
Owen Anderson
8bc1b3b7e5 Add initial stab at documenting the use of LLVM with threaded clients.
Comments welcome!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73456 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 01:17:16 +00:00
Mikhail Glushenkov
502106a713 Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73449 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-16 00:14:20 +00:00
Dan Gohman
125473b84c Rewrite the noredzone description, attempting to avoid confusing language.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73421 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15 21:18:01 +00:00
Dan Gohman
d87c9e35d1 Fix a typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73397 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15 18:22:49 +00:00
Dan Gohman
2185f9e1eb Reword the description of the noredzone attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73394 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15 17:37:09 +00:00
Torok Edwin
c457b65087 x86_64 was completely missing from the target triples supported by the X86 code
generator!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73385 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15 12:17:44 +00:00
Chris Lattner
8792232f99 remove some old CVS-specific arguments that don't work with SVN.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73369 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-15 04:18:54 +00:00
Devang Patel
5d96fdac41 Document noredzone and noimplicitfloat function attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73246 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-12 19:45:19 +00:00
Oscar Fuentes
af0f65fe6a CMake: New variable LLVM_LIBDIR_SUFFIX.
Patch by Ingmar Vanhassel!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73216 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-12 02:49:53 +00:00
Oscar Fuentes
cbdbcb12fc CMake: Documented how to cross-compile with CMake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73181 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-11 04:45:08 +00:00
David Greene
ffc0ab6037 Revert 73074 and 73099 because Windows doesn't have POSIX
regular expressions.  We will add an OpenBSD implementation
and re-apply ASAP.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73138 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09 18:31:17 +00:00
David Greene
0d973999f3 Add a !patsubst operator. Use on string types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73099 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08 23:05:37 +00:00
David Greene
ccbfb8d3d8 Update documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08 22:38:07 +00:00
Daniel Dunbar
87bde0b7d3 Document the stack alignment part of target data description.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73089 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08 22:17:53 +00:00
David Greene
938c8ab0a0 Add a !regmatch operator to do pattern matching in TableGen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73074 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08 17:00:34 +00:00
Nick Lewycky
9d813df391 Move </pre> to column one to avoid an extra line of spaces in the example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73003 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06 18:14:04 +00:00
Dan Gohman
ae3a0be92e 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-04 22:49:04 +00:00
Torok Edwin
347c7bbcb5 --plugin is not needed for bfd anymore. Update docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72867 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-04 16:08:10 +00:00
Oscar Fuentes
76941b2733 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72864 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-04 09:26:16 +00:00
Torok Edwin
4734ed8b87 lets not forget about c++!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72778 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-03 15:42:26 +00:00
Oscar Fuentes
81a875585c CMake: Implements and documents option LLVM_ENABLE_ASSERTS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72774 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-03 15:11:25 +00:00
Torok Edwin
5641f8d67f Document how easy it is to use the gold plugin and have LTO with autotooled projects.
Please correct the documentation if I missed anything.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72773 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-03 15:06:19 +00:00
Jay Foad
d244909b76 Document how phi and invoke instructions interact with SSA form.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72762 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-03 10:20:10 +00:00
Nick Lewycky
1e8c7a687d Metadata uses metadata type not empty struct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72623 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-30 16:08:30 +00:00
Nick Lewycky
7a0370f66a Give embedded metadata its own type instead of relying on EmptyStructTy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72610 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-30 05:06:04 +00:00
Bruno Cardoso Lopes
d80ddc0b64 Fix some typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72579 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-29 17:08:57 +00:00
Nick Lewycky
86c48647f3 Remove border around table used for layout.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72357 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-24 02:46:06 +00:00
Dan Gohman
f96a499535 Add a note mentioning that uses of the return value of an invoke
must be dominated by the normal label.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72285 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-22 21:47:08 +00:00
Stuart Hastings
c4c268b04f Add some missing steps to the sacred testing ritual scriptures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72222 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-21 20:23:59 +00:00
Cristian Cadar
fb57f1c8ec Test commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-19 01:56:08 +00:00
Evan Cheng
a7185b21d8 Add short descriptions of 'implicit' and 'parallel'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72050 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-18 22:14:45 +00:00
Bill Wendling
48839d9973 Formatting. Some updating of data structures. More work needs to be done to update the examples.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71974 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-17 05:52:39 +00:00
David Greene
9bea7c85d7 Implement !if, analogous to $(if) in GNU make.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71815 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 23:26:46 +00:00
David Greene
5f9f9ba00b 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71805 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 22:38:31 +00:00
David Greene
beb31a51f6 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."))>;


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71803 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 22:23:47 +00:00
David Greene
4afc509b7f 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>;


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71801 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 21:54:42 +00:00
David Greene
e6c27de069 Implement !cast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71794 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 21:22:49 +00:00
Jim Grosbach
06261cd882 clean up line-wrapping
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71771 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 15:44:15 +00:00
Jim Grosbach
f957012866 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).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71758 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-14 00:46:35 +00:00
Bill Wendling
587daedce2 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()).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71722 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-13 21:33:08 +00:00
Chris Lattner
7f3b36da51 garbage allocation is not a good idea :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71680 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-13 18:02:09 +00:00
Bill Wendling
588764eb38 Use llvm::raw_stream instead of llvm::Streams.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71573 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-12 18:29:42 +00:00
Nick Lewycky
cb33799b9f 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71407 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-10 20:57:05 +00:00
Chris Lattner
60150a3dc4 fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71362 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-09 18:11:50 +00:00
Bill Wendling
871eb0ab23 Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71260 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-08 20:49:29 +00:00
Duncan Sands
7af1c78b98 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71071 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-06 06:49:50 +00:00
Mikhail Glushenkov
d6d2efc4ce Regenerate documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71055 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-06 01:41:47 +00:00