1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
Commit Graph

491 Commits

Author SHA1 Message Date
Dan Gohman
31a31d4511 Initial documentation for first-class aggregates changes.
llvm-svn: 51013
2008-05-12 23:51:09 +00:00
Dan Gohman
b3a433ed7b Fix a malformed %gt;
llvm-svn: 51011
2008-05-12 23:38:42 +00:00
Nate Begeman
b5b1e1353b 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
ddd6b159be Doc updates/edits, contributed by Terence Parr!
llvm-svn: 50205
2008-04-24 05:59:56 +00:00
Chris Lattner
7b8303d37b 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
7fe5f6ffea Allow undef as an operand to getresult.
llvm-svn: 50130
2008-04-23 04:06:52 +00:00
Chris Lattner
5b6f941e70 free(null) -> noop
llvm-svn: 49972
2008-04-19 22:41:32 +00:00
Chris Lattner
2f237756c5 Some clarifications suggested by Jon Sargeant
llvm-svn: 49963
2008-04-19 21:01:16 +00:00
Chris Lattner
0d6e900c28 more edits from Jon Sargeant
llvm-svn: 49065
2008-04-02 00:38:26 +00:00
Chris Lattner
c0850245b7 add a dropped hunk from Jon Sargeant's patch.
llvm-svn: 49045
2008-04-01 18:47:32 +00:00
Chris Lattner
a0dbb9a92a make langref more precise, wave 1, from Jon Sargeant
llvm-svn: 49044
2008-04-01 18:45:27 +00:00
Devang Patel
8408d79657 void type is also a valid function return type.
llvm-svn: 48740
2008-03-24 20:52:42 +00:00
Devang Patel
223760bf3f Fix typo. Clarify underlying message.
llvm-svn: 48734
2008-03-24 18:10:52 +00:00
Devang Patel
d603d825c7 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
197f07a72b Aliasing chains cleanups: update langref, add check into verifier
llvm-svn: 48685
2008-03-22 08:36:14 +00:00
Chris Lattner
3819e559c9 clean up and fix the call section.
llvm-svn: 48651
2008-03-21 17:24:17 +00:00
Chris Lattner
cc10d27f38 cleanups for the getresult section.
llvm-svn: 48650
2008-03-21 17:20:51 +00:00
Duncan Sands
c7c1fab458 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
ee790026a3 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
0d234e20a5 fix grammer
llvm-svn: 48211
2008-03-11 05:51:59 +00:00
Devang Patel
b1b30b2c76 Document multiple return values.
llvm-svn: 48173
2008-03-10 20:49:15 +00:00
Andrew Lenharth
db9cd46f5d 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
0dcb894d50 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
48d44e0481 Make the definition of the noalias attribute clearer.
llvm-svn: 47255
2008-02-18 04:09:01 +00:00
Andrew Lenharth
c178981b85 llvm.memory.barrier, and impl for x86 and alpha
llvm-svn: 47204
2008-02-16 01:24:58 +00:00
Gabor Greif
3453f29f65 explain that NumElements in alloca and malloc defaults to one
llvm-svn: 46912
2008-02-09 22:24:34 +00:00
Chris Lattner
f898e3cc8f llvm.sqrt(-0.0) is defined.
llvm-svn: 46500
2008-01-29 07:00:44 +00:00
Chris Lattner
ff2b9ef01b 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
b26ac8cbb2 Add description of 'llvm.trap' intrinsic. Also, minor fixes in formatting.
llvm-svn: 46024
2008-01-15 22:31:34 +00:00
Chris Lattner
8c17d65f09 clarify that byval is valid for any pointer argument.
llvm-svn: 45998
2008-01-15 04:34:22 +00:00
Chris Lattner
6fa8e434a3 document the byval parameter attribute.
llvm-svn: 45855
2008-01-11 06:20:47 +00:00
Chris Lattner
2b8bb9d2a4 improve description of alignment, patch by Alain Frisch.
llvm-svn: 45662
2008-01-06 21:04:43 +00:00
Chris Lattner
f8d3ea59f3 Fix typo noticed by 'Danny' in PR1901
llvm-svn: 45661
2008-01-06 19:51:52 +00:00
Chris Lattner
6142c837b5 fix nesting issues.
llvm-svn: 45566
2008-01-04 04:34:14 +00:00
Chris Lattner
056ca9d8e2 fix validation issues.
llvm-svn: 45565
2008-01-04 04:33:49 +00:00
Chris Lattner
3618504cc2 improve the description of types, patch by Alain Frisch
llvm-svn: 45564
2008-01-04 04:32:38 +00:00
Chris Lattner
233cd2bbcd update to llvm 2.0 syntax.
llvm-svn: 45355
2007-12-25 20:34:52 +00:00
Gordon Henriksen
a9f4ed4070 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
c42bf3be15 fix more table abuses.
llvm-svn: 45187
2007-12-19 05:04:11 +00:00
Chris Lattner
f87fd16366 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
d3bac47ce6 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
6d12d7c0fe Implement part of review feedback for address spaces.
llvm-svn: 44933
2007-12-12 08:44:39 +00:00
Christopher Lamb
99016c5793 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
fbd6134a51 Fix a typo spotted by Nick Lewycky.
llvm-svn: 44774
2007-12-10 03:30:21 +00:00
Gordon Henriksen
5d201e0bcc 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
3602011bec 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
d05a55f03f 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
2a8ef3f29a Add support for vectors to int <-> float casts.
llvm-svn: 44204
2007-11-17 03:58:34 +00:00
Duncan Sands
91b3db2956 Tweak the descriptions of the new 'const' and 'pure' attributes.
llvm-svn: 44132
2007-11-14 21:14:02 +00:00
Anton Korobeynikov
6108a7b107 Document pure/const parameter attributes
llvm-svn: 44111
2007-11-14 10:30:13 +00:00
Dan Gohman
6255ce9f5d Add support for vector remainder operations.
llvm-svn: 43744
2007-11-05 23:35:22 +00:00
Bill Wendling
8a53fc3a85 Put correct link in example
llvm-svn: 43216
2007-10-22 05:10:05 +00:00
Dan Gohman
17e4c10d4f 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
777d33e3b7 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
f38341e4a6 Fixing a typo. Found by Kevin André!
llvm-svn: 42956
2007-10-14 00:34:53 +00:00
Chris Lattner
a1c9e02298 Clarify that shifts that are too large are undefined.
llvm-svn: 42588
2007-10-03 21:01:14 +00:00
Chris Lattner
00a19fadfe remove extraneous tag
llvm-svn: 42581
2007-10-03 17:34:29 +00:00
Chris Lattner
fc0f3994a0 remove misleading documentation: LLVM has no atomic support yet.
llvm-svn: 42580
2007-10-03 17:33:51 +00:00
Dale Johannesen
b2923ff810 Document new sqrt and powi handling.
llvm-svn: 42540
2007-10-02 17:47:38 +00:00
Bill Wendling
135ef8e763 Validation fixes
llvm-svn: 42225
2007-09-22 09:23:55 +00:00
Chris Lattner
ec22695366 fix bugs in the manual
llvm-svn: 42221
2007-09-22 03:17:52 +00:00
Tanya Lattner
376d3091d9 Correct names.
llvm-svn: 42219
2007-09-22 00:03:01 +00:00
Tanya Lattner
bc74d75cbd Fix typo.
llvm-svn: 42217
2007-09-22 00:01:26 +00:00
Tanya Lattner
f413c665d6 One last fix to get name correct.
llvm-svn: 42216
2007-09-21 23:57:59 +00:00
Tanya Lattner
80f02ffa9f Fix silly typo.
llvm-svn: 42215
2007-09-21 23:57:04 +00:00
Tanya Lattner
7d68980d81 Update annotation intrinsic with more details.
llvm-svn: 42214
2007-09-21 23:56:27 +00:00
Tanya Lattner
e8c1cb789d 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
cd2ae40679 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
c358890f73 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
7a9495d5e6 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
b31856afd4 Implement review feedback on trampoline documentation.
llvm-svn: 41304
2007-08-22 23:39:54 +00:00
Reid Spencer
c6ed1c46f4 Describe the global/local naming convention.
llvm-svn: 40890
2007-08-07 14:34:28 +00:00
Chandler Carruth
00e56b0e81 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
4d35935f55 fp2uint -> fptoui
llvm-svn: 40633
2007-07-31 14:40:14 +00:00
Duncan Sands
79f8131398 Forget to add 'nest' to the list of parameter
attributes.

llvm-svn: 40565
2007-07-27 19:57:41 +00:00
Duncan Sands
e8bb2c6d32 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
e5c617b3a0 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
63e429d8bf Silly HTML
llvm-svn: 40117
2007-07-20 20:03:33 +00:00
Reid Spencer
491c2963bd Fix validation errors.
llvm-svn: 40116
2007-07-20 19:59:11 +00:00
Chandler Carruth
33a4d149d6 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
44d34e9b61 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
e538b98446 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
4db194d120 remove obsolete note
llvm-svn: 39825
2007-07-13 20:08:19 +00:00
Chris Lattner
e19d21fc74 fix some bugs in the manual
llvm-svn: 39822
2007-07-13 20:01:46 +00:00
Gabor Greif
f8138f9cb9 first pass of nomenclature changes in .html files
llvm-svn: 37956
2007-07-06 22:07:22 +00:00
Tanya Lattner
e662c7928b Update docs for llvm.var.annotation intrinsic.
llvm-svn: 37635
2007-06-18 23:42:37 +00:00
Tanya Lattner
203b1ae094 Add local var annotation intrinsic.
llvm-svn: 37603
2007-06-15 20:50:54 +00:00
Chris Lattner
8268a689b4 one final bugfix
llvm-svn: 37558
2007-06-12 17:01:15 +00:00
Chris Lattner
a1512abbed modernize example
llvm-svn: 37557
2007-06-12 17:00:26 +00:00
Chris Lattner
5fa8565289 wording fix noticed by Ivan Novick
llvm-svn: 37519
2007-06-08 16:52:14 +00:00
Chris Lattner
da6de2a08d update to match latest changes
llvm-svn: 37474
2007-06-06 18:28:13 +00:00
Zhou Sheng
09b12fef98 Commit first round work of PR1373. "noalias" is now fully supported in
VMCore, BitCode, and Assembly. Documentation and test case paramattrs.ll
updated also.

llvm-svn: 37432
2007-06-05 05:28:26 +00:00
Chris Lattner
dc15e2779b more fixes to C code.
llvm-svn: 37339
2007-05-29 15:43:56 +00:00
Bill Wendling
1b255037d2 Fixed some formatting.
llvm-svn: 37338
2007-05-29 09:42:13 +00:00
Bill Wendling
486876da86 Fix for PR1452. Removed "define" keyword from the C code. Added "<div
class="doc_code">" to code examples.

llvm-svn: 37335
2007-05-29 09:04:49 +00:00
Chris Lattner
4b6160d0da remove contradiction owen noticed
llvm-svn: 37327
2007-05-24 19:13:27 +00:00
Reid Spencer
65e79ac699 Update for arbitrary precision integer types.
llvm-svn: 37109
2007-05-16 18:44:01 +00:00
Reid Spencer
03903c3181 The wrapping behavior of part_set is not desirable. Adjust the
documentation to describe the desired behavior.

llvm-svn: 37036
2007-05-14 16:50:20 +00:00
Reid Spencer
0f0310012d 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.

llvm-svn: 37035
2007-05-14 16:14:57 +00:00
Anton Korobeynikov
3d95e52ea2 Implement protected visibility. This partly implements PR1363. Linker
should be taught to deal with protected symbols.

llvm-svn: 36565
2007-04-29 18:35:00 +00:00
Anton Korobeynikov
cb2004f82c Implement review feedback
llvm-svn: 36564
2007-04-29 18:02:48 +00:00
Jeff Cohen
daed13e4b8 Minor corrections.
llvm-svn: 36548
2007-04-29 01:07:00 +00:00
Anton Korobeynikov
45162c6dad Implement review feedback. Aliasees can be either GlobalValue's or
bitcasts of them.

llvm-svn: 36537
2007-04-28 13:45:00 +00:00
Anton Korobeynikov
25dc9a61cb Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part
will follow.

llvm-svn: 36435
2007-04-25 14:27:10 +00:00
Jeff Cohen
1851854ac2 Undo erroneous corrections.
llvm-svn: 36340
2007-04-22 14:56:37 +00:00
Jeff Cohen
a2a64760f6 Minor corrections.
llvm-svn: 36325
2007-04-22 01:17:39 +00:00
Christopher Lamb
b56b6a7ad7 add support for alignment attributes on load/store instructions
llvm-svn: 36301
2007-04-21 08:16:25 +00:00
Lauro Ramos Venancio
000b6f4d9b update documentation
llvm-svn: 35953
2007-04-12 20:34:36 +00:00
Reid Spencer
dc71bea48d Fix extra argument in part_set examples. Thanks Zhiru.
llvm-svn: 35936
2007-04-12 01:03:03 +00:00
Reid Spencer
f55aa23d33 Fix validation errors.
llvm-svn: 35933
2007-04-11 23:49:50 +00:00
Reid Spencer
3452a4d41c Missing end tag. Thanks, Nick.
llvm-svn: 35932
2007-04-11 23:46:06 +00:00
Reid Spencer
683fdc6faa Put period inside the paragraph!
llvm-svn: 35930
2007-04-11 23:26:07 +00:00
Reid Spencer
ef691857bb Document the part_set intrinsic.
llvm-svn: 35929
2007-04-11 23:23:49 +00:00
Reid Spencer
2c005107dc Fix name of an intrinsic: bit.part_select -> part.select
llvm-svn: 35853
2007-04-10 02:51:31 +00:00
Reid Spencer
a4d5642bb8 Remove the part_set intrinsic. It won't get implemented as an intrinsic.
llvm-svn: 35667
2007-04-04 19:15:59 +00:00
Reid Spencer
cc3e39562f Appease Chris' pedantic streak.
llvm-svn: 35647
2007-04-04 05:46:04 +00:00
Reid Spencer
d187b99ad9 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.

llvm-svn: 35645
2007-04-04 02:42:35 +00:00
Reid Spencer
50844453dd bwsap -> bswap
llvm-svn: 35580
2007-04-02 02:25:19 +00:00
Reid Spencer
0df30afbef Fix some bswap typos that Chris noticed.
llvm-svn: 35564
2007-04-02 00:19:52 +00:00
Reid Spencer
167c5f02ce Preview documentation for additional intrinsic functions.
llvm-svn: 35558
2007-04-01 19:00:37 +00:00
Reid Spencer
205fd857c5 For PR1297:
Preview documentation for the llvm.bit.concat intrinsic (yet to be
implemented).

llvm-svn: 35552
2007-04-01 08:27:01 +00:00
Reid Spencer
f9dad9ed2f 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.

llvm-svn: 35550
2007-04-01 08:04:23 +00:00
Duncan Sands
74da63de4f Remove reference to checkpoint.
llvm-svn: 35507
2007-03-30 16:09:58 +00:00
Duncan Sands
05834dfd9e Various hopefully correct easy fixes.
llvm-svn: 35506
2007-03-30 12:22:09 +00:00
Reid Spencer
d7ef916d2d Undocument the implementation keyword
Docuemnt the checkpoint keyword

llvm-svn: 35413
2007-03-28 02:46:29 +00:00
Reid Spencer
7edbb3082f Fix a link.
llvm-svn: 35306
2007-03-24 22:40:44 +00:00
Reid Spencer
88d0496d66 Correct the description of srem. remainder follows the dividend not the
divisor!

llvm-svn: 35303
2007-03-24 22:23:39 +00:00
Reid Spencer
3fd4e45972 Add noreturn function attribute.
llvm-svn: 35262
2007-03-22 02:18:56 +00:00
Reid Spencer
3dd6681b9e Preview nounwind function attribute.
llvm-svn: 35256
2007-03-22 02:02:11 +00:00
Anton Korobeynikov
61b9366c9f More LangRef fixes. Corrected names of intrinsics.
llvm-svn: 35249
2007-03-22 00:02:17 +00:00
Anton Korobeynikov
cdfb4988d9 Fixed va_arg example. Reported by Roman Samoilov
llvm-svn: 35248
2007-03-21 23:58:04 +00:00
Jim Laskey
f19a75ee27 Add link to exception handling.
llvm-svn: 35102
2007-03-14 19:31:19 +00:00
Reid Spencer
52e307f820 Add a section on the target datalayout syntax and describe the defaults
and rules used by LLVM to construct the target's layout rules.

llvm-svn: 34433
2007-02-19 23:54:10 +00:00
Reid Spencer
80c836c443 For PR1195:
Packed -> Vector

llvm-svn: 34296
2007-02-15 03:07:05 +00:00
Reid Spencer
96661f106d Put the Shift instructions in the right section.
llvm-svn: 33782
2007-02-02 13:57:07 +00:00
Reid Spencer
4736f2b02d Preview of the shift instructions becoming Binary Operators.
llvm-svn: 33720
2007-01-31 21:39:12 +00:00
Anton Korobeynikov
c766384e4f Grammar fix
llvm-svn: 33602
2007-01-28 15:27:21 +00:00
Anton Korobeynikov
3cb3ea516f Document 'inreg' & 'sret'
llvm-svn: 33600
2007-01-28 14:30:45 +00:00
Anton Korobeynikov
6da3df75ec Updating documentation:
- Document visibility stuff
 - Fix gcc' supported attributes list
 - Document udis86 configure option

llvm-svn: 33462
2007-01-23 12:35:46 +00:00
Reid Spencer
e33c18f4d2 For PR970:
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!

llvm-svn: 33415
2007-01-21 00:29:26 +00:00
Reid Spencer
514b76730f icmp doesn't support comparison of packed types.
llvm-svn: 33357
2007-01-19 17:11:12 +00:00
Reid Spencer
4212cc8c4e One more @ to remove.
llvm-svn: 33240
2007-01-15 18:28:34 +00:00
Reid Spencer
a3435cea23 Update documentation for parameter attributes for the syntax change.
llvm-svn: 33238
2007-01-15 18:27:39 +00:00
Chris Lattner
6026cbf165 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.

llvm-svn: 33217
2007-01-15 01:54:13 +00:00
Chris Lattner
ad0711b2eb clarify linkonce/weak linkage
llvm-svn: 33201
2007-01-14 06:51:48 +00:00
Reid Spencer
f5a1a8e8f0 Fix an incorrect conversion of int -> i32
llvm-svn: 33199
2007-01-14 06:29:54 +00:00
Chris Lattner
0d479b2b2c add a global variable example
llvm-svn: 33190
2007-01-14 00:27:09 +00:00
Anton Korobeynikov
548b9af9c2 * 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)

llvm-svn: 33136
2007-01-12 19:20:47 +00:00
Reid Spencer
dc437799c4 Fix a typo.
llvm-svn: 33118
2007-01-12 15:46:11 +00:00
Reid Spencer
354e21ece7 Update for changes in the assembly syntax. bool is replaced with i1.
llvm-svn: 33106
2007-01-12 03:35:51 +00:00
Reid Spencer
7b13c6b655 Explain that bitcast can only cast a pointer to another pointer.
llvm-svn: 33041
2007-01-09 20:08:58 +00:00
Chris Lattner
11742f393a Fully specify the type of the llvm.va* intrinsics. This helps resolve
Pr1093

llvm-svn: 33009
2007-01-08 07:55:15 +00:00
Chris Lattner
37d3f423c4 llvm.isunordered is no longer alive.
llvm-svn: 32995
2007-01-07 08:53:26 +00:00
Reid Spencer
638b8441d3 Add an example to the trunc instruction to clarify trunc to bool.
Example provided by Baptiste Lepilleur.

llvm-svn: 32931
2007-01-05 21:33:08 +00:00
Reid Spencer
2ca3b609dc Correct the documentation for function declarations. They can have dllimport
or extern_weak linkage as well as "externally visible".

llvm-svn: 32887
2007-01-05 00:59:10 +00:00
Reid Spencer
70f0dbeea5 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.

llvm-svn: 32874
2007-01-04 16:43:23 +00:00
Reid Spencer
9c23bd6133 icmp and fcmp do not take packed type operands.
llvm-svn: 32864
2007-01-04 05:19:58 +00:00
Reid Spencer
99efdb330f Remove documentation of non-existent cextcc and csretextcc calling
conventions as these have been replaced with parameter attributes.

llvm-svn: 32797
2006-12-31 21:30:18 +00:00
Reid Spencer
c2be766b76 One more try on the table formatting.
llvm-svn: 32793
2006-12-31 07:20:23 +00:00
Reid Spencer
fac01a2470 Clean up some typos and formatting.
llvm-svn: 32792
2006-12-31 07:18:34 +00:00
Reid Spencer
c1d50e7137 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.

llvm-svn: 32791
2006-12-31 07:07:53 +00:00
Reid Spencer
b7c7a56ef8 Preview of new calling conventions: cextcc and csretextcc to handle explicit
sign and zero extension in function calls.

llvm-svn: 32764
2006-12-28 16:55:55 +00:00
Andrew Lenharth
d93b9ff60e Packed Structure Definitions (docs)
llvm-svn: 32357
2006-12-08 17:13:00 +00:00
Reid Spencer
6ae0c0fc62 Tie the ordered/unordered predicate descriptions to their meaning wrt
to QNAN values.

llvm-svn: 32272
2006-12-06 07:08:07 +00:00
Reid Spencer
f60eb61a53 We only support 32-bit or 64-bit sequential type indices for GEP. Document
it as so.

llvm-svn: 32197
2006-12-04 21:29:24 +00:00
Reid Spencer
d9c3d3a10b Document the icmp and fcmp constant expressions.
llvm-svn: 32188
2006-12-04 19:23:19 +00:00
Reid Spencer
dd477ab627 Update for signless GEP semantics.
llvm-svn: 32159
2006-12-03 16:53:48 +00:00
Chris Lattner
fedc6153c3 remove dead tag
llvm-svn: 31944
2006-11-27 21:53:28 +00:00
Reid Spencer
93bdfff01e Corrections from review.
llvm-svn: 31865
2006-11-19 03:00:14 +00:00
Reid Spencer
603a6e0590 Update a reference to the old setcc instruction.
llvm-svn: 31860
2006-11-18 21:55:45 +00:00
Reid Spencer
dfa8272cca For PR950:
Documentation preview of the upcoming icmp and fcmp instructions that
will replace the various setcc instructions.

llvm-svn: 31859
2006-11-18 21:50:54 +00:00
Reid Spencer
2aaa443bc0 Document new constant expr operators, rename bitconvert as bitcast.
llvm-svn: 31693
2006-11-11 23:08:07 +00:00
Reid Spencer
71ccba2570 Add a preview of two new conversion operators: ptrtoint and inttoptr. Update
the defintion of bitconvert correspondingly.

llvm-svn: 31688
2006-11-11 21:00:47 +00:00
Reid Spencer
a6a6d83b1a Post-review changes on conversion instructions.
llvm-svn: 31607
2006-11-09 23:03:26 +00:00
Reid Spencer
9456e29646 Fix runaway <tt> element and section ordering.
llvm-svn: 31606
2006-11-09 21:48:10 +00:00
Reid Spencer
31c63cb092 Remove futurisms that won't be in our future.
llvm-svn: 31605
2006-11-09 21:42:14 +00:00
Reid Spencer
934534d8df One more time for indentation.
llvm-svn: 31604
2006-11-09 21:18:01 +00:00
Reid Spencer
72af785994 Fix indentation problem starting at GEP.
llvm-svn: 31603
2006-11-09 21:15:49 +00:00
Reid Spencer
da1f5b882a 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.

llvm-svn: 31542
2006-11-08 06:47:33 +00:00
Reid Spencer
7374a87fdb Fix the section headings.
llvm-svn: 31532
2006-11-08 01:18:52 +00:00
Reid Spencer
7ae0bd2d88 For PR950:
Early commit of the documentation for new conversion instructions for
easier review.

llvm-svn: 31531
2006-11-08 01:11:31 +00:00
Reid Spencer
1abf69e923 For PR950:
Replace the REM instruction with UREM, SREM and FREM.

llvm-svn: 31369
2006-11-02 01:53:59 +00:00
Reid Spencer
6833ffe8b8 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.

llvm-svn: 31195
2006-10-26 06:15:43 +00:00
Chris Lattner
99ce7667fb clarify
llvm-svn: 30966
2006-10-15 20:05:59 +00:00
Anton Korobeynikov
6e19f80688 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.

llvm-svn: 30374
2006-09-14 18:23:27 +00:00
Chris Lattner
06c3df5cb1 new powi intrinsic
llvm-svn: 30175
2006-09-08 06:34:02 +00:00
Chris Lattner
180ca1aa2e Add a link to the GEP faq.
llvm-svn: 29690
2006-08-15 00:45:58 +00:00
Chris Lattner
f04cf06b5a Decribe the "implementation" keyword.
llvm-svn: 28762
2006-06-13 03:05:47 +00:00
Chris Lattner
48febe01d9 New calling convention I will be adding shortly.
llvm-svn: 28403
2006-05-19 21:15:36 +00:00
Chris Lattner
a093e85b00 Update dox, patch by Vladimir Prus!
llvm-svn: 28306
2006-05-15 17:26:46 +00:00
Chris Lattner
fa70e32490 Change token to match asmprinter output
llvm-svn: 28285
2006-05-14 18:23:06 +00:00
Chris Lattner
e6f4065bca typo
llvm-svn: 27936
2006-04-21 21:37:40 +00:00
Tanya Lattner
72a79541a8 Adding back vector instructions to keep in mainline.
llvm-svn: 27704
2006-04-14 19:24:33 +00:00
Tanya Lattner
61fcf9afdf Removing unimplemented vector instructions from language referrence.
llvm-svn: 27703
2006-04-14 19:07:42 +00:00
Chris Lattner
f8221accdf Move the vector instructions to their own subsection.
llvm-svn: 27545
2006-04-08 23:07:04 +00:00
Chris Lattner
1729e9aa26 Wrap long lines, fix verification error
llvm-svn: 27531
2006-04-08 04:40:53 +00:00
Chris Lattner
4b3a885a0f use the right escapes
llvm-svn: 27530
2006-04-08 04:39:19 +00:00
Chris Lattner
f18ce95ff2 Description for the new shufflevector instruction I'm adding.
llvm-svn: 27502
2006-04-08 00:13:41 +00:00
Chris Lattner
a69d722c90 Fix a typo, thanks to Gabor Greif
llvm-svn: 27054
2006-03-24 07:16:10 +00:00
Robert Bocchino
359261f2e9 Fixed a typo in the vsetfp examples.
llvm-svn: 26768
2006-03-14 23:22:57 +00:00