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 '>' 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