Commit Graph

499 Commits

Author SHA1 Message Date
Bill Wendling 0f5541e4cf Update to explain how ssp and sspreq attributes override each other.
llvm-svn: 60112
2008-11-26 19:07:40 +00:00
Dan Gohman 8ef449828f Fix a few HTML tidiness issues.
llvm-svn: 59966
2008-11-24 17:18:39 +00:00
Torok Edwin 9bc1a6554e NULL, unique pointers from malloc(0), and freed pointers are legal values for
noalias attribute parameters/return values.

llvm-svn: 59955
2008-11-24 08:02:24 +00:00
Nick Lewycky d59572cb22 Seriously strengthen the guarantee offered by noalias on a function's return
value. It must now be as if the pointer were allocated and has not escaped to
the caller. Thanks to Dan Gohman for pointing out the error in the original
and helping devise this definition.

llvm-svn: 59940
2008-11-24 05:00:44 +00:00
Nick Lewycky f5ffcbcd0b Extend the 'noalias' attribute to function return values. This is intended to
indicate functions that allocate, such as operator new, or list::insert. The
actual definition is slightly less strict (for now).

No changes to the bitcode reader/writer, asm printer or verifier were needed.

llvm-svn: 59934
2008-11-24 03:41:24 +00:00
Misha Brukman 50de2b2365 Fixed named anchor for llvm.stackprotector intrinsic.
llvm-svn: 59893
2008-11-22 23:55:29 +00:00
Chris Lattner dd7083452f reapply Sanjiv's patch to genericize memcpy/memset/memmove to take an
arbitrary integer width for the count.

llvm-svn: 59823
2008-11-21 16:42:48 +00:00
Bill Wendling 4bce2bff88 Revert r59802. It was breaking the build of llvm-gcc:
g++ -m32 -c -g -DIN_GCC -W -Wall -Wwrite-strings -Wmissing-format-attribute -fno-common -mdynamic-no-pic -DHAVE_CONFIG_H -Wno-unused -DTARGET_NAME=\"i386-apple-darwin9.5.0\" -I. -I. -I../../llvm-gcc.src/gcc -I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include -I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include  -I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include -DENABLE_LLVM -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/../llvm.src/include  -D_DEBUG  -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS   -I. -I. -I../../llvm-gcc.src/gcc -I../../llvm-gcc.src/gcc/. -I../../llvm-gcc.src/gcc/../include -I./../intl -I../../llvm-gcc.src/gcc/../libcpp/include  -I../../llvm-gcc.src/gcc/../libdecnumber -I../libdecnumber -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.obj/include -I/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/include ../../llvm-gcc.src/gcc/llvm-types.cpp -o llvm-types.o
../../llvm-gcc.src/gcc/llvm-convert.cpp: In member function 'void TreeToLLVM::EmitMemCpy(llvm::Value*, llvm::Value*, llvm::Value*, unsigned int)':
../../llvm-gcc.src/gcc/llvm-convert.cpp:1496: error: 'memcpy_i32' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp:1496: error: 'memcpy_i64' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp: In member function 'void TreeToLLVM::EmitMemMove(llvm::Value*, llvm::Value*, llvm::Value*, unsigned int)':
../../llvm-gcc.src/gcc/llvm-convert.cpp:1512: error: 'memmove_i32' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp:1512: error: 'memmove_i64' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp: In member function 'void TreeToLLVM::EmitMemSet(llvm::Value*, llvm::Value*, llvm::Value*, unsigned int)':
../../llvm-gcc.src/gcc/llvm-convert.cpp:1528: error: 'memset_i32' is not a member of 'llvm::Intrinsic'
../../llvm-gcc.src/gcc/llvm-convert.cpp:1528: error: 'memset_i64' is not a member of 'llvm::Intrinsic'
make[3]: *** [llvm-convert.o] Error 1
make[3]: *** Waiting for unfinished jobs....
rm fsf-funding.pod gcov.pod gfdl.pod cpp.pod gpl.pod gcc.pod
make[2]: *** [all-stage1-gcc] Error 2
make[1]: *** [stage1-bubble] Error 2
make: *** [all] Error 2

llvm-svn: 59809
2008-11-21 09:09:41 +00:00
Sanjiv Gupta 09a203765a Make mem[cpy,move,set] intrinsics overloaded.
llvm-svn: 59802
2008-11-21 07:49:09 +00:00
Bill Wendling 1431331b47 - Move the stackprotector intrinsic to the general section.
- Rewrite the sentence to make it look as if English is my first language.

llvm-svn: 59592
2008-11-19 05:56:17 +00:00
Bill Wendling f85850f89e Documentation for the llvm.stackprotector intrinsic.
llvm-svn: 59557
2008-11-18 22:10:53 +00:00
Bill Wendling a813017b41 Update docs for ssp and sspreq function attributes.
llvm-svn: 59203
2008-11-13 01:02:51 +00:00
Mon P Wang 25f0106fd9 Added support for the following definition of shufflevector
<result> = shufflevector <n x <ty>> <v1>, <n x <ty>> <v2>, <m x i32> <mask> 

llvm-svn: 58964
2008-11-10 04:46:22 +00:00
Daniel Dunbar 0f8155ae4e Prevent assert when using '"' in names (via hexadecimal).
Update LangRef to mention \xx quoting in names.

llvm-svn: 57538
2008-10-14 23:51:43 +00:00
Dan Gohman ef9462f67c Fix missing end tags and invalid HTML entity syntax.
llvm-svn: 57500
2008-10-14 16:51:45 +00:00
Dan Gohman 93bf60d4cb Add a missing close-tag.
llvm-svn: 57497
2008-10-14 16:32:04 +00:00
Chris Lattner 0ae020952b fix some crazily long lines.
llvm-svn: 57444
2008-10-13 16:55:18 +00:00
Matthijs Kooijman 0e2682781c Improve the description on the getelementptr instruction. It should now better
define what the instruction does. This also makes it clear that getelementptr
can index into a vector type.

llvm-svn: 57440
2008-10-13 13:44:15 +00:00
Chris Lattner 6cbe8e99b3 fix typo
llvm-svn: 57287
2008-10-08 06:26:11 +00:00
Devang Patel 022562369f Improve function definition, call and invoke instruction docs.
llvm-svn: 57253
2008-10-07 17:48:33 +00:00
Matthijs Kooijman eefa7dfcd3 Add two forgotten </i>'s.
llvm-svn: 57239
2008-10-07 10:03:45 +00:00
Devang Patel 7e9b05ede5 Update function attributes docs.
llvm-svn: 57197
2008-10-06 18:50:38 +00:00
Duncan Sands 2a1d8bace1 Clarify the relationship between byval and readonly/
readnone.  Make clearer that readnone functions do not
dereference pointer arguments.  Do not use the highly
ambiguous "side-effects" in the readonly description
(since such functions can have control flow side-effects,
such as throwing an exception, or looping for ever).

llvm-svn: 57166
2008-10-06 08:14:18 +00:00
Chris Lattner 0625c28135 A word got optimized out, thanks to Duncan for pointing this out
llvm-svn: 57116
2008-10-05 17:14:59 +00:00
Dan Gohman cc3132e5ed Update the documentation for first-class aggregates changes,
and remove getresult and references thereto.

llvm-svn: 57064
2008-10-04 19:00:07 +00:00
Chris Lattner d552826d6e add a note about inline asm
llvm-svn: 57062
2008-10-04 18:36:02 +00:00
Chris Lattner d2597d71d4 improve description of param/ret attrs
llvm-svn: 57061
2008-10-04 18:33:34 +00:00
Chris Lattner fbf60a4f72 improve descriptions of function attrs
llvm-svn: 57060
2008-10-04 18:23:17 +00:00
Chris Lattner cbc4d2a164 notes are gone.
llvm-svn: 57059
2008-10-04 18:10:21 +00:00
Devang Patel e97439091f Fix grammar.
llvm-svn: 56796
2008-09-29 18:34:44 +00:00
Devang Patel 6891a55e73 Fix sentence.
llvm-svn: 56794
2008-09-29 18:16:09 +00:00
Devang Patel 9eb525d4f9 Implement function notes as function attributes.
llvm-svn: 56716
2008-09-26 23:51:19 +00:00
Dale Johannesen c50ada2f56 Accept 'inreg' attribute on x86 functions as
meaning sse_regparm (i.e. float/double values go
in XMM0 instead of ST0).  Update documentation
to reflect reality.

llvm-svn: 56619
2008-09-25 20:47:45 +00:00
Duncan Sands 7e99a94c18 The "alias" keyword comes first.
llvm-svn: 56170
2008-09-12 20:48:21 +00:00
Dan Gohman c579d978a3 Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments
and, if so, to return a vector of boolean as a result;

Extend the select LLVM IR instruction to allow you to specify a result
type which is a vector of boolean, in which case the result will be an
element-wise selection instead of choosing one vector or the other; and

Update LangRef.html to describe these changes.

This patch was contributed by Preston Gurd!

llvm-svn: 55969
2008-09-09 01:02:47 +00:00
Dan Gohman c05dca95a2 Bitcasting two or from aggregate types is not permitted. Update
LangRef.html, and teach the verifier to check bitcast instructions.

llvm-svn: 55921
2008-09-08 16:45:59 +00:00
Bill Wendling 5703c6e8dd Clean up CSS validator errors: 'Property align doesn't exist : center'
llvm-svn: 55885
2008-09-07 10:29:20 +00:00
Bill Wendling b175fa49ed Formatting changes. to make the information cleaner.
llvm-svn: 55884
2008-09-07 10:26:33 +00:00
Devang Patel 8af98cdf73 update.
llvm-svn: 55809
2008-09-04 23:10:26 +00:00
Devang Patel caacdbab3d Document function notes.
llvm-svn: 55808
2008-09-04 23:05:13 +00:00
Gabor Greif 0f75ad0a52 use the more precise 'op1' instead of 'var1' since the latter can be misunderstood to not encompass constants
llvm-svn: 54490
2008-08-07 21:46:00 +00:00
Bill Wendling 6e03f9a40b It's "a static", not "an static"
llvm-svn: 54379
2008-08-05 22:29:16 +00:00
Chris Lattner 67c37d1127 Expand acronyms, suggested by Walter Pawley
llvm-svn: 54362
2008-08-05 18:29:16 +00:00
Chris Lattner 1ca5c64440 Capitalize LLVM, suggested by Walt Pawley
llvm-svn: 54360
2008-08-05 18:21:08 +00:00
Mon P Wang 2c839d4b1e Added support for overloading intrinsics (atomics) based on pointers
to different address spaces.  This alters the naming scheme for those
intrinsics, e.g., atomic.load.add.i32 => atomic.load.add.i32.p0i32

llvm-svn: 54195
2008-07-30 04:36:53 +00:00
Nate Begeman fecbc8cff1 Add vector shifts to the IR, patch by Eli Friedman.
CodeGen & Clang work coming next.

llvm-svn: 54161
2008-07-29 15:49:41 +00:00
Duncan Sands 825bde45cc Note that 'nest' only applies to pointers.
llvm-svn: 53226
2008-07-08 09:27:25 +00:00
Mon P Wang 6a490371c9 Added MemOperands to Atomic operations since Atomics touches memory.
Added abstract class MemSDNode for any Node that have an associated MemOperand
Changed atomic.lcs => atomic.cmp.swap, atomic.las => atomic.load.add, and
atomic.lss => atomic.load.sub

llvm-svn: 52706
2008-06-25 08:15:39 +00:00
Dan Gohman 88ce1a5b6b Fix the syntax of insertvalue in the example.
llvm-svn: 52623
2008-06-23 15:26:37 +00:00
Chris Lattner e4645615d3 integer types are not primitive, they are derived.
llvm-svn: 52551
2008-06-20 20:50:48 +00:00
Dan Gohman 08783a88a2 Fix a missing comma spotted by Bram Geron.
llvm-svn: 52467
2008-06-18 18:42:13 +00:00
Dan Gohman 1ecaf45cf1 IR, bitcode reader, bitcode writer, and asmparser changes to
insertvalue and extractvalue to use constant indices instead of
Value* indices. And begin updating LangRef.html.

There's definately more to come here, but I'm checking this 
basic support in now to make it available to people who are
interested.

llvm-svn: 51806
2008-05-31 00:58:22 +00:00
Dale Johannesen 4188aadbb2 Document common linkage.
llvm-svn: 51517
2008-05-23 23:13:41 +00:00
Dan Gohman da52d216e6 label is a first-class type.
llvm-svn: 51512
2008-05-23 22:50:26 +00:00
Dan Gohman 34d1c0d0f8 Update the description of first-class types to reflect that
structs and arrays are now first-class. And fix a sentance
fragment in the insertvalue description. Thanks to Chris
for pointing these out!

llvm-svn: 51506
2008-05-23 21:53:15 +00:00
Chris Lattner b54c30fab3 Clarify that and/or/xor/sdiv etc all allow vectors.
llvm-svn: 51335
2008-05-20 20:48:21 +00:00
Arnold Schwaighofer 2c6b88816d Add documentation for tail call optimization to CodeGenerator.html. Add a link
referring to it to LangRef.html.

llvm-svn: 51097
2008-05-14 09:17:12 +00:00
Dan Gohman 35a835cb60 s/indicies/indices/ and clarify the extractvalue and insertvalue are
working with struct field or array element values. Thanks Duncan!

llvm-svn: 51059
2008-05-13 18:16:06 +00:00
Dan Gohman b9d6660998 Initial documentation for first-class aggregates changes.
llvm-svn: 51013
2008-05-12 23:51:09 +00:00
Dan Gohman 43ba067132 Fix a malformed %gt;
llvm-svn: 51011
2008-05-12 23:38:42 +00:00
Nate Begeman d21957002a Add two new instructions to the llvm IR, vicmp and vfcmp. see updated LangRef
for details.  CodeGen support coming in a follow up patch

llvm-svn: 50985
2008-05-12 19:01:56 +00:00
Chris Lattner 851b77113f Doc updates/edits, contributed by Terence Parr!
llvm-svn: 50205
2008-04-24 05:59:56 +00:00
Chris Lattner da508ac5d8 fix description of 'ret' to be more correct with multiple return
values.  Clarify that it is impossible to 'multiply return' a 
struct with zero elements.

llvm-svn: 50131
2008-04-23 04:59:35 +00:00
Chris Lattner 1a640a6491 Allow undef as an operand to getresult.
llvm-svn: 50130
2008-04-23 04:06:52 +00:00
Chris Lattner 0f103e1304 free(null) -> noop
llvm-svn: 49972
2008-04-19 22:41:32 +00:00
Chris Lattner fe8519c818 Some clarifications suggested by Jon Sargeant
llvm-svn: 49963
2008-04-19 21:01:16 +00:00
Chris Lattner 1f17cce2eb more edits from Jon Sargeant
llvm-svn: 49065
2008-04-02 00:38:26 +00:00
Chris Lattner 81f929763c add a dropped hunk from Jon Sargeant's patch.
llvm-svn: 49045
2008-04-01 18:47:32 +00:00
Chris Lattner 1429e6fb29 make langref more precise, wave 1, from Jon Sargeant
llvm-svn: 49044
2008-04-01 18:45:27 +00:00
Devang Patel 9c1f8b1d55 void type is also a valid function return type.
llvm-svn: 48740
2008-03-24 20:52:42 +00:00
Devang Patel 8dec6c27b8 Fix typo. Clarify underlying message.
llvm-svn: 48734
2008-03-24 18:10:52 +00:00
Devang Patel e3dfc1cbf1 Update Function type documentation to clarify how multiple return values are supported.
llvm-svn: 48721
2008-03-24 05:35:41 +00:00
Anton Korobeynikov 25b2e8203a Aliasing chains cleanups: update langref, add check into verifier
llvm-svn: 48685
2008-03-22 08:36:14 +00:00
Chris Lattner fb7c88de77 clean up and fix the call section.
llvm-svn: 48651
2008-03-21 17:24:17 +00:00
Chris Lattner 141b613b32 cleanups for the getresult section.
llvm-svn: 48650
2008-03-21 17:20:51 +00:00
Duncan Sands c572c1e487 Clarify the unwind attribute. Add assumption
about sret made by the optimizers.

llvm-svn: 48452
2008-03-17 12:17:41 +00:00
Nick Lewycky 084ab471fe Commit works on regular functions too. Fix the syntax to allow @foo.
llvm-svn: 48414
2008-03-16 07:18:12 +00:00
Devang Patel d0f476471d fix grammer
llvm-svn: 48211
2008-03-11 05:51:59 +00:00
Devang Patel d6cff517d6 Document multiple return values.
llvm-svn: 48173
2008-03-10 20:49:15 +00:00
Andrew Lenharth 95528943e9 Atomic op support. If any gcc test uses __sync builtins, it might start failing on archs that haven't implemented them yet
llvm-svn: 47430
2008-02-21 06:45:13 +00:00
Duncan Sands fa4b673eac Clarify that 'sret' only applies to pointers, and
only applies to the first parameter.

llvm-svn: 47256
2008-02-18 04:19:38 +00:00
Owen Anderson 6110128ed5 Make the definition of the noalias attribute clearer.
llvm-svn: 47255
2008-02-18 04:09:01 +00:00
Andrew Lenharth 9b254eed32 llvm.memory.barrier, and impl for x86 and alpha
llvm-svn: 47204
2008-02-16 01:24:58 +00:00
Gabor Greif dd1fc981b5 explain that NumElements in alloca and malloc defaults to one
llvm-svn: 46912
2008-02-09 22:24:34 +00:00
Chris Lattner 00d7cb9942 llvm.sqrt(-0.0) is defined.
llvm-svn: 46500
2008-01-29 07:00:44 +00:00
Chris Lattner 2f2427e5aa make handling of overflow and undefined results much more clear.
Patch by Eli Friedman, thanks!

llvm-svn: 46428
2008-01-28 00:36:27 +00:00
Anton Korobeynikov 06cbb65cb0 Add description of 'llvm.trap' intrinsic. Also, minor fixes in formatting.
llvm-svn: 46024
2008-01-15 22:31:34 +00:00
Chris Lattner 352ab9b4a2 clarify that byval is valid for any pointer argument.
llvm-svn: 45998
2008-01-15 04:34:22 +00:00
Chris Lattner 5cee13f1df document the byval parameter attribute.
llvm-svn: 45855
2008-01-11 06:20:47 +00:00
Chris Lattner 2a1993fb2c improve description of alignment, patch by Alain Frisch.
llvm-svn: 45662
2008-01-06 21:04:43 +00:00
Chris Lattner ec56402557 Fix typo noticed by 'Danny' in PR1901
llvm-svn: 45661
2008-01-06 19:51:52 +00:00
Chris Lattner 43542b3a93 fix nesting issues.
llvm-svn: 45566
2008-01-04 04:34:14 +00:00
Chris Lattner b8f816e90d fix validation issues.
llvm-svn: 45565
2008-01-04 04:33:49 +00:00
Chris Lattner 7824d182da improve the description of types, patch by Alain Frisch
llvm-svn: 45564
2008-01-04 04:32:38 +00:00
Chris Lattner bea11173f5 update to llvm 2.0 syntax.
llvm-svn: 45355
2007-12-25 20:34:52 +00:00
Gordon Henriksen fb56bde933 Noting and enforcing that GC intrinsics are valid only within a
function with GC.

This will catch the error when the inliner inlines a function with
GC into a caller with no GC.

llvm-svn: 45350
2007-12-25 02:31:26 +00:00
Chris Lattner 747359f973 fix more table abuses.
llvm-svn: 45187
2007-12-19 05:04:11 +00:00
Chris Lattner 9a2e3cb48d avoid confusing terminology (what is a "word"?), fix scary markup, add section to TOC.
llvm-svn: 45150
2007-12-18 06:18:21 +00:00
Christopher Lamb 55c6d4f22f Make it clear in the LangRef that allocation instructions only operated on the generic address space. Implement support in the verifier for ensuring this is true.
llvm-svn: 45080
2007-12-17 01:00:21 +00:00
Christopher Lamb 25f5076612 Implement part of review feedback for address spaces.
llvm-svn: 44933
2007-12-12 08:44:39 +00:00
Christopher Lamb 308121c757 Add information on address space qualifiers for pointer types and global
declarations to the LangRef.

llvm-svn: 44860
2007-12-11 09:31:00 +00:00
Gordon Henriksen dc5cafb74e Fix a typo spotted by Nick Lewycky.
llvm-svn: 44774
2007-12-10 03:30:21 +00:00
Gordon Henriksen 71183b6739 Adding a collector name attribute to Function in the IR. These
methods are new to Function:

  bool hasCollector() const;
  const std::string &getCollector() const;
  void setCollector(const std::string &);
  void clearCollector();

The assembly representation is as such:

  define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to 
collector names, such that there is no overhead. A StringPool is 
further used to unique collector names, which are extremely
likely to be unique per process.

llvm-svn: 44769
2007-12-10 03:18:06 +00:00
Duncan Sands ad0ea2d430 Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls.  This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll).  Hopefully
a bitcode guru (who might that be? :) ) will fix it.

llvm-svn: 44359
2007-11-27 13:23:08 +00:00
Duncan Sands a89a113a20 Rename the 'const' parameter attribute to 'readnone',
and the 'pure' parameter attribute to 'readonly'.
Names suggested by DannyB.

llvm-svn: 44273
2007-11-22 20:23:04 +00:00
Nate Begeman d4d45c268c Add support for vectors to int <-> float casts.
llvm-svn: 44204
2007-11-17 03:58:34 +00:00
Duncan Sands 730a32643f Tweak the descriptions of the new 'const' and 'pure' attributes.
llvm-svn: 44132
2007-11-14 21:14:02 +00:00
Anton Korobeynikov 46f4446bba Document pure/const parameter attributes
llvm-svn: 44111
2007-11-14 10:30:13 +00:00
Dan Gohman 08143e397d Add support for vector remainder operations.
llvm-svn: 43744
2007-11-05 23:35:22 +00:00
Bill Wendling 8830ffed4c Put correct link in example
llvm-svn: 43216
2007-10-22 05:10:05 +00:00
Dan Gohman d0806a0508 Don't mention -enable-unsafe-fp-math in LangRef.html, as that option is
assumed to globally mutate the spec.

llvm-svn: 43078
2007-10-17 18:05:13 +00:00
Dan Gohman b6324c1243 Document the new llvm.sin, llvm.cos, and llvm.pow intrinsics. Feedback
is welcome!

llvm-svn: 43007
2007-10-15 20:30:11 +00:00
Gordon Henriksen a699c4dc65 Fixing a typo. Found by Kevin André!
llvm-svn: 42956
2007-10-14 00:34:53 +00:00
Chris Lattner f0e5011d21 Clarify that shifts that are too large are undefined.
llvm-svn: 42588
2007-10-03 21:01:14 +00:00
Chris Lattner 87a3dbe743 remove extraneous tag
llvm-svn: 42581
2007-10-03 17:34:29 +00:00
Chris Lattner 6a6fb7f7b7 remove misleading documentation: LLVM has no atomic support yet.
llvm-svn: 42580
2007-10-03 17:33:51 +00:00
Dale Johannesen dd89d2758e Document new sqrt and powi handling.
llvm-svn: 42540
2007-10-02 17:47:38 +00:00
Bill Wendling 252570f0ad Validation fixes
llvm-svn: 42225
2007-09-22 09:23:55 +00:00
Chris Lattner 5b95a171e2 fix bugs in the manual
llvm-svn: 42221
2007-09-22 03:17:52 +00:00
Tanya Lattner cf3e26fff2 Correct names.
llvm-svn: 42219
2007-09-22 00:03:01 +00:00
Tanya Lattner 08abc81a44 Fix typo.
llvm-svn: 42217
2007-09-22 00:01:26 +00:00
Tanya Lattner 0186a65ac7 One last fix to get name correct.
llvm-svn: 42216
2007-09-21 23:57:59 +00:00
Tanya Lattner afcdaf58d4 Fix silly typo.
llvm-svn: 42215
2007-09-21 23:57:04 +00:00
Tanya Lattner 23dbd57214 Update annotation intrinsic with more details.
llvm-svn: 42214
2007-09-21 23:56:27 +00:00
Tanya Lattner 293c037336 Adding support for __builtin_annotation with an intrinsic called llvm.annotation. This is similar to llvm.var.annotation but is applied to expressions.
llvm-svn: 42211
2007-09-21 22:59:12 +00:00
Chris Lattner 12477735f9 gcroot must take concrete types, not arbitrary types.
clean up intrinsic descriptions in langref a bit.

llvm-svn: 42194
2007-09-21 17:30:40 +00:00
Duncan Sands 86e0119822 Fold the adjust_trampoline intrinsic into
init_trampoline.  There is now only one
trampoline intrinsic.

llvm-svn: 41841
2007-09-11 14:10:23 +00:00
Nick Lewycky a9b13d5cc1 Fix description of the call instruction. There are two types, with one being
optional.

llvm-svn: 41785
2007-09-08 13:57:50 +00:00
Duncan Sands f2bcd37083 Implement review feedback on trampoline documentation.
llvm-svn: 41304
2007-08-22 23:39:54 +00:00
Reid Spencer b23b65f1ba Describe the global/local naming convention.
llvm-svn: 40890
2007-08-07 14:34:28 +00:00
Chandler Carruth 7132e00de7 This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.
This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.

llvm-svn: 40807
2007-08-04 01:51:18 +00:00
Reid Spencer 753163d95f fp2uint -> fptoui
llvm-svn: 40633
2007-07-31 14:40:14 +00:00
Duncan Sands 27e9159c00 Forget to add 'nest' to the list of parameter
attributes.

llvm-svn: 40565
2007-07-27 19:57:41 +00:00
Duncan Sands 644f917358 Support for trampolines, except for X86 codegen which is
still under discussion.

llvm-svn: 40549
2007-07-27 12:58:54 +00:00
Chandler Carruth fd418435be No longer referencing "shared memory" as this can confuse people. The memory is
clearly shared between processors if these instructions are being used, no 
further specification of what type of memory is necessary.

llvm-svn: 40118
2007-07-20 20:14:52 +00:00
Reid Spencer 65a72e3775 Silly HTML
llvm-svn: 40117
2007-07-20 20:03:33 +00:00
Reid Spencer 5b2cb0f88c Fix validation errors.
llvm-svn: 40116
2007-07-20 19:59:11 +00:00
Chandler Carruth 6a5f6bf685 This introduces the atomic operation intrinsics into the documentation. This is
a preview for the intrinsics that are going to be implemented over the next few 
weeks.

llvm-svn: 40115
2007-07-20 19:34:37 +00:00
Reid Spencer 314e1cb7ee For PR1553:
Change the keywords for the zext and sext parameter attributes to be 
zeroext and signext so they don't conflict with the keywords for the
instructions of the same name. This gets around the ambiguity.

llvm-svn: 40069
2007-07-19 23:13:04 +00:00
Dan Gohman 33988db5d5 Fix the documentation for llvm.sqrt so that sqrt(0) has defined behavior,
which appears to be the intent.

llvm-svn: 39922
2007-07-16 14:37:41 +00:00
Chris Lattner 0946f04236 remove obsolete note
llvm-svn: 39825
2007-07-13 20:08:19 +00:00
Chris Lattner 0a2d099792 fix some bugs in the manual
llvm-svn: 39822
2007-07-13 20:01:46 +00:00
Gabor Greif a54634adef first pass of nomenclature changes in .html files
llvm-svn: 37956
2007-07-06 22:07:22 +00:00
Tanya Lattner bed1d4d877 Update docs for llvm.var.annotation intrinsic.
llvm-svn: 37635
2007-06-18 23:42:37 +00:00
Tanya Lattner cb1b96047d Add local var annotation intrinsic.
llvm-svn: 37603
2007-06-15 20:50:54 +00:00
Chris Lattner 2150cde0e4 one final bugfix
llvm-svn: 37558
2007-06-12 17:01:15 +00:00
Chris Lattner 2b0bf4fc3b modernize example
llvm-svn: 37557
2007-06-12 17:00:26 +00:00
Chris Lattner a59fb10de8 wording fix noticed by Ivan Novick
llvm-svn: 37519
2007-06-08 16:52:14 +00:00
Chris Lattner 00538a1931 update to match latest changes
llvm-svn: 37474
2007-06-06 18:28:13 +00:00
Zhou Sheng 2444a9adeb 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