Nick Lewycky
d46a7b2d22
Remove the vicmp and vfcmp instructions. Because we never had a release with
...
these instructions, no autoupgrade or backwards compatibility support is
provided.
llvm-svn: 74991
2009-07-08 03:04:38 +00:00
Duncan Sands
02f2e932e3
Clarify that if the alignment is zero then an alignment
...
compatible with the type will be used (at least the ABI
alignment).
llvm-svn: 73827
2009-06-20 13:26:06 +00:00
Eli Friedman
705de594b2
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.
llvm-svn: 73484
2009-06-16 10:24:13 +00:00
Dan Gohman
22c89d779b
Rewrite the noredzone description, attempting to avoid confusing language.
...
llvm-svn: 73421
2009-06-15 21:18:01 +00:00
Dan Gohman
daf11a4a54
Reword the description of the noredzone attribute.
...
llvm-svn: 73394
2009-06-15 17:37:09 +00:00
Devang Patel
95b4743214
Document noredzone and noimplicitfloat function attributes.
...
llvm-svn: 73246
2009-06-12 19:45:19 +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
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
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
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
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
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
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
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
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
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
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
Duncan Sands
dca010d0d7
Add some explanations of how apint loads and stores
...
work.
llvm-svn: 67471
2009-03-22 11:33:16 +00:00
Duncan Sands
b27c523449
It makes no sense to have a ODR version of common
...
linkage, so remove it.
llvm-svn: 66690
2009-03-11 20:14:15 +00:00
Duncan Sands
aadb34c357
Remove the one-definition-rule version of extern_weak
...
linkage: this linkage type only applies to declarations,
but ODR is only relevant to globals with definitions.
llvm-svn: 66650
2009-03-11 08:08:06 +00:00
Chris Lattner
952dfa96b7
Clarify wording, patch by Stefanus Du Toit!
...
llvm-svn: 66458
2009-03-09 20:55:18 +00:00
Duncan Sands
5ab54d488f
Introduce new linkage types linkonce_odr, weak_odr, common_odr
...
and extern_weak_odr. These are the same as the non-odr versions,
except that they indicate that the global will only be overridden
by an *equivalent* global. In C, a function with weak linkage can
be overridden by a function which behaves completely differently.
This means that IP passes have to skip weak functions, since any
deductions made from the function definition might be wrong, since
the definition could be replaced by something completely different
at link time. This is not allowed in C++, thanks to the ODR
(One-Definition-Rule): if a function is replaced by another at
link-time, then the new function must be the same as the original
function. If a language knows that a function or other global can
only be overridden by an equivalent global, it can give it the
weak_odr linkage type, and the optimizers will understand that it
is alright to make deductions based on the function body. The
code generators on the other hand map weak and weak_odr linkage
to the same thing.
llvm-svn: 66339
2009-03-07 15:45:40 +00:00
Bill Wendling
012bf508b5
Fix grammaro.
...
llvm-svn: 65727
2009-02-28 22:12:54 +00:00
Chris Lattner
0472bd03d4
don't use the word 'aggregate' with constants, it is confusing.
...
llvm-svn: 65702
2009-02-28 18:32:25 +00:00
Chris Lattner
61fca97b76
don't redescribe bitcast constraints in two places. It is not valid to
...
bitcast from one aggregate to another.
llvm-svn: 65700
2009-02-28 18:27:03 +00:00
Nick Lewycky
3134ef23bb
Update this text for first-class aggregates.
...
llvm-svn: 65697
2009-02-28 17:30:06 +00:00
Nick Lewycky
494b48e76b
Demonstrate the act of including multiple space-separated parameter attributes,
...
by request on IRC.
llvm-svn: 64619
2009-02-15 23:06:14 +00:00
Dale Johannesen
9a80b9d451
Edit description of floating point constants to
...
reflect reality. Acknowledgements to John Clements
for prodding me into this.
llvm-svn: 64332
2009-02-11 22:14:51 +00:00
Chris Lattner
62e48b2e3b
fix typo, patch by Jonathan Brandmeyer!
...
llvm-svn: 64132
2009-02-09 10:00:56 +00:00
Bill Wendling
19c640efd1
Document llvm.umul.with.overflow indicating that it's badly broken and not intended for use.
...
llvm-svn: 64104
2009-02-08 23:00:09 +00:00
Chris Lattner
c3f02abe2b
I can't type today apparently.
...
llvm-svn: 64097
2009-02-08 22:21:28 +00:00
Chris Lattner
4a31df9488
fix typo
...
llvm-svn: 64090
2009-02-08 19:59:51 +00:00
Chris Lattner
4a51a59a4b
document pointer type constraints, PR3513
...
llvm-svn: 64088
2009-02-08 19:53:29 +00:00
Bill Wendling
b2e94f5ae0
Fixes from feedback.
...
llvm-svn: 64070
2009-02-08 04:04:40 +00:00
Bill Wendling
511a92524b
Document the 'llvm.OP.with.overflow' intrinsics.
...
llvm-svn: 64066
2009-02-08 01:40:31 +00:00
Chris Lattner
9a13b357c6
PR3485, document alignment on byref.
...
llvm-svn: 63836
2009-02-05 05:42:28 +00:00
Chris Lattner
408b359e6e
validation error fix.
...
llvm-svn: 63503
2009-02-02 07:33:15 +00:00
Chris Lattner
27bf492e30
Document type upreferences (PR3380), patch by Stein Roger Skafløtten
...
with enhancements and corrections by me.
llvm-svn: 63502
2009-02-02 07:32:36 +00:00
Dan Gohman
017bf94fbc
Add more documentation mentioning the limitations due to PR2660.
...
llvm-svn: 62919
2009-01-24 15:58:40 +00:00
Dan Gohman
3f9d24dca8
Add a few more notes about LLVM IR features that codegen doesn't
...
yet support.
llvm-svn: 62739
2009-01-22 01:39:38 +00:00
Duncan Sands
2bb8d618ad
Grammar fix.
...
llvm-svn: 62319
2009-01-16 09:29:46 +00:00