Duncan Sands
825bde45cc
Note that 'nest' only applies to pointers.
...
llvm-svn: 53226
2008-07-08 09:27:25 +00:00
Mon P Wang
6a490371c9
Added MemOperands to Atomic operations since Atomics touches memory.
...
Added abstract class MemSDNode for any Node that have an associated MemOperand
Changed atomic.lcs => atomic.cmp.swap, atomic.las => atomic.load.add, and
atomic.lss => atomic.load.sub
llvm-svn: 52706
2008-06-25 08:15:39 +00:00
Dan Gohman
88ce1a5b6b
Fix the syntax of insertvalue in the example.
...
llvm-svn: 52623
2008-06-23 15:26:37 +00:00
Chris Lattner
e4645615d3
integer types are not primitive, they are derived.
...
llvm-svn: 52551
2008-06-20 20:50:48 +00:00
Dan Gohman
08783a88a2
Fix a missing comma spotted by Bram Geron.
...
llvm-svn: 52467
2008-06-18 18:42:13 +00:00
Dan Gohman
1ecaf45cf1
IR, bitcode reader, bitcode writer, and asmparser changes to
...
insertvalue and extractvalue to use constant indices instead of
Value* indices. And begin updating LangRef.html.
There's definately more to come here, but I'm checking this
basic support in now to make it available to people who are
interested.
llvm-svn: 51806
2008-05-31 00:58:22 +00:00
Dale Johannesen
4188aadbb2
Document common linkage.
...
llvm-svn: 51517
2008-05-23 23:13:41 +00:00
Dan Gohman
da52d216e6
label is a first-class type.
...
llvm-svn: 51512
2008-05-23 22:50:26 +00:00
Dan Gohman
34d1c0d0f8
Update the description of first-class types to reflect that
...
structs and arrays are now first-class. And fix a sentance
fragment in the insertvalue description. Thanks to Chris
for pointing these out!
llvm-svn: 51506
2008-05-23 21:53:15 +00:00
Chris Lattner
b54c30fab3
Clarify that and/or/xor/sdiv etc all allow vectors.
...
llvm-svn: 51335
2008-05-20 20:48:21 +00:00
Arnold Schwaighofer
2c6b88816d
Add documentation for tail call optimization to CodeGenerator.html. Add a link
...
referring to it to LangRef.html.
llvm-svn: 51097
2008-05-14 09:17:12 +00:00
Dan Gohman
35a835cb60
s/indicies/indices/ and clarify the extractvalue and insertvalue are
...
working with struct field or array element values. Thanks Duncan!
llvm-svn: 51059
2008-05-13 18:16:06 +00:00
Dan Gohman
b9d6660998
Initial documentation for first-class aggregates changes.
...
llvm-svn: 51013
2008-05-12 23:51:09 +00:00
Dan Gohman
43ba067132
Fix a malformed %gt;
...
llvm-svn: 51011
2008-05-12 23:38:42 +00:00
Nate Begeman
d21957002a
Add two new instructions to the llvm IR, vicmp and vfcmp. see updated LangRef
...
for details. CodeGen support coming in a follow up patch
llvm-svn: 50985
2008-05-12 19:01:56 +00:00
Chris Lattner
851b77113f
Doc updates/edits, contributed by Terence Parr!
...
llvm-svn: 50205
2008-04-24 05:59:56 +00:00
Chris Lattner
da508ac5d8
fix description of 'ret' to be more correct with multiple return
...
values. Clarify that it is impossible to 'multiply return' a
struct with zero elements.
llvm-svn: 50131
2008-04-23 04:59:35 +00:00
Chris Lattner
1a640a6491
Allow undef as an operand to getresult.
...
llvm-svn: 50130
2008-04-23 04:06:52 +00:00
Chris Lattner
0f103e1304
free(null) -> noop
...
llvm-svn: 49972
2008-04-19 22:41:32 +00:00
Chris Lattner
fe8519c818
Some clarifications suggested by Jon Sargeant
...
llvm-svn: 49963
2008-04-19 21:01:16 +00:00
Chris Lattner
1f17cce2eb
more edits from Jon Sargeant
...
llvm-svn: 49065
2008-04-02 00:38:26 +00:00
Chris Lattner
81f929763c
add a dropped hunk from Jon Sargeant's patch.
...
llvm-svn: 49045
2008-04-01 18:47:32 +00:00
Chris Lattner
1429e6fb29
make langref more precise, wave 1, from Jon Sargeant
...
llvm-svn: 49044
2008-04-01 18:45:27 +00:00
Devang Patel
9c1f8b1d55
void type is also a valid function return type.
...
llvm-svn: 48740
2008-03-24 20:52:42 +00:00
Devang Patel
8dec6c27b8
Fix typo. Clarify underlying message.
...
llvm-svn: 48734
2008-03-24 18:10:52 +00:00
Devang Patel
e3dfc1cbf1
Update Function type documentation to clarify how multiple return values are supported.
...
llvm-svn: 48721
2008-03-24 05:35:41 +00:00
Anton Korobeynikov
25b2e8203a
Aliasing chains cleanups: update langref, add check into verifier
...
llvm-svn: 48685
2008-03-22 08:36:14 +00:00
Chris Lattner
fb7c88de77
clean up and fix the call section.
...
llvm-svn: 48651
2008-03-21 17:24:17 +00:00
Chris Lattner
141b613b32
cleanups for the getresult section.
...
llvm-svn: 48650
2008-03-21 17:20:51 +00:00
Duncan Sands
c572c1e487
Clarify the unwind attribute. Add assumption
...
about sret made by the optimizers.
llvm-svn: 48452
2008-03-17 12:17:41 +00:00
Nick Lewycky
084ab471fe
Commit works on regular functions too. Fix the syntax to allow @foo.
...
llvm-svn: 48414
2008-03-16 07:18:12 +00:00
Devang Patel
d0f476471d
fix grammer
...
llvm-svn: 48211
2008-03-11 05:51:59 +00:00
Devang Patel
d6cff517d6
Document multiple return values.
...
llvm-svn: 48173
2008-03-10 20:49:15 +00:00
Andrew Lenharth
95528943e9
Atomic op support. If any gcc test uses __sync builtins, it might start failing on archs that haven't implemented them yet
...
llvm-svn: 47430
2008-02-21 06:45:13 +00:00
Duncan Sands
fa4b673eac
Clarify that 'sret' only applies to pointers, and
...
only applies to the first parameter.
llvm-svn: 47256
2008-02-18 04:19:38 +00:00
Owen Anderson
6110128ed5
Make the definition of the noalias attribute clearer.
...
llvm-svn: 47255
2008-02-18 04:09:01 +00:00
Andrew Lenharth
9b254eed32
llvm.memory.barrier, and impl for x86 and alpha
...
llvm-svn: 47204
2008-02-16 01:24:58 +00:00
Gabor Greif
dd1fc981b5
explain that NumElements in alloca and malloc defaults to one
...
llvm-svn: 46912
2008-02-09 22:24:34 +00:00
Chris Lattner
00d7cb9942
llvm.sqrt(-0.0) is defined.
...
llvm-svn: 46500
2008-01-29 07:00:44 +00:00
Chris Lattner
2f2427e5aa
make handling of overflow and undefined results much more clear.
...
Patch by Eli Friedman, thanks!
llvm-svn: 46428
2008-01-28 00:36:27 +00:00
Anton Korobeynikov
06cbb65cb0
Add description of 'llvm.trap' intrinsic. Also, minor fixes in formatting.
...
llvm-svn: 46024
2008-01-15 22:31:34 +00:00
Chris Lattner
352ab9b4a2
clarify that byval is valid for any pointer argument.
...
llvm-svn: 45998
2008-01-15 04:34:22 +00:00
Chris Lattner
5cee13f1df
document the byval parameter attribute.
...
llvm-svn: 45855
2008-01-11 06:20:47 +00:00
Chris Lattner
2a1993fb2c
improve description of alignment, patch by Alain Frisch.
...
llvm-svn: 45662
2008-01-06 21:04:43 +00:00
Chris Lattner
ec56402557
Fix typo noticed by 'Danny' in PR1901
...
llvm-svn: 45661
2008-01-06 19:51:52 +00:00
Chris Lattner
43542b3a93
fix nesting issues.
...
llvm-svn: 45566
2008-01-04 04:34:14 +00:00
Chris Lattner
b8f816e90d
fix validation issues.
...
llvm-svn: 45565
2008-01-04 04:33:49 +00:00
Chris Lattner
7824d182da
improve the description of types, patch by Alain Frisch
...
llvm-svn: 45564
2008-01-04 04:32:38 +00:00
Chris Lattner
bea11173f5
update to llvm 2.0 syntax.
...
llvm-svn: 45355
2007-12-25 20:34:52 +00:00
Gordon Henriksen
fb56bde933
Noting and enforcing that GC intrinsics are valid only within a
...
function with GC.
This will catch the error when the inliner inlines a function with
GC into a caller with no GC.
llvm-svn: 45350
2007-12-25 02:31:26 +00:00
Chris Lattner
747359f973
fix more table abuses.
...
llvm-svn: 45187
2007-12-19 05:04:11 +00:00
Chris Lattner
9a2e3cb48d
avoid confusing terminology (what is a "word"?), fix scary markup, add section to TOC.
...
llvm-svn: 45150
2007-12-18 06:18:21 +00:00
Christopher Lamb
55c6d4f22f
Make it clear in the LangRef that allocation instructions only operated on the generic address space. Implement support in the verifier for ensuring this is true.
...
llvm-svn: 45080
2007-12-17 01:00:21 +00:00
Christopher Lamb
25f5076612
Implement part of review feedback for address spaces.
...
llvm-svn: 44933
2007-12-12 08:44:39 +00:00
Christopher Lamb
308121c757
Add information on address space qualifiers for pointer types and global
...
declarations to the LangRef.
llvm-svn: 44860
2007-12-11 09:31:00 +00:00
Gordon Henriksen
dc5cafb74e
Fix a typo spotted by Nick Lewycky.
...
llvm-svn: 44774
2007-12-10 03:30:21 +00:00
Gordon Henriksen
71183b6739
Adding a collector name attribute to Function in the IR. These
...
methods are new to Function:
bool hasCollector() const;
const std::string &getCollector() const;
void setCollector(const std::string &);
void clearCollector();
The assembly representation is as such:
define void @f() gc "shadow-stack" { ...
The implementation uses an on-the-side table to map Functions to
collector names, such that there is no overhead. A StringPool is
further used to unique collector names, which are extremely
likely to be unique per process.
llvm-svn: 44769
2007-12-10 03:18:06 +00:00
Duncan Sands
ad0ea2d430
Fix PR1146: parameter attributes are longer part of
...
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.
llvm-svn: 44359
2007-11-27 13:23:08 +00:00
Duncan Sands
a89a113a20
Rename the 'const' parameter attribute to 'readnone',
...
and the 'pure' parameter attribute to 'readonly'.
Names suggested by DannyB.
llvm-svn: 44273
2007-11-22 20:23:04 +00:00
Nate Begeman
d4d45c268c
Add support for vectors to int <-> float casts.
...
llvm-svn: 44204
2007-11-17 03:58:34 +00:00
Duncan Sands
730a32643f
Tweak the descriptions of the new 'const' and 'pure' attributes.
...
llvm-svn: 44132
2007-11-14 21:14:02 +00:00
Anton Korobeynikov
46f4446bba
Document pure/const parameter attributes
...
llvm-svn: 44111
2007-11-14 10:30:13 +00:00
Dan Gohman
08143e397d
Add support for vector remainder operations.
...
llvm-svn: 43744
2007-11-05 23:35:22 +00:00
Bill Wendling
8830ffed4c
Put correct link in example
...
llvm-svn: 43216
2007-10-22 05:10:05 +00:00
Dan Gohman
d0806a0508
Don't mention -enable-unsafe-fp-math in LangRef.html, as that option is
...
assumed to globally mutate the spec.
llvm-svn: 43078
2007-10-17 18:05:13 +00:00
Dan Gohman
b6324c1243
Document the new llvm.sin, llvm.cos, and llvm.pow intrinsics. Feedback
...
is welcome!
llvm-svn: 43007
2007-10-15 20:30:11 +00:00
Gordon Henriksen
a699c4dc65
Fixing a typo. Found by Kevin André!
...
llvm-svn: 42956
2007-10-14 00:34:53 +00:00
Chris Lattner
f0e5011d21
Clarify that shifts that are too large are undefined.
...
llvm-svn: 42588
2007-10-03 21:01:14 +00:00
Chris Lattner
87a3dbe743
remove extraneous tag
...
llvm-svn: 42581
2007-10-03 17:34:29 +00:00
Chris Lattner
6a6fb7f7b7
remove misleading documentation: LLVM has no atomic support yet.
...
llvm-svn: 42580
2007-10-03 17:33:51 +00:00
Dale Johannesen
dd89d2758e
Document new sqrt and powi handling.
...
llvm-svn: 42540
2007-10-02 17:47:38 +00:00
Bill Wendling
252570f0ad
Validation fixes
...
llvm-svn: 42225
2007-09-22 09:23:55 +00:00
Chris Lattner
5b95a171e2
fix bugs in the manual
...
llvm-svn: 42221
2007-09-22 03:17:52 +00:00
Tanya Lattner
cf3e26fff2
Correct names.
...
llvm-svn: 42219
2007-09-22 00:03:01 +00:00
Tanya Lattner
08abc81a44
Fix typo.
...
llvm-svn: 42217
2007-09-22 00:01:26 +00:00
Tanya Lattner
0186a65ac7
One last fix to get name correct.
...
llvm-svn: 42216
2007-09-21 23:57:59 +00:00
Tanya Lattner
afcdaf58d4
Fix silly typo.
...
llvm-svn: 42215
2007-09-21 23:57:04 +00:00
Tanya Lattner
23dbd57214
Update annotation intrinsic with more details.
...
llvm-svn: 42214
2007-09-21 23:56:27 +00:00
Tanya Lattner
293c037336
Adding support for __builtin_annotation with an intrinsic called llvm.annotation. This is similar to llvm.var.annotation but is applied to expressions.
...
llvm-svn: 42211
2007-09-21 22:59:12 +00:00
Chris Lattner
12477735f9
gcroot must take concrete types, not arbitrary types.
...
clean up intrinsic descriptions in langref a bit.
llvm-svn: 42194
2007-09-21 17:30:40 +00:00
Duncan Sands
86e0119822
Fold the adjust_trampoline intrinsic into
...
init_trampoline. There is now only one
trampoline intrinsic.
llvm-svn: 41841
2007-09-11 14:10:23 +00:00
Nick Lewycky
a9b13d5cc1
Fix description of the call instruction. There are two types, with one being
...
optional.
llvm-svn: 41785
2007-09-08 13:57:50 +00:00
Duncan Sands
f2bcd37083
Implement review feedback on trampoline documentation.
...
llvm-svn: 41304
2007-08-22 23:39:54 +00:00
Reid Spencer
b23b65f1ba
Describe the global/local naming convention.
...
llvm-svn: 40890
2007-08-07 14:34:28 +00:00
Chandler Carruth
7132e00de7
This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.
...
This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.
llvm-svn: 40807
2007-08-04 01:51:18 +00:00
Reid Spencer
753163d95f
fp2uint -> fptoui
...
llvm-svn: 40633
2007-07-31 14:40:14 +00:00
Duncan Sands
27e9159c00
Forget to add 'nest' to the list of parameter
...
attributes.
llvm-svn: 40565
2007-07-27 19:57:41 +00:00
Duncan Sands
644f917358
Support for trampolines, except for X86 codegen which is
...
still under discussion.
llvm-svn: 40549
2007-07-27 12:58:54 +00:00
Chandler Carruth
fd418435be
No longer referencing "shared memory" as this can confuse people. The memory is
...
clearly shared between processors if these instructions are being used, no
further specification of what type of memory is necessary.
llvm-svn: 40118
2007-07-20 20:14:52 +00:00
Reid Spencer
65a72e3775
Silly HTML
...
llvm-svn: 40117
2007-07-20 20:03:33 +00:00
Reid Spencer
5b2cb0f88c
Fix validation errors.
...
llvm-svn: 40116
2007-07-20 19:59:11 +00:00
Chandler Carruth
6a5f6bf685
This introduces the atomic operation intrinsics into the documentation. This is
...
a preview for the intrinsics that are going to be implemented over the next few
weeks.
llvm-svn: 40115
2007-07-20 19:34:37 +00:00
Reid Spencer
314e1cb7ee
For PR1553:
...
Change the keywords for the zext and sext parameter attributes to be
zeroext and signext so they don't conflict with the keywords for the
instructions of the same name. This gets around the ambiguity.
llvm-svn: 40069
2007-07-19 23:13:04 +00:00
Dan Gohman
33988db5d5
Fix the documentation for llvm.sqrt so that sqrt(0) has defined behavior,
...
which appears to be the intent.
llvm-svn: 39922
2007-07-16 14:37:41 +00:00
Chris Lattner
0946f04236
remove obsolete note
...
llvm-svn: 39825
2007-07-13 20:08:19 +00:00
Chris Lattner
0a2d099792
fix some bugs in the manual
...
llvm-svn: 39822
2007-07-13 20:01:46 +00:00
Gabor Greif
a54634adef
first pass of nomenclature changes in .html files
...
llvm-svn: 37956
2007-07-06 22:07:22 +00:00
Tanya Lattner
bed1d4d877
Update docs for llvm.var.annotation intrinsic.
...
llvm-svn: 37635
2007-06-18 23:42:37 +00:00
Tanya Lattner
cb1b96047d
Add local var annotation intrinsic.
...
llvm-svn: 37603
2007-06-15 20:50:54 +00:00
Chris Lattner
2150cde0e4
one final bugfix
...
llvm-svn: 37558
2007-06-12 17:01:15 +00:00