544 Commits

Author SHA1 Message Date
Misha Brukman
dccb025768 Fixed named anchor for llvm.stackprotector intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59893 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-22 23:55:29 +00:00
Chris Lattner
824b958e6f reapply Sanjiv's patch to genericize memcpy/memset/memmove to take an
arbitrary integer width for the count.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59823 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-21 16:42:48 +00:00
Bill Wendling
dc770929cb 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



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59809 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-21 09:09:41 +00:00
Sanjiv Gupta
219ab405e6 Make mem[cpy,move,set] intrinsics overloaded.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59802 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-21 07:49:09 +00:00
Bill Wendling
69e4adb22e - Move the stackprotector intrinsic to the general section.
- Rewrite the sentence to make it look as if English is my first language.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59592 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-19 05:56:17 +00:00
Bill Wendling
3c44f5bec9 Documentation for the llvm.stackprotector intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59557 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-18 22:10:53 +00:00
Bill Wendling
31359bab86 Update docs for ssp and sspreq function attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59203 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-13 01:02:51 +00:00
Mon P Wang
aeb06d2462 Added support for the following definition of shufflevector
<result> = shufflevector <n x <ty>> <v1>, <n x <ty>> <v2>, <m x i32> <mask> 



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58964 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-10 04:46:22 +00:00
Daniel Dunbar
76dea9547d Prevent assert when using '"' in names (via hexadecimal).
Update LangRef to mention \xx quoting in names.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57538 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-14 23:51:43 +00:00
Dan Gohman
0e451ceee3 Fix missing end tags and invalid HTML entity syntax.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57500 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-14 16:51:45 +00:00
Dan Gohman
01ac10142e Add a missing close-tag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57497 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-14 16:32:04 +00:00
Chris Lattner
50ad45c2fb fix some crazily long lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57444 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-13 16:55:18 +00:00
Matthijs Kooijman
e49d0bc946 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57440 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-13 13:44:15 +00:00
Chris Lattner
85a350f1d5 fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57287 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-08 06:26:11 +00:00
Devang Patel
307e8ab581 Improve function definition, call and invoke instruction docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57253 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-07 17:48:33 +00:00
Matthijs Kooijman
cb73d19a4c Add two forgotten </i>'s.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57239 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-07 10:03:45 +00:00
Devang Patel
f642f4707f Update function attributes docs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57197 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-06 18:50:38 +00:00
Duncan Sands
edb05dfe48 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).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57166 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-06 08:14:18 +00:00
Chris Lattner
94b5f7dc78 A word got optimized out, thanks to Duncan for pointing this out
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57116 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-05 17:14:59 +00:00
Dan Gohman
b1e6b969fe Update the documentation for first-class aggregates changes,
and remove getresult and references thereto.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57064 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-04 19:00:07 +00:00
Chris Lattner
4f993352ea add a note about inline asm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57062 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-04 18:36:02 +00:00
Chris Lattner
66d922c909 improve description of param/ret attrs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57061 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-04 18:33:34 +00:00
Chris Lattner
88d4b597ba improve descriptions of function attrs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57060 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-04 18:23:17 +00:00
Chris Lattner
0c46a7d666 notes are gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57059 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-04 18:10:21 +00:00
Devang Patel
66c6c65de2 Fix grammar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56796 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-29 18:34:44 +00:00
Devang Patel
12602059a1 Fix sentence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56794 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-29 18:16:09 +00:00
Devang Patel
2c9c3e7368 Implement function notes as function attributes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56716 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-26 23:51:19 +00:00
Dale Johannesen
c9c6da61ac 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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56619 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-25 20:47:45 +00:00
Duncan Sands
0b23ac1fcf The "alias" keyword comes first.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56170 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-12 20:48:21 +00:00
Dan Gohman
f72fb679ef 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!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55969 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-09 01:02:47 +00:00
Dan Gohman
500233aef9 Bitcasting two or from aggregate types is not permitted. Update
LangRef.html, and teach the verifier to check bitcast instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55921 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-08 16:45:59 +00:00
Bill Wendling
c7e4c4dd3a Clean up CSS validator errors: 'Property align doesn't exist : center'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55885 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-07 10:29:20 +00:00
Bill Wendling
e36dccc9b5 Formatting changes. to make the information cleaner.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55884 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-07 10:26:33 +00:00
Devang Patel
cdc0669c73 update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55809 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-04 23:10:26 +00:00
Devang Patel
f8b94812a1 Document function notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55808 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-04 23:05:13 +00:00
Gabor Greif
fb224a20bc use the more precise 'op1' instead of 'var1' since the latter can be misunderstood to not encompass constants
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54490 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-07 21:46:00 +00:00
Bill Wendling
837f39b839 It's "a static", not "an static"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54379 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-05 22:29:16 +00:00
Chris Lattner
d3eda89f4c Expand acronyms, suggested by Walter Pawley
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54362 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-05 18:29:16 +00:00
Chris Lattner
ebec678055 Capitalize LLVM, suggested by Walt Pawley
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54360 91177308-0d34-0410-b5e6-96231b3b80d8
2008-08-05 18:21:08 +00:00
Mon P Wang
e3b3a7241c 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54195 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-30 04:36:53 +00:00
Nate Begeman
5bc1ea0736 Add vector shifts to the IR, patch by Eli Friedman.
CodeGen & Clang work coming next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54161 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-29 15:49:41 +00:00
Duncan Sands
0789b8b518 Note that 'nest' only applies to pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53226 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-08 09:27:25 +00:00
Mon P Wang
2887310630 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52706 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-25 08:15:39 +00:00
Dan Gohman
52bb2db709 Fix the syntax of insertvalue in the example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52623 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-23 15:26:37 +00:00
Chris Lattner
4eaac9b181 integer types are not primitive, they are derived.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52551 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-20 20:50:48 +00:00
Dan Gohman
0066db626f Fix a missing comma spotted by Bram Geron.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52467 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-18 18:42:13 +00:00
Dan Gohman
81a0c0b44e 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51806 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-31 00:58:22 +00:00
Dale Johannesen
2307a7f0cf Document common linkage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51517 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-23 23:13:41 +00:00
Dan Gohman
ade5faa83f label is a first-class type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51512 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-23 22:50:26 +00:00
Dan Gohman
c4b49eb985 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!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51506 91177308-0d34-0410-b5e6-96231b3b80d8
2008-05-23 21:53:15 +00:00