Commit Graph

635 Commits

Author SHA1 Message Date
Chris Lattner
e0db56db31 free(null) -> noop
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49972 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-19 22:41:32 +00:00
Chris Lattner
72ed200a7e Some clarifications suggested by Jon Sargeant
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49963 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-19 21:01:16 +00:00
Chris Lattner
4316dec10e more edits from Jon Sargeant
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49065 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-02 00:38:26 +00:00
Chris Lattner
5a15814098 add a dropped hunk from Jon Sargeant's patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49045 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-01 18:47:32 +00:00
Chris Lattner
a73afe00b2 make langref more precise, wave 1, from Jon Sargeant
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49044 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-01 18:45:27 +00:00
Devang Patel
7a3ad1a401 void type is also a valid function return type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48740 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-24 20:52:42 +00:00
Devang Patel
3a5bff8d04 Fix typo. Clarify underlying message.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48734 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-24 18:10:52 +00:00
Devang Patel
a582f404df Update Function type documentation to clarify how multiple return values are supported.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48721 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-24 05:35:41 +00:00
Anton Korobeynikov
726d45c548 Aliasing chains cleanups: update langref, add check into verifier
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48685 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-22 08:36:14 +00:00
Chris Lattner
772fccfe45 clean up and fix the call section.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48651 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-21 17:24:17 +00:00
Chris Lattner
45c5e8b7dc cleanups for the getresult section.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48650 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-21 17:20:51 +00:00
Duncan Sands
b7f0c082cb Clarify the unwind attribute. Add assumption
about sret made by the optimizers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48452 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 12:17:41 +00:00
Nick Lewycky
d703f65984 Commit works on regular functions too. Fix the syntax to allow @foo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48414 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 07:18:12 +00:00
Devang Patel
0dbb4a1398 fix grammer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48211 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-11 05:51:59 +00:00
Devang Patel
c3fc6dfa59 Document multiple return values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48173 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-10 20:49:15 +00:00
Andrew Lenharth
ab0b949e0e Atomic op support. If any gcc test uses __sync builtins, it might start failing on archs that haven't implemented them yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47430 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-21 06:45:13 +00:00
Duncan Sands
e26dec68a1 Clarify that 'sret' only applies to pointers, and
only applies to the first parameter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47256 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-18 04:19:38 +00:00
Owen Anderson
117bbd37b8 Make the definition of the noalias attribute clearer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47255 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-18 04:09:01 +00:00
Andrew Lenharth
22c5c1b2df llvm.memory.barrier, and impl for x86 and alpha
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47204 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-16 01:24:58 +00:00
Gabor Greif
1acd2eed98 explain that NumElements in alloca and malloc defaults to one
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46912 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-09 22:24:34 +00:00
Chris Lattner
103e2d760f llvm.sqrt(-0.0) is defined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46500 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-29 07:00:44 +00:00
Chris Lattner
5ec898399f make handling of overflow and undefined results much more clear.
Patch by Eli Friedman, thanks!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46428 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-28 00:36:27 +00:00
Anton Korobeynikov
4cb8618d7f Add description of 'llvm.trap' intrinsic. Also, minor fixes in formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46024 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-15 22:31:34 +00:00
Chris Lattner
0747baaf6a clarify that byval is valid for any pointer argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45998 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-15 04:34:22 +00:00
Chris Lattner
47507ded8c document the byval parameter attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45855 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-11 06:20:47 +00:00
Chris Lattner
a31d1d7aea improve description of alignment, patch by Alain Frisch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45662 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-06 21:04:43 +00:00
Chris Lattner
4b2cbcf4c2 Fix typo noticed by 'Danny' in PR1901
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45661 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-06 19:51:52 +00:00
Chris Lattner
8f8c7b7c26 fix nesting issues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45566 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-04 04:34:14 +00:00
Chris Lattner
c7d3ab365f fix validation issues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45565 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-04 04:33:49 +00:00
Chris Lattner
4f69f46d3d improve the description of types, patch by Alain Frisch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45564 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-04 04:32:38 +00:00
Chris Lattner
64910eeec4 update to llvm 2.0 syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45355 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-25 20:34:52 +00:00
Gordon Henriksen
e1433f24cf 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45350 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-25 02:31:26 +00:00
Chris Lattner
23ff1f910f fix more table abuses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45187 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19 05:04:11 +00:00
Chris Lattner
b9488a6890 avoid confusing terminology (what is a "word"?), fix scary markup, add section to TOC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45150 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18 06:18:21 +00:00
Christopher Lamb
303dae993a 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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45080 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17 01:00:21 +00:00
Christopher Lamb
d49e18d29f Implement part of review feedback for address spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44933 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12 08:44:39 +00:00
Christopher Lamb
284d992777 Add information on address space qualifiers for pointer types and global
declarations to the LangRef.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44860 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-11 09:31:00 +00:00
Gordon Henriksen
e754abea46 Fix a typo spotted by Nick Lewycky.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44774 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 03:30:21 +00:00
Gordon Henriksen
80a75bfae9 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44769 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 03:18:06 +00:00
Duncan Sands
dc024674ff 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-27 13:23:08 +00:00
Duncan Sands
ed4a2f1688 Rename the 'const' parameter attribute to 'readnone',
and the 'pure' parameter attribute to 'readonly'.
Names suggested by DannyB.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44273 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-22 20:23:04 +00:00
Nate Begeman
b348d18caf Add support for vectors to int <-> float casts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44204 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-17 03:58:34 +00:00
Duncan Sands
f04d584cae Tweak the descriptions of the new 'const' and 'pure' attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44132 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-14 21:14:02 +00:00
Anton Korobeynikov
e925df7f02 Document pure/const parameter attributes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44111 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-14 10:30:13 +00:00
Dan Gohman
80176319f3 Add support for vector remainder operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43744 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 23:35:22 +00:00
Bill Wendling
8c6c72d0ba Put correct link in example
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43216 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-22 05:10:05 +00:00
Dan Gohman
ba83b7eb40 Don't mention -enable-unsafe-fp-math in LangRef.html, as that option is
assumed to globally mutate the spec.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43078 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-17 18:05:13 +00:00
Dan Gohman
91c284c0a6 Document the new llvm.sin, llvm.cos, and llvm.pow intrinsics. Feedback
is welcome!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43007 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-15 20:30:11 +00:00
Gordon Henriksen
8ac04ff5ac Fixing a typo. Found by Kevin André!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42956 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-14 00:34:53 +00:00
Chris Lattner
6ccc2d579e Clarify that shifts that are too large are undefined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42588 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-03 21:01:14 +00:00
Chris Lattner
cc68939ba6 remove extraneous tag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42581 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-03 17:34:29 +00:00
Chris Lattner
4ef2b76cd1 remove misleading documentation: LLVM has no atomic support yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42580 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-03 17:33:51 +00:00
Dale Johannesen
408f9c1968 Document new sqrt and powi handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42540 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-02 17:47:38 +00:00
Bill Wendling
03295ca4e6 Validation fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42225 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-22 09:23:55 +00:00
Chris Lattner
885190418f fix bugs in the manual
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42221 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-22 03:17:52 +00:00
Tanya Lattner
d3989a820c Correct names.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42219 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-22 00:03:01 +00:00
Tanya Lattner
91d0b88f17 Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42217 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-22 00:01:26 +00:00
Tanya Lattner
e1a8da08be One last fix to get name correct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42216 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 23:57:59 +00:00
Tanya Lattner
0f5dbfbe14 Fix silly typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42215 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 23:57:04 +00:00
Tanya Lattner
39cfba629f Update annotation intrinsic with more details.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42214 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 23:56:27 +00:00
Tanya Lattner
b636788914 Adding support for __builtin_annotation with an intrinsic called llvm.annotation. This is similar to llvm.var.annotation but is applied to expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42211 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 22:59:12 +00:00
Chris Lattner
1df4f752f8 gcroot must take concrete types, not arbitrary types.
clean up intrinsic descriptions in langref a bit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42194 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-21 17:30:40 +00:00
Duncan Sands
f7331b3dd7 Fold the adjust_trampoline intrinsic into
init_trampoline.  There is now only one
trampoline intrinsic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41841 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-11 14:10:23 +00:00
Nick Lewycky
db7e3c9e99 Fix description of the call instruction. There are two types, with one being
optional.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41785 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-08 13:57:50 +00:00
Duncan Sands
c00c2baf48 Implement review feedback on trampoline documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41304 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-22 23:39:54 +00:00
Reid Spencer
2c45228651 Describe the global/local naming convention.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40890 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-07 14:34:28 +00:00
Chandler Carruth
6994040a95 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40807 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-04 01:51:18 +00:00
Reid Spencer
1539a1cfc6 fp2uint -> fptoui
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40633 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 14:40:14 +00:00
Duncan Sands
50f19f5860 Forget to add 'nest' to the list of parameter
attributes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40565 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-27 19:57:41 +00:00
Duncan Sands
36397f5034 Support for trampolines, except for X86 codegen which is
still under discussion.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40549 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-27 12:58:54 +00:00
Chandler Carruth
6813c15e1d 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40118 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 20:14:52 +00:00
Reid Spencer
1cff40819c Silly HTML
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40117 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 20:03:33 +00:00
Reid Spencer
2067764e29 Fix validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40116 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 19:59:11 +00:00
Chandler Carruth
2eb93b3f03 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40115 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-20 19:34:37 +00:00
Reid Spencer
9445e9aaa0 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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40069 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 23:13:04 +00:00
Dan Gohman
d6257fe581 Fix the documentation for llvm.sqrt so that sqrt(0) has defined behavior,
which appears to be the intent.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39922 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-16 14:37:41 +00:00
Chris Lattner
744ff41e0e remove obsolete note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39825 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-13 20:08:19 +00:00
Chris Lattner
3e63a9d52c fix some bugs in the manual
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39822 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-13 20:01:46 +00:00
Gabor Greif
04367bfc20 first pass of nomenclature changes in .html files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37956 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-06 22:07:22 +00:00
Tanya Lattner
d2e8442a13 Update docs for llvm.var.annotation intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37635 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-18 23:42:37 +00:00
Tanya Lattner
6d806e93ce Add local var annotation intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37603 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-15 20:50:54 +00:00
Chris Lattner
6c0955b9cb one final bugfix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37558 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-12 17:01:15 +00:00
Chris Lattner
a89e5f1fd5 modernize example
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37557 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-12 17:00:26 +00:00
Chris Lattner
4a3c901903 wording fix noticed by Ivan Novick
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37519 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-08 16:52:14 +00:00
Chris Lattner
a18a424f98 update to match latest changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37474 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-06 18:28:13 +00:00
Zhou Sheng
febca3499e Commit first round work of PR1373. "noalias" is now fully supported in
VMCore, BitCode, and Assembly. Documentation and test case paramattrs.ll
updated also.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37432 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-05 05:28:26 +00:00
Chris Lattner
cabc8469f2 more fixes to C code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37339 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-29 15:43:56 +00:00
Bill Wendling
aac388b363 Fixed some formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37338 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-29 09:42:13 +00:00
Bill Wendling
2f7a8b091a Fix for PR1452. Removed "define" keyword from the C code. Added "<div
class="doc_code">" to code examples.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37335 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-29 09:04:49 +00:00
Chris Lattner
d1d25174cd remove contradiction owen noticed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37327 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-24 19:13:27 +00:00
Reid Spencer
2b91631e44 Update for arbitrary precision integer types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37109 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-16 18:44:01 +00:00
Reid Spencer
c6749c42c3 The wrapping behavior of part_set is not desirable. Adjust the
documentation to describe the desired behavior.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37036 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 16:50:20 +00:00
Reid Spencer
d6a85b54de Revise definition of part_select. The wrapping behavior is not useful so
in the reverse case the only difference is that the bits are returned in
reverse order.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37035 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 16:14:57 +00:00
Anton Korobeynikov
6f9896fcc8 Implement protected visibility. This partly implements PR1363. Linker
should be taught to deal with protected symbols.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36565 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 18:35:00 +00:00
Anton Korobeynikov
c6c98af9e5 Implement review feedback
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36564 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 18:02:48 +00:00
Jeff Cohen
b627eab040 Minor corrections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36548 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 01:07:00 +00:00
Anton Korobeynikov
a80e1181b7 Implement review feedback. Aliasees can be either GlobalValue's or
bitcasts of them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36537 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-28 13:45:00 +00:00
Anton Korobeynikov
8b0a8c84da Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part
will follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36435 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-25 14:27:10 +00:00
Jeff Cohen
cb75731bf4 Undo erroneous corrections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36340 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 14:56:37 +00:00
Jeff Cohen
6f1cc770e2 Minor corrections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36325 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 01:17:39 +00:00
Christopher Lamb
2330e4d4c4 add support for alignment attributes on load/store instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36301 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-21 08:16:25 +00:00
Lauro Ramos Venancio
a4563364d0 update documentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35953 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-12 20:34:36 +00:00
Reid Spencer
f0dbf64d0c Fix extra argument in part_set examples. Thanks Zhiru.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35936 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-12 01:03:03 +00:00
Reid Spencer
c891084372 Fix validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35933 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 23:49:50 +00:00
Reid Spencer
065cc7fa58 Missing end tag. Thanks, Nick.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35932 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 23:46:06 +00:00
Reid Spencer
e31a27d721 Put period inside the paragraph!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35930 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 23:26:07 +00:00
Reid Spencer
f86037f17d Document the part_set intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35929 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 23:23:49 +00:00
Reid Spencer
beacf66d3f Fix name of an intrinsic: bit.part_select -> part.select
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35853 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-10 02:51:31 +00:00
Reid Spencer
8d8e1eb284 Remove the part_set intrinsic. It won't get implemented as an intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35667 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 19:15:59 +00:00
Reid Spencer
771b675c51 Appease Chris' pedantic streak.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35647 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 05:46:04 +00:00
Reid Spencer
a3e435fdfd Remove intrinsics that we will not be implementing.
Fix the anchor names of intrinsics to all be int_ so as to distinguish
them from the i_ prefix reserved for instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35645 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-04 02:42:35 +00:00
Reid Spencer
338ea097f2 bwsap -> bswap
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35580 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 02:25:19 +00:00
Reid Spencer
543ab1d784 Fix some bswap typos that Chris noticed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35564 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-02 00:19:52 +00:00
Reid Spencer
a13ba7d597 Preview documentation for additional intrinsic functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35558 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-01 19:00:37 +00:00
Reid Spencer
497d93e61f For PR1297:
Preview documentation for the llvm.bit.concat intrinsic (yet to be
implemented).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35552 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-01 08:27:01 +00:00
Reid Spencer
409e28f9cc For PR1297:
Document changes to bswap and bit counting intrinsics. bswap's name now
requires two types in the suffix per overloaded intrinsic naming rules.
The ctpop, cttz, and ctlz intrinsics were changed to always return i32.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35550 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-01 08:04:23 +00:00
Duncan Sands
526cdf6b9e Remove reference to checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35507 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-30 16:09:58 +00:00
Duncan Sands
8036ca47e2 Various hopefully correct easy fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35506 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-30 12:22:09 +00:00
Reid Spencer
c10f0af135 Undocument the implementation keyword
Docuemnt the checkpoint keyword


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35413 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 02:46:29 +00:00
Reid Spencer
64f5c6c357 Fix a link.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35306 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-24 22:40:44 +00:00
Reid Spencer
c9fdfc8e9f Correct the description of srem. remainder follows the dividend not the
divisor!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35303 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-24 22:23:39 +00:00
Reid Spencer
2dc5201eae Add noreturn function attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35262 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-22 02:18:56 +00:00
Reid Spencer
67606125f6 Preview nounwind function attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35256 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-22 02:02:11 +00:00
Anton Korobeynikov
ec43a0662a More LangRef fixes. Corrected names of intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35249 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-22 00:02:17 +00:00
Anton Korobeynikov
5d522f36ca Fixed va_arg example. Reported by Roman Samoilov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35248 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-21 23:58:04 +00:00
Jim Laskey
dd4ef1b540 Add link to exception handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35102 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-14 19:31:19 +00:00
Reid Spencer
de15194839 Add a section on the target datalayout syntax and describe the defaults
and rules used by LLVM to construct the target's layout rules.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34433 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-19 23:54:10 +00:00
Reid Spencer
485bad1a09 For PR1195:
Packed -> Vector


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34296 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-15 03:07:05 +00:00
Reid Spencer
8e11bf8508 Put the Shift instructions in the right section.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33782 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-02 13:57:07 +00:00
Reid Spencer
569f2fa7f1 Preview of the shift instructions becoming Binary Operators.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33720 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-31 21:39:12 +00:00
Anton Korobeynikov
66a8c8ccb8 Grammar fix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33602 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-28 15:27:21 +00:00
Anton Korobeynikov
34d6dea849 Document 'inreg' & 'sret'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33600 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-28 14:30:45 +00:00
Anton Korobeynikov
8cea37b79a Updating documentation:
- Document visibility stuff
 - Fix gcc' supported attributes list
 - Document udis86 configure option


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33462 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-23 12:35:46 +00:00
Reid Spencer
24d6da5fed For PR970:
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33415 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-21 00:29:26 +00:00
Reid Spencer
03c056a617 icmp doesn't support comparison of packed types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33357 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-19 17:11:12 +00:00
Reid Spencer
7bf214d8d0 One more @ to remove.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33240 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-15 18:28:34 +00:00
Reid Spencer
950e9f83ea Update documentation for parameter attributes for the syntax change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33238 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-15 18:27:39 +00:00
Chris Lattner
3b19d65897 Terminology change: drop 'integral' completely. Now we just have integer,
which includes i1.  Change the semantics of the various instructions to
support i1 where they didn't before: for example, it is now legal [though
not terribly useful, as it is the same as xor] to add two i1 values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33217 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-15 01:54:13 +00:00
Chris Lattner
4887bd8f8e clarify linkonce/weak linkage
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33201 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-14 06:51:48 +00:00
Reid Spencer
4580e529f9 Fix an incorrect conversion of int -> i32
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33199 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-14 06:29:54 +00:00
Chris Lattner
68027ea618 add a global variable example
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33190 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-14 00:27:09 +00:00
Anton Korobeynikov
7f70559bc4 * PIC codegen for X86/Linux has been implemented
* PIC-aware internal structures in X86 Codegen have been refactored
* Visibility (default/weak) has been added
* Docs fixes (external weak linkage, visibility, formatting)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33136 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12 19:20:47 +00:00
Reid Spencer
b592952fe9 Fix a typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33118 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12 15:46:11 +00:00
Reid Spencer
c78f33757d Update for changes in the assembly syntax. bool is replaced with i1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33106 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12 03:35:51 +00:00
Reid Spencer
19b569fc08 Explain that bitcast can only cast a pointer to another pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33041 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-09 20:08:58 +00:00
Chris Lattner
b75137d1f4 Fully specify the type of the llvm.va* intrinsics. This helps resolve
Pr1093


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33009 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-08 07:55:15 +00:00
Chris Lattner
30ade26ef7 llvm.isunordered is no longer alive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32995 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-07 08:53:26 +00:00
Reid Spencer
5cf0fe40d0 Add an example to the trunc instruction to clarify trunc to bool.
Example provided by Baptiste Lepilleur.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32931 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 21:33:08 +00:00
Reid Spencer
ac8d27686d Correct the documentation for function declarations. They can have dllimport
or extern_weak linkage as well as "externally visible".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32887 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05 00:59:10 +00:00
Reid Spencer
a5173381e9 Clean up usage of "unsigned" and "signed" in the documentation to indicate
only that specific instructions regard their operands as signed and
unsigned not that the operands *are* signed or unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32874 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-04 16:43:23 +00:00
Reid Spencer
350f8aa72d icmp and fcmp do not take packed type operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32864 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-04 05:19:58 +00:00
Reid Spencer
c28d2bc476 Remove documentation of non-existent cextcc and csretextcc calling
conventions as these have been replaced with parameter attributes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32797 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31 21:30:18 +00:00
Reid Spencer
f17a0b7117 One more try on the table formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32793 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31 07:20:23 +00:00
Reid Spencer
92f8230f01 Clean up some typos and formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32792 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31 07:18:34 +00:00
Reid Spencer
ca86e16032 For PR950:
Update for signless integer types:
1. Replace [us]byte with i8
2. Replace [u]short with i16
3. Replace [u]int   with i32
4. Replace [u]long  with i64
5. Document the "define" keyword and use it in all examples.
6. Document parameter attributes and how they affect function types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32791 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31 07:07:53 +00:00
Reid Spencer
6f85b9d743 Preview of new calling conventions: cextcc and csretextcc to handle explicit
sign and zero extension in function calls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32764 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-28 16:55:55 +00:00
Andrew Lenharth
75e1068c60 Packed Structure Definitions (docs)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32357 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08 17:13:00 +00:00
Reid Spencer
93a498566a Tie the ordered/unordered predicate descriptions to their meaning wrt
to QNAN values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32272 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-06 07:08:07 +00:00
Reid Spencer
85f5b5b9dc We only support 32-bit or 64-bit sequential type indices for GEP. Document
it as so.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32197 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 21:29:24 +00:00
Reid Spencer
01c4259d41 Document the icmp and fcmp constant expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32188 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-04 19:23:19 +00:00
Reid Spencer
42ddd84add Update for signless GEP semantics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32159 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-03 16:53:48 +00:00
Chris Lattner
722a0cafbd remove dead tag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31944 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-27 21:53:28 +00:00
Reid Spencer
b7f26289b1 Corrections from review.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31865 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-19 03:00:14 +00:00
Reid Spencer
36d68e418d Update a reference to the old setcc instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31860 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-18 21:55:45 +00:00
Reid Spencer
f3a70a6cd9 For PR950:
Documentation preview of the upcoming icmp and fcmp instructions that
will replace the various setcc instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31859 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-18 21:50:54 +00:00
Reid Spencer
5c0ef47d83 Document new constant expr operators, rename bitconvert as bitcast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31693 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11 23:08:07 +00:00
Reid Spencer
72679258ff Add a preview of two new conversion operators: ptrtoint and inttoptr. Update
the defintion of bitconvert correspondingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31688 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11 21:00:47 +00:00
Reid Spencer
d4448796cf Post-review changes on conversion instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31607 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-09 23:03:26 +00:00
Reid Spencer
3fa91b08a4 Fix runaway <tt> element and section ordering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31606 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-09 21:48:10 +00:00
Reid Spencer
16c469e660 Remove futurisms that won't be in our future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31605 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-09 21:42:14 +00:00
Reid Spencer
035ab57f4a One more time for indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31604 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-09 21:18:01 +00:00
Reid Spencer
47ce179995 Fix indentation problem starting at GEP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31603 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-09 21:15:49 +00:00
Reid Spencer
3822ff5c71 For PR950:
This patch converts the old SHR instruction into two instructions,
AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not
dependent on the sign of their operands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31542 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-08 06:47:33 +00:00
Reid Spencer
2fd21e6e4e Fix the section headings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31532 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-08 01:18:52 +00:00
Reid Spencer
9dee3acd91 For PR950:
Early commit of the documentation for new conversion instructions for
easier review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31531 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-08 01:11:31 +00:00
Reid Spencer
0a783f783c For PR950:
Replace the REM instruction with UREM, SREM and FREM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31369 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-02 01:53:59 +00:00
Reid Spencer
1628cec4d7 For PR950:
Make necessary changes to support DIV -> [SUF]Div. This changes llvm to
have three division instructions: signed, unsigned, floating point. The
bytecode and assembler are bacwards compatible, however.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31195 91177308-0d34-0410-b5e6-96231b3b80d8
2006-10-26 06:15:43 +00:00
Chris Lattner
32b5d717ce clarify
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30966 91177308-0d34-0410-b5e6-96231b3b80d8
2006-10-15 20:05:59 +00:00
Anton Korobeynikov
b74ed07bfd Adding dllimport, dllexport and external weak linkage types.
DLL* linkages got full (I hope) codegeneration support in C & both x86
assembler backends.
External weak linkage added for future use, we don't provide any
codegeneration, etc. support for it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30374 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-14 18:23:27 +00:00
Chris Lattner
f4d252dc3a new powi intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30175 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-08 06:34:02 +00:00
Chris Lattner
884a9702bb Add a link to the GEP faq.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29690 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-15 00:45:58 +00:00
Chris Lattner
81c01f0d2c Decribe the "implementation" keyword.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28762 91177308-0d34-0410-b5e6-96231b3b80d8
2006-06-13 03:05:47 +00:00
Chris Lattner
5710ce915e New calling convention I will be adding shortly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28403 91177308-0d34-0410-b5e6-96231b3b80d8
2006-05-19 21:15:36 +00:00
Chris Lattner
374ab3016e Update dox, patch by Vladimir Prus!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28306 91177308-0d34-0410-b5e6-96231b3b80d8
2006-05-15 17:26:46 +00:00
Chris Lattner
76b8a33f4a Change token to match asmprinter output
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28285 91177308-0d34-0410-b5e6-96231b3b80d8
2006-05-14 18:23:06 +00:00
Chris Lattner
99d3c276cc typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27936 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-21 21:37:40 +00:00
Tanya Lattner
0947429538 Adding back vector instructions to keep in mainline.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27704 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-14 19:24:33 +00:00
Tanya Lattner
36ba6d4d53 Removing unimplemented vector instructions from language referrence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27703 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-14 19:07:42 +00:00
Chris Lattner
3df241e4b2 Move the vector instructions to their own subsection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27545 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-08 23:07:04 +00:00
Chris Lattner
1eeeb0cce3 Wrap long lines, fix verification error
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27531 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-08 04:40:53 +00:00
Chris Lattner
1bb8d30018 use the right escapes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27530 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-08 04:39:19 +00:00
Chris Lattner
c1989542eb Description for the new shufflevector instruction I'm adding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27502 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-08 00:13:41 +00:00
Chris Lattner
b3e7afd9ee Fix a typo, thanks to Gabor Greif
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27054 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-24 07:16:10 +00:00
Robert Bocchino
230bd09aed Fixed a typo in the vsetfp examples.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26768 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-14 23:22:57 +00:00
Robert Bocchino
8949de2588 Split the 'vset' instruction into two instructions, 'vsetint' and
'vsetfp', to reflect the fact that the semantics are different for
integer and fp values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26767 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-14 20:55:28 +00:00
Chris Lattner
80626e947f Update this to match the documentation in the GC doc and to match actual
practice.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26766 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-14 20:02:51 +00:00
Reid Spencer
05fe4b0256 Changes docs for llvm.cs.uiuc.edu -> llvm.org
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26746 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-14 05:39:39 +00:00
Chris Lattner
f0afc2cda2 Spec change: the size of a memset/memcpy/memmove is not required to be aligned
to the alignment argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26510 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-04 00:02:10 +00:00
Chris Lattner
41edaa0529 remove the read/write port/io intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26479 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-03 00:19:58 +00:00
Chris Lattner
5b310c3c8b Update the llvm.memset/memcpy/memmove intrinsics to reflect the recent split
into types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26477 91177308-0d34-0410-b5e6-96231b3b80d8
2006-03-03 00:07:20 +00:00
Robert Bocchino
7b81c758ab Added documentation for vset and vselect.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26264 91177308-0d34-0410-b5e6-96231b3b80d8
2006-02-17 21:18:08 +00:00
Chris Lattner
e87d653da6 document the syntax of inline asm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25624 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 23:47:57 +00:00
Chris Lattner
52599e17b1 minor syntax change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25566 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 00:37:20 +00:00
Chris Lattner
4e9aba7c12 document module-level inline asm support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25561 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:23:47 +00:00
Chris Lattner
ec6cb6115f like bswap, the ct* intrinsics require unsigned operands
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25373 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-16 22:38:59 +00:00
Chris Lattner
8a886be335 Consistency
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25372 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-16 22:34:14 +00:00
Reid Spencer
7c898553b6 There is no llvm.bswap.i8, need at least 2 bytes to swap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25367 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-16 21:14:01 +00:00
Reid Spencer
0b118206bf For PR411:
This patch is an incremental step towards supporting a flat symbol table.
It de-overloads the intrinsic functions by providing type-specific intrinsics
and arranging for automatically upgrading from the old overloaded name to
the new non-overloaded name. Specifically:
  llvm.isunordered -> llvm.isunordered.f32, llvm.isunordered.f64
  llvm.sqrt -> llvm.sqrt.f32, llvm.sqrt.f64
  llvm.ctpop -> llvm.ctpop.i8, llvm.ctpop.i16, llvm.ctpop.i32, llvm.ctpop.i64
  llvm.ctlz -> llvm.ctlz.i8, llvm.ctlz.i16, llvm.ctlz.i32, llvm.ctlz.i64
  llvm.cttz -> llvm.cttz.i8, llvm.cttz.i16, llvm.cttz.i32, llvm.cttz.i64
New code should not use the overloaded intrinsic names. Warnings will be
emitted if they are used.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25366 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-16 21:12:35 +00:00
Robert Bocchino
05ccd70396 Added spec for insertelement operation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25342 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-15 20:48:27 +00:00
Nate Begeman
7e36c47307 Make the bswap documentation more to sabre's liking!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25302 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-13 23:26:38 +00:00
Chris Lattner
fb6977de4f fix some minor errors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25301 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-13 23:26:01 +00:00
Nate Begeman
ed4ac951e5 Add documentation for the upcoming bswap intrinsics!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25300 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-13 23:02:51 +00:00
Chris Lattner
57e1f39713 Add llvm.stacksave and llvm.stackrestore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25264 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-13 02:03:13 +00:00
Chris Lattner
fcf39d4589 void* is not legal in LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25262 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-13 01:20:27 +00:00
Robert Bocchino
9fbe14586d Expanded the documentation for constant expressions to cover select
and extractelement.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25183 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-10 19:31:34 +00:00
Robert Bocchino
3a55866622 Added the spec for the new "extractelement" instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25113 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-05 17:37:02 +00:00
Chris Lattner
d07c3f4279 Fix some typos noticed by Gabor Greif!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24364 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-15 06:07:55 +00:00
Chris Lattner
88f6c46cb9 document sections
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24317 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-12 00:45:07 +00:00
Andrew Lenharth
51b8d54922 continued readcyclecounter support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24300 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-11 16:47:30 +00:00
Jeff Cohen
25d4f7e67b Fix some typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24298 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-11 02:15:27 +00:00
Chris Lattner
b8d172f800 Packed elements must be a power of two in size
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24266 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-10 01:44:22 +00:00
Chris Lattner
2cbdc45f35 document alignment on globals, functions, and allocation instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24221 91177308-0d34-0410-b5e6-96231b3b80d8
2005-11-06 08:02:57 +00:00
John Criswell
0ec250ca8f Grammar and punctuation fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23965 91177308-0d34-0410-b5e6-96231b3b80d8
2005-10-24 16:17:18 +00:00
Chris Lattner
a4d7414a59 llvm.sqrt somehow escaped documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22490 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-21 01:29:16 +00:00
Chris Lattner
e67a951720 add a note about variable length array
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22278 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-24 17:22:57 +00:00
Andrew Lenharth
d0a4c62a03 SelectionDAG is very unhappy when the argument to an intrinsic is a struct
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22272 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-22 20:38:11 +00:00
Andrew Lenharth
8bf607a221 OK, after checking the backwards compatibility code on X86 and the new code
path on alpha, now has come the time for new vararg support.  So, with out
further ado, I revert behavior back a couple of years!

Well, ok, I lied.  A few more notes.

First, the Simple ISels cannot be expected to work any longer, but they
should still compile

Second, there are likely some bugs to track down once the nightly testers
start with this.

Third, the initial patch doesn't include sparcv9, but I'll do that today.

Forth, subsequent patches won't bother being long winded.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22251 91177308-0d34-0410-b5e6-96231b3b80d8
2005-06-18 18:28:17 +00:00
John Criswell
fc6b895b5b Added a note about how the type can be omitted in call instructions.
Added a note about how getelementptr can be used to index into structures
or arrays.
Fixed some typos, spelling, etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22083 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-16 16:17:45 +00:00
Chris Lattner
eff29abe2d ctlz = most signficant bits, cttz = least sig
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22061 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-15 19:39:26 +00:00
John Criswell
c1f786cac1 Minor fixup of typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21990 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-13 22:25:59 +00:00
John Criswell
dae2e9383b Correct a detail with the alloca instruction.
Functions do not exit with invoke; they exit with unwind.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21893 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-12 16:55:34 +00:00
John Criswell
e4c57cc72b Fixed some typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21891 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-12 16:52:32 +00:00
Chris Lattner
590cff389d don't duplicate information, particularly when it's out of date!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21852 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-11 03:35:57 +00:00
Chris Lattner
cfe6b37b07 fix bugs in my previous commit clarify the return type of the bit ops
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21755 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-07 01:46:40 +00:00
Chris Lattner
8cdc5bccc8 add a couple of notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21754 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-06 23:08:23 +00:00
Chris Lattner
bad10eebbe document calling convention extensions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21753 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-06 22:57:40 +00:00
Chris Lattner
2bff524501 Add info on new 'tail' marker
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21721 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-06 05:47:36 +00:00
Andrew Lenharth
7ba1ea545c fixup argument
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21680 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-04 14:58:31 +00:00
Andrew Lenharth
ec370fd3dc initial descriptions of count intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21677 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-03 18:01:48 +00:00
Reid Spencer
a7e302aadc Mention that arguments to functions must be first class types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21650 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-01 22:22:57 +00:00
Reid Spencer
a8d451e1d4 Convert the remainder of the intrinsic function prototypes to "declare"
form from the "call" form.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21573 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-26 20:50:44 +00:00
Reid Spencer
d462235968 Use the declare syntax not the call syntax for intrinsic prototypes so
the uninitiated reader is not confused.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21572 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-26 20:41:16 +00:00
Chris Lattner
69c11bb285 document 'opaque' types
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21535 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-25 17:34:15 +00:00
Misha Brukman
cfa87bcf71 Hyphenate the adjective `n-bit' when used to describe values and processors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21456 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-22 18:02:52 +00:00
Andrew Lenharth
7f4ec3b2e3 First step in adding pcmarker intrinsic. Second step (soon) is adding backend support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20900 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-28 20:05:49 +00:00
Chris Lattner
d4f6b17642 Various cleanups and clarifications, thanks to Gabor Greif for contributing this patch!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20514 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-07 22:13:59 +00:00
Chris Lattner
aeffb4af8b fix another typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20512 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-07 20:31:38 +00:00
Chris Lattner
b40bb38eb4 fix typeo that Gabor Greif noticed!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20511 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-07 20:30:51 +00:00
Chris Lattner
2a61536848 cleanup my miswording
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20381 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:47:14 +00:00
Chris Lattner
9a9d7ac835 Document llvm.prefetch, patch contributed by Justin Wick!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20373 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:24:19 +00:00
Chris Lattner
a977c486ba Fix a bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20242 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-19 02:22:14 +00:00
Chris Lattner
3689a34489 Document the newly generalized model for constant globals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20136 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-12 19:30:21 +00:00
John Criswell
9e2485c122 Merged in RELEASE_14 changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18763 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-10 15:51:16 +00:00
Reid Spencer
2dc45b818f More grammaro's fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18708 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 18:13:12 +00:00
Reid Spencer
cc16dc3249 Clean up some grammaro's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18705 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 18:02:53 +00:00
Chris Lattner
c3f5976112 Fully document the LLVM constants. This should go into LLVM 1.4
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18701 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 17:30:23 +00:00
Chris Lattner
e5d947bc84 Reflow and clean up some of the HTML in the initial section, split linkage
types into its own section.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18697 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 16:36:40 +00:00
Chris Lattner
fa73021cf1 Move the "High Level Structure" to before "Type System"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18695 91177308-0d34-0410-b5e6-96231b3b80d8
2004-12-09 16:11:40 +00:00
Reid Spencer
d3f876c93c Minor format tweask for tables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17394 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-01 08:19:36 +00:00
Chris Lattner
35eca58d7a Document unreachable instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17033 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-16 18:04:13 +00:00
Chris Lattner
e19d7a7021 Patch contributed by Patrick Meredith:
added notes on the fact that the current implementation uses
sbyte* for va_list.  Updated all occurances of valist to va_list (it was
inconsistant and find/replace is so easy ;-) ).  Added <...> around all
occurances of va_list in the intrinsic functions to match the vaarg and
vanext instructions and to further show that va_list is a variable type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16530 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-27 21:51:25 +00:00
Reid Spencer
3921c74652 Provide some meta tags for this document.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16058 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-26 20:44:00 +00:00
Misha Brukman
c24b75870b Wrap long lines and try to fill the 80 chars per line so that we don't have too
many short lines.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15706 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 20:16:08 +00:00
Chris Lattner
a58561b917 Add description of packed type support.
Patch contributed by Brad Jones!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15704 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 19:12:28 +00:00
Brian Gaeke
7283e7c056 Modernize example, so that you can paste it right into llvm-as
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14583 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-02 21:08:14 +00:00
John Criswell
f5076133a9 Removed the interrupt_handler instrinsic section that I accidently added
in my previous commits.  It's not implemented and is out of date.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14410 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 16:42:50 +00:00
John Criswell
8411475105 Grammar and punctuation fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14409 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 16:05:06 +00:00
John Criswell
fa0818711a Added missing quote.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14407 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 15:16:57 +00:00
Chris Lattner
fcd3725747 Fix some broken links
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14306 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-21 22:52:48 +00:00
Chris Lattner
ee98bf5477 llvm.isnan is dead, long live llvm.isunordered!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14190 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-15 21:50:46 +00:00
Alkis Evlogimenos
26bbe93ec9 Really add the docs this time :-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14167 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-13 01:16:15 +00:00
Alkis Evlogimenos
9685372062 Add the isunordered intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14159 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-12 19:19:14 +00:00
Chris Lattner
320062845b Document the llvm.isnan intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14131 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-11 02:28:03 +00:00
Chris Lattner
e53e508642 Fix some broken links
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13997 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-03 22:57:15 +00:00
Chris Lattner
d7923910c5 Describe the new garbage collector intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13672 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-23 21:06:01 +00:00
John Criswell
96db6fcb2e Corrected the descriptions of the llvm.writeport and llvm.writeio
intrinsics.

Modified llvm.readio and llvm.writeio to use pointers to memory instead
of integers.  This should take care of problems such as different pointer
sizes, casting integers to pointers, weird architectural pointer types, etc.

Re-worded the description of llvm.readio and llvm.writeio so that it should
be more clear as to why they should be used over regular loads/stores for
I/O.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12867 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-12 16:33:19 +00:00
John Criswell
183402a788 Added initial design for the llvm.readio and llvm.writeio intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12864 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-12 15:02:16 +00:00
John Criswell
4457dc9797 Fixed some spelling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12790 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-09 16:48:45 +00:00
John Criswell
7123e27894 Modified the prototypes of the llvm.readport and llvm.writeport intrinsics
so that they do not specify specific integer sizes (as those are
constrained by the code generator, not the intrinsic itself).

Also put these intrinsics into their own "Operating System" section.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12789 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-09 16:43:20 +00:00
John Criswell
cfd3baccce Added the llvm.readport and llvm.writeport intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12788 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-09 15:23:37 +00:00
Chris Lattner
f74d5c7d1d Update getelementptr instruction description
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12654 91177308-0d34-0410-b5e6-96231b3b80d8
2004-04-05 01:30:49 +00:00
John Criswell
6794d9268b Fixed grammar typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12343 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-12 21:19:06 +00:00
Chris Lattner
cc37aae854 Cleanup the cast section, add the select instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12307 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-12 05:50:16 +00:00
Chris Lattner
9ee5d2296b Remove the comment "Constants must always have an initial value.", which
is incorrect.  Fix some formatting nastiness.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12223 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-08 16:49:10 +00:00
Misha Brukman
daa4cb0f03 HTML 4.01 Strict compliance.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12050 91177308-0d34-0410-b5e6-96231b3b80d8
2004-03-01 17:47:27 +00:00
John Criswell
6e4ca61438 Fixed minor typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11800 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-24 16:13:56 +00:00
Chris Lattner
c88c17b0f6 Wow, the description of the 'switch' instruction was out of date.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11790 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-24 04:54:45 +00:00
Chris Lattner
50c372b3d9 fix typeo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11446 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-14 19:27:26 +00:00
Chris Lattner
10610646cb Document new intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11438 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-14 04:08:35 +00:00
Chris Lattner
3301ced603 Be a bit more specific about what the alignment value means and the restrictions on it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11360 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-12 21:18:15 +00:00
Chris Lattner
0eb51b440c Add support for the llvm.memmove intrinsic.
Patch graciously contributed by Reid Spencer!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11354 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-12 18:10:10 +00:00
Chris Lattner
33aec9efa9 Document the llvm.memcpy intrinsic. Clean up some of the formatting of other
sections


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11350 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-12 17:01:32 +00:00
Chris Lattner
8ff759072f Add links to SLD from the LangRef.html doc
Clean up the SLD document a LOT
Fill in a lot of details in the SLD document
update the formats for the object descriptors


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10698 91177308-0d34-0410-b5e6-96231b3b80d8
2004-01-06 05:31:32 +00:00
John Criswell
009900b512 Fixed a small grammatical error.
Explained that function return types cannot be aggregate types.
Explained that functions with the same name but different type signatures
are considered to be different functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10230 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-25 21:45:46 +00:00
Chris Lattner
261efe953b checkin reid's docpatch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10200 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-25 01:02:51 +00:00
John Criswell
23e1492bb1 Fixed another minor grammatical error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10130 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-21 17:42:22 +00:00
John Criswell
2436eda94a Minor grammatical and punctuation corrections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10126 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-21 16:09:42 +00:00
Misha Brukman
9d0919f62b First pass at cleaning up LangRef.html: stylesheet-ification, consistent
formatting, more strict adherence to HTML 4.01, other misc. cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9799 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-08 01:05:38 +00:00
Chris Lattner
c7f1cfb1fd Fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9610 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 04:35:26 +00:00
Chris Lattner
478921b11a Clarify that all manipulatable values must be of first class type, and specifically
update the PHI node entry to mention this as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9606 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30 01:31:37 +00:00
John Criswell
0f6d7c0e20 Merged in RELEASE_1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9538 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-27 18:18:16 +00:00
Chris Lattner
2c1bbd8bea Hrm, for some reason, my fingers like typing va_begin. Weird
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9329 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-21 15:43:55 +00:00
Chris Lattner
8d1a81d524 Update for new varargs support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9218 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 05:51:36 +00:00
Chris Lattner
25839f02c6 Add documentation for weak variables
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9001 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-10 05:01:39 +00:00
Chris Lattner
f065107bac Add info about volatile loads/stores
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8403 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-08 18:27:49 +00:00
Chris Lattner
43c2eb7def Final cleanups, document is good to go
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8338 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-03 04:20:13 +00:00
Chris Lattner
27f71f2659 Add a WHOLE lot of updates clarifications and fixes. This is not done but getting closer. I changed the docs to reflect the goal of making unwind an instruction, not an intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8337 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-03 00:41:47 +00:00
Chris Lattner
fde246a42f hyphenation police visited here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8336 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-02 23:38:41 +00:00
Chris Lattner
b3ceec2117 Document the llvm.unwind intrinsic.
Clarify the documentation for the invoke instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8196 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-28 22:12:25 +00:00
Misha Brukman
bc0e998c49 The word separate' only has one e'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7173 91177308-0d34-0410-b5e6-96231b3b80d8
2003-07-14 17:20:40 +00:00
Chris Lattner
8c6bb90b8e Diversify examples
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6778 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-18 21:30:51 +00:00
Chris Lattner
b5561ffaf2 fix incorrect anchor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6777 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-18 21:28:11 +00:00
Chris Lattner
a1a2097919 va_start only takes on argument now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6039 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-08 15:55:44 +00:00
Chris Lattner
c29b125a99 Update information about the switch instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6037 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-08 05:08:48 +00:00
Chris Lattner
d9ad5b329f * Add information about LLVM intrinsics
* Add information about the va_arg instruction
* Add information about the llvm.va_* intrinsics


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6036 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-08 04:57:36 +00:00
Chris Lattner
3dfa10b5d1 getelementptr uses long instead of uint indexes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4993 91177308-0d34-0410-b5e6-96231b3b80d8
2002-12-13 06:01:21 +00:00
Chris Lattner
a0ff4aad41 Add a note about the switch instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4551 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-05 00:21:03 +00:00
Misha Brukman
a3bbcb5b66 Fix spelling of `propagate'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4423 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-29 23:06:16 +00:00
Misha Brukman
e6fe6713da Fixed grammar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3805 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-18 02:35:14 +00:00
Chris Lattner
eaee9e1317 Add distinction between integer and integral types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3570 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-03 00:52:52 +00:00
Chris Lattner
d816bcfe40 Add "written by" note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3543 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-30 21:50:21 +00:00
Chris Lattner
690d99b31b Comment out broken link
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3520 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-29 18:33:48 +00:00
Chris Lattner
f31860b188 Fix typeo noticed by Bryan
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3388 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-19 21:14:38 +00:00
Chris Lattner
2b4dcbb91d Add a note mentioning that bools promote to 0 or 1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3352 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-15 19:36:05 +00:00
Chris Lattner
e489aa563c Remove information about dead 'not' instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3319 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-14 17:55:59 +00:00
Chris Lattner
f8856bc403 Add a note that specifies that the whether or not sign extension is done by
a cast is determined by the source operand.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3304 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-13 20:52:09 +00:00
Chris Lattner
b7c6c2a5cc Avoid calling LLVM "Strongly typed"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2785 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25 20:20:08 +00:00
Chris Lattner
c98cbbcc08 Add borders to truth tables
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2782 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25 18:06:50 +00:00
Chris Lattner
7bae3950ee Minor tuning and fleshing out of the language reference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2781 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25 18:03:17 +00:00
Chris Lattner
6536cfec4a Finish up the updates to the language reference
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2509 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 22:08:29 +00:00
Chris Lattner
2b7d320d90 Updated documentation a _LOT_
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2474 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 03:03:22 +00:00
Chris Lattner
7faa883665 Update documentation a LOT, make it more accurate and match current model
better.  Still more room for improvement.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2245 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-14 06:13:44 +00:00
Chris Lattner
33ba0d91ab Updated documentation for load, store & getelementptr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-09 00:26:23 +00:00
Chris Lattner
db0926260d Update documentation to reflect:
* Changes in PHI node structure
* Intentions for load instruction to work with structures


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22 91177308-0d34-0410-b5e6-96231b3b80d8
2001-06-11 15:03:43 +00:00
Chris Lattner
009505452b Initial revision
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2 91177308-0d34-0410-b5e6-96231b3b80d8
2001-06-06 20:29:01 +00:00