Commit Graph

2720 Commits

Author SHA1 Message Date
Torok Edwin
9682607ad6 NULL, unique pointers from malloc(0), and freed pointers are legal values for
noalias attribute parameters/return values.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59955 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-24 08:02:24 +00:00
Nick Lewycky
b2b32fd3fe 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59940 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-24 05:00:44 +00:00
Nick Lewycky
02ff308aa1 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59934 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-24 03:41:24 +00:00
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
7a15273892 Describe how the JIT maps fields to MachineOperands, patch by
JP Bonn!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59876 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-22 19:10:48 +00:00
Devang Patel
a5c05aad57 Document TEST=dbgopt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59839 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-21 19:35:57 +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
Duraid Madina
41e4a59f2f LLVM does have a fortran FE!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59795 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-21 06:26:56 +00:00
Oscar Fuentes
370387c736 CMake: More documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59755 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-20 23:35:09 +00:00
Oscar Fuentes
25f1d0310c CMake: Some documentation. Work in progress.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59752 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-20 22:05:48 +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
Daniel Dunbar
607d6bb819 Grammar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59581 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-19 02:37:39 +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
Chris Lattner
37a1ebb24c punctuate, add wording about patches contributed by others.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59417 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-16 17:40:16 +00:00
Dan Gohman
83aad6494c LLVM can generate native code for amd64 on "Linux".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59257 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-13 19:07:07 +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
Duncan Sands
9a365b6acb Correct these links.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59126 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-12 10:10:25 +00:00
Chris Lattner
7d12b4b510 last validation errors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59072 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 19:36:31 +00:00
Chris Lattner
cfd5c26107 fix some validation errors <it> -> <i>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59070 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 19:35:15 +00:00
Chris Lattner
528875c229 fix some validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59069 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 19:34:28 +00:00
Chris Lattner
611944b63a remove an extraneous tag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59067 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 19:31:26 +00:00
Chris Lattner
7897538376 Make this document *substantially* better and cover a lot more territory.
Document written by Mason Woo (http://www.woo.com)!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59066 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-11 19:30:41 +00:00
Chris Lattner
e18b32eb24 final edits
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58966 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-10 05:40:34 +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
Chris Lattner
22b91d7fc4 fix validation problem.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58938 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-09 17:19:14 +00:00
Eric Christopher
203e71db29 Fix syntax of iterate_complex example. Noticed by Martin!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58900 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-08 08:20:49 +00:00
Dan Gohman
c4479a76b1 Document the acronym RAUW. Patch by Jonathan Brandmeyer!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58863 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-07 20:29:17 +00:00
Devang Patel
00f1c4040c Clarify documentation. A module pass MP can require a function paqss FP only if FP does not require any module pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58813 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-06 19:47:49 +00:00
Gabor Greif
ba10fe04e7 fix two validation errors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58722 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04 21:50:59 +00:00
Gabor Greif
0a43a0e9b3 fix typos, harmonize formatting
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58721 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04 21:48:10 +00:00
Tanya Lattner
a7ec706e9d Add note about cmake. Patch by Oscar Fuentes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58712 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-04 18:40:27 +00:00
Chris Lattner
1eb4df6481 mention fortran status.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58416 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30 03:58:13 +00:00
Torok Edwin
90e619afbe fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58384 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-29 16:32:06 +00:00
Chris Lattner
19bd0adf0d llvm-ld doesn't have a -march option. This fixes PR2961
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58345 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-28 20:05:06 +00:00
Torok Edwin
52790e5865 fix prototype of print, it is (llvm/Pass.h):
virtual void print(std::ostream &O, const Module *M) const;
instead of
  virtual void print(llvm::OStream &O, const Module *M) const;
as the docs say


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58337 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-28 17:29:23 +00:00
Torok Edwin
2b9cbf127f fix duplicate anchor names, and broken anchor links from the TOC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58332 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-28 16:54:34 +00:00
Gabor Greif
6f038f4140 formatting tweak for intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58239 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-27 10:17:24 +00:00
Bill Wendling
741748afce Some grammar fixes, and non-invasive format changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58237 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-27 09:27:33 +00:00
Chris Lattner
f322a9807a mention getresult -> extractvalue (PR2935)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58226 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-27 04:39:23 +00:00
Nick Lewycky
33b1c30b0b Remove -check-exit-code from bugpoint. This is subsumed by -append-exit-code.
Note that -check-exit-code was on by default while -append-exit-code is not.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58221 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-26 23:59:36 +00:00
Bruno Cardoso Lopes
b7e1a4f70d Added MIPS release notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58139 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-25 14:56:26 +00:00
Matthijs Kooijman
94199dad1e Fix spelling error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57820 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-20 08:45:34 +00:00
Gabor Greif
86af90d802 remove spurious space in link
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57677 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-17 14:43:58 +00:00
Nicolas Geoffray
56d313dc4b Remove naming Tilmann for generics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57599 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 20:25:04 +00:00
Gabor Greif
3bd3a269c1 catch one more typo, canonicalize LLVMdev
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57571 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 10:47:24 +00:00
Gabor Greif
804ffb611d fix some validation errors, improve formatting, squash a strange plural
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57570 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-15 10:29:51 +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
Daniel Dunbar
13739433d0 Add some ReleaseNotes on clang codegen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57535 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-14 23:25:09 +00:00