1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
Commit Graph

3296 Commits

Author SHA1 Message Date
Dan Gohman
394863c49d Add one-past-the-end language to the inbounds keyword.
llvm-svn: 77460
2009-07-29 16:00:30 +00:00
Chris Lattner
7bc86c5d43 some wording changes.
llvm-svn: 77443
2009-07-29 06:44:13 +00:00
Chris Lattner
e106454e5d link to a newer preso
llvm-svn: 77440
2009-07-29 06:19:14 +00:00
Andreas Bolka
5707be6a51 Fix a few typos and add links.
llvm-svn: 77403
2009-07-29 00:02:05 +00:00
Chris Lattner
553acfa328 discourage else after "noreturn" statements.
llvm-svn: 77387
2009-07-28 22:54:04 +00:00
Dan Gohman
490eb36e1d Add a new keyword 'inbounds' for use with getelementptr. See the
LangRef.html changes for details.

llvm-svn: 77259
2009-07-27 21:53:46 +00:00
Owen Anderson
256c2c250e Move ConstantFP construction back to the 2.5-ish API.
llvm-svn: 77247
2009-07-27 20:59:43 +00:00
Andreas Bolka
0cb4ca7575 Fix typo.
llvm-svn: 77244
2009-07-27 20:37:10 +00:00
Dan Gohman
40927be3bf Following discussion on llvm-dev ("proposed new rule for getelementptr"),
add a new "Pointer Aliasing Rules" section.

llvm-svn: 77216
2009-07-27 18:07:55 +00:00
Daniel Dunbar
4311f3025b Update target registration description in Writing An LLVM Backend, and add
a mention in release notes.

llvm-svn: 77128
2009-07-26 05:41:39 +00:00
Daniel Dunbar
62e74f03c7 Add TargetRegistry::lookupTarget.
- This is a simplified mechanism which just looks up a target based on the
   target triple, with a few additional flags.

 - Remove getClosestStaticTargetForModule, the moral equivalent is now:
     lookupTarget(Mod->getTargetTriple, true, false, ...);

 - This no longer does the fuzzy matching with target data (based on endianness
   and pointer width) that getClosestStaticTargetForModule was doing, but this
   was deemed unnecessary.

llvm-svn: 77111
2009-07-26 02:12:58 +00:00
Daniel Dunbar
038a7f0d35 Remove Value::{isName, getNameRef}.
Also, change MDString to use a StringRef.

llvm-svn: 77098
2009-07-25 23:55:21 +00:00
Chris Lattner
021a977857 eventually we should describe string options in the data structures section
llvm-svn: 77054
2009-07-25 07:22:20 +00:00
Chris Lattner
5092df83f7 minor tweaks.
llvm-svn: 77053
2009-07-25 07:16:59 +00:00
Daniel Dunbar
794f5b8325 Ok, "most clients should be unaffected" was a lie. Add notes on upgrading.
llvm-svn: 77050
2009-07-25 05:26:53 +00:00
Daniel Dunbar
251177c96e Initial update to VMCore to use Twines for string arguments.
- The only meat here is in Value.{h,cpp} the rest is essential 'const
   std::string &' -> 'const Twine &'.

llvm-svn: 77048
2009-07-25 04:41:11 +00:00
Dan Gohman
f6e44e6e47 Update to new syntax.
llvm-svn: 77043
2009-07-25 02:23:48 +00:00
Daniel Dunbar
16ec56532a Rewrite examples to use DEBUG instead of DOUT.
llvm-svn: 77042
2009-07-25 01:55:32 +00:00
Daniel Dunbar
2d76dc5a14 Tweak, raw_ostream is a ostream, not iostream replacement
llvm-svn: 77017
2009-07-24 23:54:34 +00:00
Daniel Dunbar
06b94defcb CodingStandards: Emphasize use of raw_ostream more.
- Chris, please approve.

llvm-svn: 77010
2009-07-24 23:04:51 +00:00
Dan Gohman
62c8b40b66 Remove the IA-64 backend.
llvm-svn: 76920
2009-07-24 00:30:09 +00:00
Dan Gohman
001d777207 Rename the new unsigned and signed keywords to nuw and nsw,
which stand for no-unsigned-wrap and no-signed-wrap.

llvm-svn: 76810
2009-07-22 22:44:56 +00:00
Sanjiv Gupta
061f9abed9 Added -b option to override the default bitcode output file name.
llvm-svn: 76768
2009-07-22 18:41:45 +00:00
Chris Lattner
4cd4c075df fix some wording problems Daniel pointed out, make a example actually real.
llvm-svn: 76751
2009-07-22 16:54:14 +00:00
Chris Lattner
c075ba7f73 fix typo noticed by Duncan
llvm-svn: 76747
2009-07-22 16:30:39 +00:00
Chris Lattner
e0b6253737 remove Bill from the author list: his contribution (describing llvm::Ostream
and friends) has been removed awhile ago.

llvm-svn: 76724
2009-07-22 05:43:01 +00:00
Chris Lattner
44d0425937 add some more topics to the coding standards doc:
* Use Early Exits and 'continue' to Simplify Code
* Turn Predicate Loops into Predicate Functions
* Spaces Before Parentheses
* Namespace Indentation
* Anonymous Namespaces

llvm-svn: 76723
2009-07-22 05:40:54 +00:00
Chris Lattner
27be47177d fix some formatting stuff, patch by Edward O'Callaghan!
llvm-svn: 76718
2009-07-22 04:21:40 +00:00
Owen Anderson
cc287b28c9 Get rid of the Pass+Context magic.
llvm-svn: 76702
2009-07-22 00:24:57 +00:00
Dan Gohman
11a1a3ac43 Misc. doc fixes following suggestions from Eli.
llvm-svn: 76699
2009-07-22 00:04:19 +00:00
Chris Lattner
bead0c90ea fix typo
llvm-svn: 76674
2009-07-21 23:17:26 +00:00
Chris Lattner
5646affa23 Various doc updates from Edward O'Callaghan!
llvm-svn: 76668
2009-07-21 22:47:03 +00:00
Torok Edwin
f1dd3f766b Add a few fairly obvious API changes I noticed while porting some old code.
llvm-svn: 76636
2009-07-21 20:27:10 +00:00
Dan Gohman
8cde898476 Documentation for the new non-overflow and exact keywords.
llvm-svn: 76495
2009-07-20 22:41:19 +00:00
Chris Lattner
eac40b1473 implement a new magic global "llvm.compiler.used" which is like llvm.used, but
doesn't cause ".no_dead_strip" to be emitted on darwin.

llvm-svn: 76399
2009-07-20 06:14:25 +00:00
Chris Lattner
36b89d4fb7 document llvm.used and llvm.metadata. Stub out llvm.global_[cd]tors
llvm-svn: 76396
2009-07-20 05:55:19 +00:00
Bill Wendling
b0bb37d802 Rename the index to linkage types.
llvm-svn: 76394
2009-07-20 02:41:50 +00:00
Bill Wendling
e9aa2cf10f More reformatting.
llvm-svn: 76393
2009-07-20 02:39:26 +00:00
Bill Wendling
a06bd14d83 Fix HTML violations.
llvm-svn: 76392
2009-07-20 02:32:41 +00:00
Bill Wendling
21db8e8360 Obsessivly reformat.
llvm-svn: 76391
2009-07-20 02:29:24 +00:00
Bill Wendling
1a10a060cb Add plumbing for the `linker_private' linkage type. This type is meant for
"private" symbols which the assember shouldn't strip, but which the linker may
remove after evaluation. This is mostly useful for Objective-C metadata.

This is plumbing, so we don't have a use of it yet. More to come, etc.

llvm-svn: 76385
2009-07-20 01:03:30 +00:00
Chris Lattner
36c1af90d8 fix some typos pointed out by Hidenobu Seki
llvm-svn: 76342
2009-07-18 21:47:15 +00:00
Daniel Dunbar
f53e82f48a cmake builds don't need this hack for MSVC anymore.
llvm-svn: 76329
2009-07-18 20:10:04 +00:00
Reid Kleckner
5460ad390c Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().
Also a test commit.

llvm-svn: 76276
2009-07-18 00:42:18 +00:00
Chris Lattner
22beba4992 end sentence in period, draw attention to the fact that you should
only do this if you are a crazy russian hacker. ;-)

llvm-svn: 76241
2009-07-17 21:14:28 +00:00
Chris Lattner
7852f81810 we beat exceptions out of lib/system a long time ago.
llvm-svn: 76240
2009-07-17 21:11:24 +00:00
Anton Korobeynikov
60f7bd3562 Add support for naked functions
llvm-svn: 76198
2009-07-17 18:07:26 +00:00
Daniel Dunbar
112af1d308 Fix typo.
llvm-svn: 76186
2009-07-17 16:41:57 +00:00
Nick Lewycky
1396b57ab1 Add broken gcc from PR4532.
llvm-svn: 76157
2009-07-17 06:32:10 +00:00
Owen Anderson
c63b0e7a30 Privatize the ConstantFP table. I'm on a roll!
llvm-svn: 76097
2009-07-16 19:05:41 +00:00
Dan Gohman
2c9049f5bf Add a note about the raw_fd_ostream API change.
llvm-svn: 75818
2009-07-15 19:59:19 +00:00
Owen Anderson
393d8b0a0c Begin the painful process of tearing apart the rat'ss nest that is Constants.cpp and ConstantFold.cpp.
This involves temporarily hard wiring some parts to use the global context.  This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.

llvm-svn: 75445
2009-07-13 04:09:18 +00:00
Chris Lattner
d3eba0efb8 remove llvm.part.set.* and llvm.part.select.*. They have never been
implemented in codegen, have no frontend to generate them, and are 
better implemented with pattern matching (like the ppc backend does
to generate rlwimi/rlwinm etc).

PR4543

llvm-svn: 75430
2009-07-12 21:08:53 +00:00
Daniel Dunbar
b9b0e0fc3d Add an LLVM API change.
llvm-svn: 75426
2009-07-12 20:41:27 +00:00
Chris Lattner
3ca9ece03f be explicit about making comments real sentences.
llvm-svn: 75406
2009-07-12 00:10:24 +00:00
Mikhail Glushenkov
6de3793d9c Regenerate.
llvm-svn: 75376
2009-07-11 19:28:00 +00:00
Mikhail Glushenkov
e779ca7370 Update documentation.
llvm-svn: 75375
2009-07-11 19:27:40 +00:00
Mikhail Glushenkov
fad1db9347 Regenerate.
llvm-svn: 75167
2009-07-09 19:39:49 +00:00
Mikhail Glushenkov
b067c19529 Documentation update.
llvm-svn: 75166
2009-07-09 19:39:16 +00:00
Owen Anderson
9331034838 Push LLVMContext _back_ through IRBuilder.
llvm-svn: 75040
2009-07-08 20:50:47 +00:00
Rafael Espindola
1e5ec149bb Update the example to show that an archive can contain llvm bitcode.
llvm-svn: 75000
2009-07-08 11:13:34 +00:00
Nick Lewycky
d46a7b2d22 Remove the vicmp and vfcmp instructions. Because we never had a release with
these instructions, no autoupgrade or backwards compatibility support is
provided.

llvm-svn: 74991
2009-07-08 03:04:38 +00:00
Dan Gohman
e5dcff3706 Add a paragraph about the Add->FAdd API change.
llvm-svn: 74941
2009-07-07 20:05:15 +00:00
Mikhail Glushenkov
b21a520ad4 Regenerate.
llvm-svn: 74914
2009-07-07 16:44:20 +00:00
Mikhail Glushenkov
64ebd2413a Regenerate.
llvm-svn: 74908
2009-07-07 16:09:48 +00:00
Duncan Sands
c889d677f1 Clarify that later compiler versions are known to
fail to build the Ada front-end.

llvm-svn: 74793
2009-07-05 12:01:44 +00:00
Owen Anderson
82b4e736c7 Describe the LLVMContext API change.
llvm-svn: 74701
2009-07-02 16:48:38 +00:00
Daniel Dunbar
a4af9cf40b Try to clarify a point about getting DominatorTree info from a module pass.
llvm-svn: 74668
2009-07-01 23:38:44 +00:00
Chris Lattner
b7e452de26 add a FAQ.
llvm-svn: 74538
2009-06-30 17:10:19 +00:00
Chris Lattner
8cf96dce25 got confused again
llvm-svn: 74514
2009-06-30 06:27:54 +00:00
Chris Lattner
14c5ccf843 fix some issues Jeff Yasskin noticed
llvm-svn: 74512
2009-06-30 06:20:03 +00:00
Chris Lattner
f6944ea787 add a note about re-evaluating end() every time through a loop.
llvm-svn: 74511
2009-06-30 06:13:23 +00:00
Mikhail Glushenkov
e0da40ac69 Regenerate.
llvm-svn: 74485
2009-06-30 00:16:43 +00:00
David Greene
7fcd1a3f35 Implement !cast<string>.
llvm-svn: 74444
2009-06-29 20:05:29 +00:00
Shantonu Sen
eb968301d7 Clarify how to configure llvm-gcc-4.2 for use with
test suite. Remove documentation for --with-f2c, which
is no longer supported. Remove information about obtaining
tcl/expect, which ship with Mac OS X by default since
10.4.

llvm-svn: 74271
2009-06-26 05:44:53 +00:00
Devang Patel
84a8914a4a Remove debug info anchors - llvm.dbg.compile_units, llvm.dbg.subprograms
and llvm.dbg.global_variables.

llvm-svn: 74251
2009-06-26 01:49:18 +00:00
Mikhail Glushenkov
cf9179c707 Regenerate.
llvm-svn: 74192
2009-06-25 18:21:10 +00:00
Mikhail Glushenkov
c40a28803f Update documentation.
llvm-svn: 74191
2009-06-25 18:20:44 +00:00
Jeffrey Yasskin
22537a7cf4 ReleaseNotes.External Projects += Rubinius
llvm-svn: 74119
2009-06-24 21:26:42 +00:00
Jeffrey Yasskin
a809ad5166 ReleaseNotes.External Projects += Unladen Swallow
llvm-svn: 74116
2009-06-24 21:09:13 +00:00
Duncan Sands
601ab92515 Start sketching 2.6 release notes. This provides a
place to note major API changes (I've noted the
getABITypeSize -> getAllocSize change).

llvm-svn: 74070
2009-06-24 08:38:48 +00:00
Duncan Sands
02f2e932e3 Clarify that if the alignment is zero then an alignment
compatible with the type will be used (at least the ABI
alignment).

llvm-svn: 73827
2009-06-20 13:26:06 +00:00
Stefanus Du Toit
bbf53428f9 Fix link to BasicBlock doxygen documentation in Programmer's Manual
llvm-svn: 73635
2009-06-17 21:12:26 +00:00
Mikhail Glushenkov
4afdb113a9 Formatting fix.
llvm-svn: 73600
2009-06-17 03:09:39 +00:00
Mikhail Glushenkov
7f2af8872d Regenerate.
llvm-svn: 73597
2009-06-17 02:56:48 +00:00
Chris Lattner
3c85f09f57 Remove support for building LLVM libraries into "relinked"
object files.  Now we always build LLVM libraries into archives (.a files).

This makes the 'make' build work more like the cmake build, among other
things.  Doing this exposed some latent circular library dependencies, so
I think that llvm-config wasn't quite right for .o files anyway.

llvm-svn: 73579
2009-06-16 23:00:42 +00:00
Owen Anderson
e6d490721a Update the threading section to reflect current plans/implementation.
llvm-svn: 73521
2009-06-16 18:04:19 +00:00
Owen Anderson
45f4444e73 Fix validation errors.
llvm-svn: 73515
2009-06-16 17:40:28 +00:00
Eli Friedman
705de594b2 Remove the "llvm.umul.with.overflow is broken" warning; it should be
essentially working now, at least for common cases, and it shouldn't 
silently generate bad code.

llvm-svn: 73484
2009-06-16 10:24:13 +00:00
Owen Anderson
4f02666a95 Add initial stab at documenting the use of LLVM with threaded clients.
Comments welcome!

llvm-svn: 73456
2009-06-16 01:17:16 +00:00
Mikhail Glushenkov
305f027f75 Regenerate.
llvm-svn: 73449
2009-06-16 00:14:20 +00:00
Dan Gohman
22c89d779b Rewrite the noredzone description, attempting to avoid confusing language.
llvm-svn: 73421
2009-06-15 21:18:01 +00:00
Dan Gohman
711f57040d Fix a typo.
llvm-svn: 73397
2009-06-15 18:22:49 +00:00
Dan Gohman
daf11a4a54 Reword the description of the noredzone attribute.
llvm-svn: 73394
2009-06-15 17:37:09 +00:00
Torok Edwin
236a5272f3 x86_64 was completely missing from the target triples supported by the X86 code
generator!

llvm-svn: 73385
2009-06-15 12:17:44 +00:00
Chris Lattner
1970e7ad34 remove some old CVS-specific arguments that don't work with SVN.
llvm-svn: 73369
2009-06-15 04:18:54 +00:00
Devang Patel
95b4743214 Document noredzone and noimplicitfloat function attributes.
llvm-svn: 73246
2009-06-12 19:45:19 +00:00
Oscar Fuentes
9f16ef410d CMake: New variable LLVM_LIBDIR_SUFFIX.
Patch by Ingmar Vanhassel!

llvm-svn: 73216
2009-06-12 02:49:53 +00:00
Oscar Fuentes
fd06248a88 CMake: Documented how to cross-compile with CMake.
llvm-svn: 73181
2009-06-11 04:45:08 +00:00
David Greene
a51f014e59 Revert 73074 and 73099 because Windows doesn't have POSIX
regular expressions.  We will add an OpenBSD implementation
and re-apply ASAP.

llvm-svn: 73138
2009-06-09 18:31:17 +00:00
David Greene
e3c4370a47 Add a !patsubst operator. Use on string types.
llvm-svn: 73099
2009-06-08 23:05:37 +00:00
David Greene
5c75138561 Update documentation.
llvm-svn: 73092
2009-06-08 22:38:07 +00:00
Daniel Dunbar
89fef139c1 Document the stack alignment part of target data description.
llvm-svn: 73089
2009-06-08 22:17:53 +00:00
David Greene
21ba6012b2 Add a !regmatch operator to do pattern matching in TableGen.
llvm-svn: 73074
2009-06-08 17:00:34 +00:00
Nick Lewycky
cf715254c7 Move </pre> to column one to avoid an extra line of spaces in the example.
llvm-svn: 73003
2009-06-06 18:14:04 +00:00
Dan Gohman
5f6f8101d5 Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt

llvm-svn: 72897
2009-06-04 22:49:04 +00:00
Torok Edwin
8c34bcb7ab --plugin is not needed for bfd anymore. Update docs.
llvm-svn: 72867
2009-06-04 16:08:10 +00:00
Oscar Fuentes
cbaf5a8795 CMake: Renamed LLVM_ENABLE_ASSERTS to
LLVM_ENABLE_ASSERTIONS. Fine-tuned the logic that controls the
definition of NDEBUG and _DEBUG macros.

Thanks to Jay Foad for this suggestions.

llvm-svn: 72864
2009-06-04 09:26:16 +00:00
Torok Edwin
29762633ee lets not forget about c++!
llvm-svn: 72778
2009-06-03 15:42:26 +00:00
Oscar Fuentes
86f4f18dca CMake: Implements and documents option LLVM_ENABLE_ASSERTS.
llvm-svn: 72774
2009-06-03 15:11:25 +00:00
Torok Edwin
e056d0b8cd Document how easy it is to use the gold plugin and have LTO with autotooled projects.
Please correct the documentation if I missed anything.

llvm-svn: 72773
2009-06-03 15:06:19 +00:00
Jay Foad
203127a106 Document how phi and invoke instructions interact with SSA form.
llvm-svn: 72762
2009-06-03 10:20:10 +00:00
Nick Lewycky
b7afbf8a63 Metadata uses metadata type not empty struct.
llvm-svn: 72623
2009-05-30 16:08:30 +00:00
Nick Lewycky
a9de2f1c81 Give embedded metadata its own type instead of relying on EmptyStructTy.
llvm-svn: 72610
2009-05-30 05:06:04 +00:00
Bruno Cardoso Lopes
6ec3c6fab6 Fix some typos
llvm-svn: 72579
2009-05-29 17:08:57 +00:00
Nick Lewycky
c8242fc08b Remove border around table used for layout.
llvm-svn: 72357
2009-05-24 02:46:06 +00:00
Dan Gohman
00b088d848 Add a note mentioning that uses of the return value of an invoke
must be dominated by the normal label.

llvm-svn: 72285
2009-05-22 21:47:08 +00:00
Stuart Hastings
bf369bba4a Add some missing steps to the sacred testing ritual scriptures.
llvm-svn: 72222
2009-05-21 20:23:59 +00:00
Cristian Cadar
9c425ac042 Test commit.
llvm-svn: 72092
2009-05-19 01:56:08 +00:00
Evan Cheng
96674b2285 Add short descriptions of 'implicit' and 'parallel'.
llvm-svn: 72050
2009-05-18 22:14:45 +00:00
Bill Wendling
97af952d7a Formatting. Some updating of data structures. More work needs to be done to update the examples.
llvm-svn: 71974
2009-05-17 05:52:39 +00:00
David Greene
9a1e15d0d0 Implement !if, analogous to $(if) in GNU make.
llvm-svn: 71815
2009-05-14 23:26:46 +00:00
David Greene
70881bc6ae Graduate LLVM to the big leagues by embedding a LISP processor into TableGen.
Ok, not really, but do support some common LISP functions:

* car
* cdr
* null

llvm-svn: 71805
2009-05-14 22:38:31 +00:00
David Greene
fab0ee79db Implement a !foreach operator analogous to GNU make's $(foreach).
Use it on dags and lists like this:

class decls {
  string name;
}

def Decls : decls;

class B<list<string> names> : A<!foreach(Decls.name, names, !strconcat(Decls.name, ", Sr."))>;

llvm-svn: 71803
2009-05-14 22:23:47 +00:00
David Greene
26054a566e Implement a !subst operation simmilar to $(subst) in GNU make to do
def/var/string substitution on generic pattern templates.  For example:

def Type;
def v4f32 : Type;
def TYPE : Type;

class GenType<Type t> {
  let type = !(subst TYPE, v4f32, t);
}

def TheType : GenType<TYPE>;

llvm-svn: 71801
2009-05-14 21:54:42 +00:00
David Greene
e2871b8c65 Implement !cast.
llvm-svn: 71794
2009-05-14 21:22:49 +00:00
Jim Grosbach
f3e59935c3 clean up line-wrapping
llvm-svn: 71771
2009-05-14 15:44:15 +00:00
Jim Grosbach
bed3aeff20 Update the names of the exception handling sjlj instrinsics to
llvm.eh.sjlj.* for better clarity as to their purpose and scope. Add
a description of llvm.eh.sjlj.setjmp to ExceptionHandling.html.
(llvm.eh.sjlj.longjmp documentation coming when that implementation is
added).

llvm-svn: 71758
2009-05-14 00:46:35 +00:00
Bill Wendling
e421c8f63d Change MachineInstrBuilder::addReg() to take a flag instead of a list of
booleans. This gives a better indication of what the "addReg()" is
doing. Remembering what all of those booleans mean isn't easy, especially if you
aren't spending all of your time in that code.

I took Jakob's suggestion and made it illegal to pass in "true" for the
flag. This should hopefully prevent any unintended misuse of this (by reverting
to the old way of using addReg()).

llvm-svn: 71722
2009-05-13 21:33:08 +00:00
Chris Lattner
e5e368472b garbage allocation is not a good idea :)
llvm-svn: 71680
2009-05-13 18:02:09 +00:00
Bill Wendling
562178b9a4 Use llvm::raw_stream instead of llvm::Streams.
llvm-svn: 71573
2009-05-12 18:29:42 +00:00
Nick Lewycky
f417462ddf Make MDNode use CallbackVH. Also change MDNode to store Value* instead of
Constant* in preperation of a future change to support holding non-Constants
in an MDNode.

llvm-svn: 71407
2009-05-10 20:57:05 +00:00
Chris Lattner
e8160d0836 fix typo
llvm-svn: 71362
2009-05-09 18:11:50 +00:00
Bill Wendling
3bb11df772 Fix typo.
llvm-svn: 71260
2009-05-08 20:49:29 +00:00
Duncan Sands
880eaf5278 Allow readonly functions to unwind exceptions. Teach
the optimizers about this.  For example, a readonly
function with no uses cannot be removed unless it is
also marked nounwind.

llvm-svn: 71071
2009-05-06 06:49:50 +00:00
Mikhail Glushenkov
2a24374c7f Regenerate documentation.
llvm-svn: 71055
2009-05-06 01:41:47 +00:00
Dan Gohman
ad61ec36ad Add some more documentation for x86 special address spaces.
llvm-svn: 71012
2009-05-05 20:48:47 +00:00
Chris Lattner
5cc9a36d1c Add basic support for code generation of
addrspace(257) -> FS relative on x86.  Patch by Zoltan Varga!

llvm-svn: 70992
2009-05-05 18:52:19 +00:00
Anton Korobeynikov
fca7d58578 It turns out that this version of gcc is broken (cygwin is well-known in shipping
of broken/buggy/snapshot-based compilers)

llvm-svn: 70848
2009-05-04 10:24:46 +00:00
Chris Lattner
b38edd3714 Remove obsolete wording, the only exception a readnone function can throw
is the empty set. :)  Thanks to Fritz for pointing this out.

llvm-svn: 70790
2009-05-03 19:06:00 +00:00
Chris Lattner
abf304f36e be very explicit that readnone/readonly functions can't
throw exceptions.

llvm-svn: 70788
2009-05-03 18:49:37 +00:00
Misha Brukman
064820037b HTML-escape '>' as '&gt;' in sample C++ code.
llvm-svn: 70569
2009-05-01 20:40:51 +00:00
Jeffrey Yasskin
7263dc71e2 Add a mention of TypeBuilder to the programmer's manual, and clean up the class
comment a bit.

llvm-svn: 70515
2009-04-30 22:33:41 +00:00
Bill Wendling
7546bed590 Second attempt:
Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.

Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'll change the JIT with a follow-up patch.

llvm-svn: 70343
2009-04-29 00:15:41 +00:00
Duncan Sands
8ba0b4d4f2 Fix some confusion in the Ada f-e build instructions between
building without optimization and building with checking.

llvm-svn: 70205
2009-04-27 11:21:35 +00:00
Sanjiv Gupta
e903d414ee Now that any size of integer indices are allowed for sequential types, remove the unneccessary gyan about promoting them.
llvm-svn: 70181
2009-04-27 03:21:00 +00:00
Chris Lattner
f84ee5d944 Add two new record types to the blockinfo block:
BLOCKNAME and SETRECORDNAME.  This allows a bitcode
file to be self describing with pretty names for 
records and blocks in addition to numbers.  This
enhances llvm-bcanalyzer to use this to print prettily.

llvm-svn: 70165
2009-04-26 22:21:57 +00:00
Sanjiv Gupta
0877e1eabe Any size of integral indices are allowed in gep for indexing into sequential types. Also adding a test case to check the indices type allowed into struct.
llvm-svn: 70134
2009-04-26 17:14:35 +00:00
Chris Lattner
d31285fdb7 improve documentation on build configurations, patch by
Josef Eisl!

llvm-svn: 70087
2009-04-25 22:24:49 +00:00
Chris Lattner
6d2e830ad8 aDd support for building a subset of the llvm tools, patch by Jeffrey Yasskin!
llvm-svn: 70082
2009-04-25 22:08:52 +00:00
Chris Lattner
c23e28732d Update docs to not mention gcse/loadvn and mention memdep and
new stuff.  PR3924.

llvm-svn: 70077
2009-04-25 21:11:37 +00:00
Sanjiv Gupta
9093a67350 Fixed the gep example for i16 type indices.
llvm-svn: 70019
2009-04-25 07:27:44 +00:00
Sanjiv Gupta
14c405828e Fixed spaces and the getelementpointer example with i16 type indices.
llvm-svn: 69971
2009-04-24 16:38:13 +00:00
Sanjiv Gupta
f1177e1be7 Allow i16 type indices to gep.
llvm-svn: 69946
2009-04-24 02:37:54 +00:00
David Greene
ddac45edb9 Fix a documentation bug.
llvm-svn: 69923
2009-04-23 21:27:58 +00:00
David Greene
a92a50c7c2 Make BinOps typed and require a type specifier for !nameconcat. This
allows binops to be used in typed contexts such as when passing
arguments to classes.

llvm-svn: 69921
2009-04-23 21:25:15 +00:00
David Greene
e41e6599cf Allow defm to inherit from multiple multiclasses.
llvm-svn: 69832
2009-04-22 22:17:51 +00:00
David Greene
0698602922 Implement !nameconcat to concatenate strings and look up the resulting
name in the symbol table, returning an object.

llvm-svn: 69822
2009-04-22 20:18:10 +00:00
David Greene
9d99a33f27 Implement multiclass inheritance.
llvm-svn: 69810
2009-04-22 16:42:54 +00:00
Dan Gohman
640b379ae6 ISD::ADD_PARTS is gone; use ISD::SMUL_LOHI as an example instead.
llvm-svn: 69804
2009-04-22 15:55:31 +00:00
Duncan Sands
ece3370566 Make it clearer that llvm-gcc is not needed for
building llvm.

llvm-svn: 69441
2009-04-18 12:40:19 +00:00
Jim Grosbach
0603bca31b Update information on canadian cross builds
llvm-svn: 69358
2009-04-17 17:25:16 +00:00
Bill Wendling
1b271d471e More obsessive reformatting. Fixed some validation errors.
llvm-svn: 69130
2009-04-15 02:12:37 +00:00
Chris Lattner
c1bfdc9bb2 Add a new "available_externally" linkage type. This is intended
to support C99 inline, GNU extern inline, etc.  Related bugzilla's
include PR3517, PR3100, & PR2933.  Nothing uses this yet, but it
appears to work.

llvm-svn: 68940
2009-04-13 05:44:34 +00:00
Nick Lewycky
92b1375909 Add paragraph tags.
llvm-svn: 68934
2009-04-13 02:03:40 +00:00
Nick Lewycky
2874a8dd3d Fix compile error. Pointed out by mait on #llvm IRC!
llvm-svn: 68910
2009-04-12 20:15:44 +00:00
Misha Brukman
6cee2e6033 Fixed spelling.
llvm-svn: 68821
2009-04-10 20:48:27 +00:00
Chris Lattner
0b8f2eafad fix typo, patch by Shlomi Fish!
llvm-svn: 68784
2009-04-10 15:38:51 +00:00
Chris Lattner
fc47fb0629 Remove AllowInverse: it leaks memory and is not the right
abstraction for CommandLine.

llvm-svn: 68588
2009-04-08 03:43:51 +00:00
Bill Wendling
f833088369 Use 'name' instead of 'href'.
llvm-svn: 68534
2009-04-07 18:54:06 +00:00
Bill Wendling
3da6e4a800 Fix verification failure.
llvm-svn: 68531
2009-04-07 18:52:30 +00:00
Bill Wendling
d8ad7f85a3 Offer an explanation of why building LLVM-GCC with objdir == srcdir doesn't
work.

llvm-svn: 68530
2009-04-07 18:51:13 +00:00
Bill Wendling
fad0a6efa8 Another reformatting. No change in docs.
llvm-svn: 68528
2009-04-07 18:40:56 +00:00
Chris Lattner
ac7e143979 add a new Blob encoding abbreviation for bitcode files that emits
elements in a form that is efficient for the reader to just get a
pointer in memory and start reading.  APIs to do efficient reading
and writing are still todo.

llvm-svn: 68465
2009-04-06 21:50:39 +00:00
Chris Lattner
367120583b clean up some html
llvm-svn: 68456
2009-04-06 20:35:19 +00:00
Bill Wendling
ca348b1f8e Add character encoding declaration to fix verification warning.
llvm-svn: 68440
2009-04-05 12:38:44 +00:00
Bill Wendling
c9e0b30d02 Obsessively format this document.
llvm-svn: 68439
2009-04-05 12:37:44 +00:00
Bill Wendling
ce489ee879 Add character encoding declaration.
llvm-svn: 68433
2009-04-05 00:44:06 +00:00
Bill Wendling
1b27430c80 Fix validation error.
llvm-svn: 68432
2009-04-05 00:43:04 +00:00
Bill Wendling
de19a199b5 A lot of formatting changes.
llvm-svn: 68431
2009-04-05 00:41:19 +00:00
Bill Wendling
6ccfb904ac Fix some HTML validation errors.
llvm-svn: 68427
2009-04-04 22:36:02 +00:00
Bill Wendling
c4f6e63a82 General clean-up of the bitcode format documentation. Having the paragraphs
formatted the same, putting words in <tt> tags, adding &mdash;s, etc.

llvm-svn: 68426
2009-04-04 22:27:03 +00:00
Nick Lewycky
eea5412e19 Add support for embedded metadata to LLVM. This introduces two new types of
Constant, MDString and MDNode which can only be used by globals with a name
that starts with "llvm." or as arguments to a function with the same naming
restriction.

llvm-svn: 68420
2009-04-04 07:22:01 +00:00
Bill Wendling
02eab17c83 Duplicate entry.
llvm-svn: 68401
2009-04-03 20:32:13 +00:00
Chris Lattner
6a9249765e "Add documentation about the fix for missing x86
target library in windows under the "Common problems" section."

Patch by Stefanus Du Toit!

llvm-svn: 68399
2009-04-03 20:23:52 +00:00
Chris Lattner
c8f5edab31 update some syntax
llvm-svn: 68362
2009-04-03 00:29:19 +00:00
Chris Lattner
2475b3316b add this to SVN to allow collaborative hacking.
llvm-svn: 68243
2009-04-01 21:11:04 +00:00
John Mosby
9b1b8d54fe docs/TestingGuide.html: correction to prev. text (objdir!=srcdir required for running test-suite), removed refs to llvm-test
llvm-svn: 68051
2009-03-30 18:56:53 +00:00
Chris Lattner
1901988355 fix some validation problems.
llvm-svn: 68026
2009-03-30 06:34:59 +00:00
John Mosby
8d4d6376bb Clarify section on setting up and running test-suite
llvm-svn: 68023
2009-03-30 04:37:51 +00:00
Bill Wendling
475a59038c Update the Visual Studio docs. Patch by Stefanus!
llvm-svn: 67940
2009-03-28 10:24:15 +00:00
Mikhail Glushenkov
d1d0033738 Documentation update.
Expand a bit on various '--*-graph' options.

llvm-svn: 67836
2009-03-27 12:58:29 +00:00
Duncan Sands
dd613ae0dd Mention explicitly that the Ada front-end will not bootstrap.
The configure line had --disable-bootstrap, but it was not
clear that this is essential.

llvm-svn: 67651
2009-03-24 21:16:39 +00:00
Chris Lattner
5e7dd59063 tt'ify.
llvm-svn: 67505
2009-03-23 04:53:34 +00:00
Chris Lattner
750312aa5e VC++ 6.0 is not future work :)
Do not recommend llvm::OStream anymore.  Use raw_ostream or MemoryBuffer.

llvm-svn: 67504
2009-03-23 04:52:53 +00:00
Duncan Sands
dca010d0d7 Add some explanations of how apint loads and stores
work.

llvm-svn: 67471
2009-03-22 11:33:16 +00:00
Duncan Sands
6acf707101 Update these for the 2.5 release.
llvm-svn: 66890
2009-03-13 13:42:20 +00:00
Gabor Greif
0cf8da6c06 add some text to explain sentinels
llvm-svn: 66790
2009-03-12 10:30:31 +00:00
Gabor Greif
51ea08b090 minor tweaks
llvm-svn: 66788
2009-03-12 09:47:03 +00:00
Gabor Greif
2c4672b310 do not pretend llvm/.../*.h being system headers
llvm-svn: 66697
2009-03-11 20:23:40 +00:00
Duncan Sands
b27c523449 It makes no sense to have a ODR version of common
linkage, so remove it.

llvm-svn: 66690
2009-03-11 20:14:15 +00:00
Gabor Greif
b31a9d0dc0 fix validator errors
llvm-svn: 66688
2009-03-11 20:04:08 +00:00
Gabor Greif
5805f37f74 Fix exaples using IRBuilder. Thanks, Quadrescence and Glip7 from IRC!
llvm-svn: 66687
2009-03-11 19:51:07 +00:00
Duncan Sands
aadb34c357 Remove the one-definition-rule version of extern_weak
linkage: this linkage type only applies to declarations,
but ODR is only relevant to globals with definitions.

llvm-svn: 66650
2009-03-11 08:08:06 +00:00
Chris Lattner
952dfa96b7 Clarify wording, patch by Stefanus Du Toit!
llvm-svn: 66458
2009-03-09 20:55:18 +00:00
Chris Lattner
620cb99e33 don't allow hash_map or hash_set.
llvm-svn: 66400
2009-03-09 05:20:45 +00:00
Duncan Sands
5ab54d488f Introduce new linkage types linkonce_odr, weak_odr, common_odr
and extern_weak_odr.  These are the same as the non-odr versions,
except that they indicate that the global will only be overridden
by an *equivalent* global.  In C, a function with weak linkage can
be overridden by a function which behaves completely differently.
This means that IP passes have to skip weak functions, since any
deductions made from the function definition might be wrong, since
the definition could be replaced by something completely different
at link time.   This is not allowed in C++, thanks to the ODR
(One-Definition-Rule): if a function is replaced by another at
link-time, then the new function must be the same as the original
function.  If a language knows that a function or other global can
only be overridden by an equivalent global, it can give it the
weak_odr linkage type, and the optimizers will understand that it
is alright to make deductions based on the function body.  The
code generators on the other hand map weak and weak_odr linkage
to the same thing.

llvm-svn: 66339
2009-03-07 15:45:40 +00:00
Gordon Henriksen
1f96377a36 Committing unsaved changes that should've been with r66237.
llvm-svn: 66242
2009-03-06 02:42:47 +00:00
Gordon Henriksen
87ceb6e41b Incorporate feedback to improve GarbageCollection.html.
llvm-svn: 66237
2009-03-06 01:57:32 +00:00
Nick Lewycky
b1866d3036 This bug's been fixed but a version with the fix hasn't been released yet.
llvm-svn: 65931
2009-03-03 05:41:16 +00:00
Bill Wendling
1063de1ee0 Document the -gcc-tool-args bugpoint option.
llvm-svn: 65897
2009-03-02 23:15:59 +00:00
Daniel Dunbar
c313ae7d7f Add some more clang related release notes.
llvm-svn: 65868
2009-03-02 20:08:12 +00:00
Tanya Lattner
8b29c82a82 Remove incorrect information about fortran on Darwin.
llvm-svn: 65859
2009-03-02 19:38:59 +00:00
Gabor Greif
5edffea922 fix broken GCC bugzilla link
llvm-svn: 65858
2009-03-02 19:11:53 +00:00
Gabor Greif
744ea6837b add a Q/A on broken GCCs
llvm-svn: 65857
2009-03-02 19:08:05 +00:00
Chris Lattner
a436e649a4 update blurb per Shannon Weyrick.
llvm-svn: 65856
2009-03-02 19:07:24 +00:00
Duncan Sands
18cb21f2cb Try to make the meaning of 'nocapture' a bit clearer. I
commented out the line about simplifylibcalls because I
think this doesn't work in the release (it was fixed in
svn after the release branched).

llvm-svn: 65846
2009-03-02 16:58:00 +00:00
Duncan Sands
8b2f5e96ea Use GCC not gcc, like everywhere else in this document.
llvm-svn: 65845
2009-03-02 16:35:57 +00:00
John Criswell
88855f238d Grammar and punctuation fixes.
No content changes.

llvm-svn: 65844
2009-03-02 15:28:15 +00:00
Gabor Greif
0ee8d1d896 note the removal of deprecated interfaces
llvm-svn: 65841
2009-03-02 12:23:55 +00:00
Gabor Greif
a7245a7764 minor tweaks
llvm-svn: 65838
2009-03-02 12:02:51 +00:00
Gabor Greif
744adc4f8c minor tweaks
llvm-svn: 65837
2009-03-02 11:34:51 +00:00
Nicolas Geoffray
d12730ac42 Add more notes for VMKit.
llvm-svn: 65833
2009-03-02 09:25:38 +00:00
Bill Wendling
b46b800ce0 Random formatting changes.
llvm-svn: 65815
2009-03-02 07:54:14 +00:00
Bill Wendling
b707c17bf4 Fix typos.
llvm-svn: 65813
2009-03-02 07:42:15 +00:00
Bill Wendling
18ab6088d8 Change </pp> to </p>.
llvm-svn: 65804
2009-03-02 04:28:57 +00:00
Bill Wendling
187e889dab - Use "real-world applications" instead of just "real applications".
- Verification Fixes.

llvm-svn: 65803
2009-03-02 04:28:18 +00:00
Gordon Henriksen
34de4eed33 Make some improvements to the GC docs.
Also, drop reference to the half-baked runtime interface.

llvm-svn: 65802
2009-03-02 03:47:20 +00:00
Chris Lattner
e2117f1ecb remove empty section
llvm-svn: 65800
2009-03-02 03:24:41 +00:00
Chris Lattner
1b279d2378 more englishification
llvm-svn: 65799
2009-03-02 03:24:11 +00:00
Chris Lattner
0f9e9e7719 start translating this into Engrish and organizing it.
llvm-svn: 65797
2009-03-02 02:37:32 +00:00
Chris Lattner
cccb2fb989 move gold plugin next to LTO doc in the subsystem section
llvm-svn: 65790
2009-03-01 23:42:51 +00:00
Nick Lewycky
b999b7b64e Add a quickstart example.
llvm-svn: 65789
2009-03-01 21:55:10 +00:00
Nick Lewycky
1b26d345cc Close list item tag, to conform with the style in this file. It's optional
anyways.

llvm-svn: 65787
2009-03-01 21:07:44 +00:00
Nick Lewycky
5c799fd8dd Add the gold plugin page to the documentation index!
llvm-svn: 65786
2009-03-01 21:06:42 +00:00
Nick Lewycky
57d7512427 Cleanup the description of flags to llvm-gcc. Also remove stray text in the
attribution.

llvm-svn: 65785
2009-03-01 20:58:07 +00:00
Nick Lewycky
4c751eeddf Don't forget the important part. llvm-gcc -use-gold-plugin passes the right
options to gold.

llvm-svn: 65783
2009-03-01 18:48:53 +00:00
Mikhail Glushenkov
6336c61b2c Sprinkle llvmc notes with <tt>.
Also removes some trailing whitespace.

llvm-svn: 65781
2009-03-01 18:09:47 +00:00
Duncan Sands
2efa31c91e Tweak this a bit.
llvm-svn: 65772
2009-03-01 15:19:03 +00:00
Nick Lewycky
329a7285b4 Fix grammar.
llvm-svn: 65769
2009-03-01 09:51:07 +00:00
Nick Lewycky
f4cf146789 First pass at a document describing how to achieve LTO on Linux with gold.
llvm-svn: 65766
2009-03-01 09:38:29 +00:00
Duncan Sands
ac0ff99803 Another point to mention.
llvm-svn: 65765
2009-03-01 08:26:19 +00:00
Chris Lattner
543d2057f9 add some llvmc notes from Mikhail
llvm-svn: 65756
2009-03-01 02:30:21 +00:00
Bill Wendling
012bf508b5 Fix grammaro.
llvm-svn: 65727
2009-02-28 22:12:54 +00:00
Chris Lattner
7138f9c917 add a stub for Roadsend PHP
llvm-svn: 65705
2009-02-28 18:58:01 +00:00
Chris Lattner
0472bd03d4 don't use the word 'aggregate' with constants, it is confusing.
llvm-svn: 65702
2009-02-28 18:32:25 +00:00
Chris Lattner
61fca97b76 don't redescribe bitcast constraints in two places. It is not valid to
bitcast from one aggregate to another.

llvm-svn: 65700
2009-02-28 18:27:03 +00:00
Nick Lewycky
3134ef23bb Update this text for first-class aggregates.
llvm-svn: 65697
2009-02-28 17:30:06 +00:00
Bill Wendling
a054357656 Fix typo. Found by William Moss.
llvm-svn: 65693
2009-02-28 12:26:34 +00:00
Gabor Greif
97657f3984 document ilist_traits
llvm-svn: 65631
2009-02-27 13:28:07 +00:00