Commit Graph

3338 Commits

Author SHA1 Message Date
Edward O'Callaghan a16e4b7380 Note down a few bits and bobs off the top of my head for ReleaseNotes-2.6.html
llvm-svn: 79715
2009-08-22 02:17:22 +00:00
Jim Grosbach 8a2cfcba0c Add basic information about SJLJ EH
llvm-svn: 79714
2009-08-22 01:42:39 +00:00
Dan Gohman 2de532c132 Clarify a few things in the inbounds description.
Describing inbounds in terms of infinitely precise arithmetic prohibits
the assumption address-space-sized integer arithmetic will wrap, with
a wrapped-around value landing within the same object.

llvm-svn: 79538
2009-08-20 17:08:17 +00:00
Sandeep Patel ab7a751889 Correct ARM v7-A architecture name spelling and add note about hard float.
llvm-svn: 79530
2009-08-20 15:01:16 +00:00
Chris Lattner f6bb2a79f2 fix this back, thanks Eli
llvm-svn: 79508
2009-08-20 03:10:14 +00:00
Chris Lattner 2689c3be01 minor grammar tweak
llvm-svn: 79498
2009-08-20 00:29:24 +00:00
Tanya Lattner da94af763b Update the release process some more. Lots of good details now.
llvm-svn: 79488
2009-08-19 23:07:37 +00:00
Owen Anderson fe7bbc92e1 Add a first stab at describing LLVMContext.
llvm-svn: 79435
2009-08-19 17:58:52 +00:00
Erick Tryzelaar be86e9fd9a Update the ocaml docs to work with LLVMContext.
llvm-svn: 79431
2009-08-19 17:32:38 +00:00
Tanya Lattner 7fb1616d60 First steps to document new release plan.
llvm-svn: 79376
2009-08-18 22:33:28 +00:00
Misha Brukman f87bb00561 Surrounded variable in <tt> tags for consistency.
llvm-svn: 79357
2009-08-18 19:18:40 +00:00
Oscar Fuentes 6d61f558ac CMake: LLVM_ENABLE_PIC now defaults to ON, as in `configure'. This is
required on some platforms for building shared libraries that link to
the LLVM libraries.

llvm-svn: 79339
2009-08-18 15:29:35 +00:00
John McCall c5680625c8 #include <cstdlib> in the code listing for strtod.
llvm-svn: 79285
2009-08-17 21:07:37 +00:00
Jim Grosbach 43bbb9de66 Remove a bit more cruft from the sjlj moving to a backend pass.
llvm-svn: 79272
2009-08-17 20:25:04 +00:00
Oscar Fuentes a127f4e010 CMake: Removed traces of obsolete variable LLVM_PLO_FLAGS.
llvm-svn: 79204
2009-08-16 21:01:16 +00:00
Oscar Fuentes acfd9ad43d CMake: New option LLVM_BUILD_TOOLS. Renamed LLVM_EXAMPLES to
LLVM_BUILD_EXAMPLES and set default to true. Documented.

llvm-svn: 79203
2009-08-16 20:56:30 +00:00
Bill Wendling 4c1b9b02c5 Fix validation errors.
llvm-svn: 79131
2009-08-15 20:08:04 +00:00
Bill Wendling 527241b35e Fix validation errors.
llvm-svn: 79130
2009-08-15 20:07:42 +00:00
Chris Lattner 724af2ca77 wrap to 80 cols
llvm-svn: 79124
2009-08-15 18:33:10 +00:00
Chris Lattner da108b4ed4 implement support for CHECK-NEXT: in filecheck.
llvm-svn: 79123
2009-08-15 18:32:21 +00:00
Chris Lattner 3ee64e8f4b document filecheck.
llvm-svn: 79110
2009-08-15 16:51:06 +00:00
Chris Lattner e9ba80db30 fix pasto noticed by Jakub
llvm-svn: 79109
2009-08-15 16:18:56 +00:00
Chris Lattner 7e11b725f4 add a stub for futher description of filecheck.
llvm-svn: 79106
2009-08-15 15:40:48 +00:00
Chris Lattner 878e2b7deb add a simple FileCheck man page.
llvm-svn: 79105
2009-08-15 15:38:11 +00:00
Bill Wendling 365ab60d7a Reformatting and some cleanup.
llvm-svn: 79088
2009-08-15 08:56:09 +00:00
Owen Anderson 55f1c09e31 Push LLVMContexts through the IntegerType APIs.
llvm-svn: 78948
2009-08-13 21:58:54 +00:00
Misha Brukman 952784fbf5 Grammar fix.
llvm-svn: 78930
2009-08-13 20:08:52 +00:00
Bob Wilson 2f6a79cbff Add some release notes about ARM v7 support and known problems.
llvm-svn: 78842
2009-08-12 21:19:49 +00:00
Chris Lattner 73e9f8c636 make owen happy by being explicit.
llvm-svn: 78688
2009-08-11 17:38:15 +00:00
Jim Grosbach 693e36a3e8 SjLj based exception handling unwinding support. This patch is nasty, brutish
and short. Well, it's kinda short. Definitely nasty and brutish.

The front-end generates the register/unregister calls into the SjLj runtime,
call-site indices and landing pad dispatch. The back end fills in the LSDA
with the call-site information provided by the front end. Catch blocks are
not yet implemented.

Built on Darwin and verified no llvm-core "make check" regressions.

llvm-svn: 78625
2009-08-11 00:09:57 +00:00
Devang Patel 714612b1eb Clarify limitations of a ModulePass requiring a FunctionPass.
llvm-svn: 78566
2009-08-10 16:37:29 +00:00
Daniel Dunbar 11595b20fc Add DEBUG_WITH_TYPE as a clean alternative to tweaking DEBUG_TYPE.
This:
--
#undef DEBUG_TYPE
#define DEBUG_TYPE "foo"
DEBUG(...)
#undef DEBUG_TYPE
#define DEBUG_TYPE ""
--
becomes this:
--
DEBUG_WITH_TYPE("foo", ...)
--

llvm-svn: 78435
2009-08-07 23:48:59 +00:00
Anton Korobeynikov d4f00616cf Add note about msys perl needed for windows/mingw32 builds.
Patch by John Thompson!

llvm-svn: 78304
2009-08-06 12:54:58 +00:00
Benjamin Kramer eaccdd34a3 Documentation: fix HTML validation errors.
llvm-svn: 78196
2009-08-05 15:42:44 +00:00
Chris Lattner 0aff0b2b58 common globals may also not be marked constant.
llvm-svn: 78169
2009-08-05 05:41:44 +00:00
Chris Lattner d055488c72 Clarify common linkage and the requirements on it. Enforce
them in the verifier.

llvm-svn: 78160
2009-08-05 05:21:07 +00:00
Edward O'Callaghan ab8a04c6a8 Minor www site formating improvements.
llvm-svn: 78054
2009-08-04 05:24:28 +00:00
Benjamin Kramer 666cf9d2f2 Remove duplicated colons and spaces.
llvm-svn: 77892
2009-08-02 12:13:02 +00:00
Chris Lattner 29c6c43cd0 remove the dead PreferredEHDataFormat TAI hook: its now dead
even considering #if 0 code.

llvm-svn: 77856
2009-08-02 04:02:52 +00:00
Chris Lattner 6778f1f368 add a note about the build bots
llvm-svn: 77796
2009-08-01 19:25:25 +00:00
Owen Anderson 5a1acd9912 Move a few more APIs back to 2.5 forms. The only remaining ones left to change back are
metadata related, which I'm waiting on to avoid conflicting with Devang.

llvm-svn: 77721
2009-07-31 20:28:14 +00:00
Owen Anderson 4056ca9568 Move types back to the 2.5 API.
llvm-svn: 77516
2009-07-29 22:17:13 +00:00
Dan Gohman 61acaaa0f0 Add one-past-the-end language to the inbounds keyword.
llvm-svn: 77460
2009-07-29 16:00:30 +00:00
Chris Lattner a40b912352 some wording changes.
llvm-svn: 77443
2009-07-29 06:44:13 +00:00
Chris Lattner 4719e01a64 link to a newer preso
llvm-svn: 77440
2009-07-29 06:19:14 +00:00
Andreas Bolka 8ae4e24c67 Fix a few typos and add links.
llvm-svn: 77403
2009-07-29 00:02:05 +00:00
Chris Lattner 14abb832b2 discourage else after "noreturn" statements.
llvm-svn: 77387
2009-07-28 22:54:04 +00:00
Dan Gohman 1639c3905e 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 69c464dec4 Move ConstantFP construction back to the 2.5-ish API.
llvm-svn: 77247
2009-07-27 20:59:43 +00:00
Andreas Bolka e39f03351d Fix typo.
llvm-svn: 77244
2009-07-27 20:37:10 +00:00
Dan Gohman 6154a01cee 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 9d81cc668a 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 47d679151b 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 e03eecb75f Remove Value::{isName, getNameRef}.
Also, change MDString to use a StringRef.

llvm-svn: 77098
2009-07-25 23:55:21 +00:00
Chris Lattner 47bb37c9d2 eventually we should describe string options in the data structures section
llvm-svn: 77054
2009-07-25 07:22:20 +00:00
Chris Lattner 375a3f40af minor tweaks.
llvm-svn: 77053
2009-07-25 07:16:59 +00:00
Daniel Dunbar fbea11ae66 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 4975db6276 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 6b8677015d Update to new syntax.
llvm-svn: 77043
2009-07-25 02:23:48 +00:00
Daniel Dunbar 04bbd9cd34 Rewrite examples to use DEBUG instead of DOUT.
llvm-svn: 77042
2009-07-25 01:55:32 +00:00
Daniel Dunbar 4bd53c6479 Tweak, raw_ostream is a ostream, not iostream replacement
llvm-svn: 77017
2009-07-24 23:54:34 +00:00
Daniel Dunbar fcd54f73bf CodingStandards: Emphasize use of raw_ostream more.
- Chris, please approve.

llvm-svn: 77010
2009-07-24 23:04:51 +00:00
Dan Gohman 17151155ed Remove the IA-64 backend.
llvm-svn: 76920
2009-07-24 00:30:09 +00:00
Dan Gohman 902dfff8b6 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 5200f046d5 Added -b option to override the default bitcode output file name.
llvm-svn: 76768
2009-07-22 18:41:45 +00:00
Chris Lattner d63f12373d 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 611a1883e5 fix typo noticed by Duncan
llvm-svn: 76747
2009-07-22 16:30:39 +00:00
Chris Lattner 9567fffc36 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 6720d7edda 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 6bad1376a2 fix some formatting stuff, patch by Edward O'Callaghan!
llvm-svn: 76718
2009-07-22 04:21:40 +00:00
Owen Anderson 47db941fd3 Get rid of the Pass+Context magic.
llvm-svn: 76702
2009-07-22 00:24:57 +00:00
Dan Gohman 71dfd782ce Misc. doc fixes following suggestions from Eli.
llvm-svn: 76699
2009-07-22 00:04:19 +00:00
Chris Lattner 843f55346b fix typo
llvm-svn: 76674
2009-07-21 23:17:26 +00:00
Chris Lattner 3a56ae8bbb Various doc updates from Edward O'Callaghan!
llvm-svn: 76668
2009-07-21 22:47:03 +00:00
Torok Edwin 944df00962 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 b07de44d5a Documentation for the new non-overflow and exact keywords.
llvm-svn: 76495
2009-07-20 22:41:19 +00:00
Chris Lattner 58f9bb2ccd 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 ae76db5edd 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 8693ef8558 Rename the index to linkage types.
llvm-svn: 76394
2009-07-20 02:41:50 +00:00
Bill Wendling 3023511345 More reformatting.
llvm-svn: 76393
2009-07-20 02:39:26 +00:00
Bill Wendling 972b720cc1 Fix HTML violations.
llvm-svn: 76392
2009-07-20 02:32:41 +00:00
Bill Wendling d9a66f73c8 Obsessivly reformat.
llvm-svn: 76391
2009-07-20 02:29:24 +00:00
Bill Wendling a3c6f6bffa 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 cb3f64f945 fix some typos pointed out by Hidenobu Seki
llvm-svn: 76342
2009-07-18 21:47:15 +00:00
Daniel Dunbar d476720341 cmake builds don't need this hack for MSVC anymore.
llvm-svn: 76329
2009-07-18 20:10:04 +00:00
Reid Kleckner fc8a2d5a83 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 fd8dea4c47 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 ec19f37322 we beat exceptions out of lib/system a long time ago.
llvm-svn: 76240
2009-07-17 21:11:24 +00:00
Anton Korobeynikov c8ce7b08ba Add support for naked functions
llvm-svn: 76198
2009-07-17 18:07:26 +00:00
Daniel Dunbar 412e4fc5a1 Fix typo.
llvm-svn: 76186
2009-07-17 16:41:57 +00:00
Nick Lewycky d562ab1cfd Add broken gcc from PR4532.
llvm-svn: 76157
2009-07-17 06:32:10 +00:00
Owen Anderson c277dc408b Privatize the ConstantFP table. I'm on a roll!
llvm-svn: 76097
2009-07-16 19:05:41 +00:00
Dan Gohman b9ee3f8963 Add a note about the raw_fd_ostream API change.
llvm-svn: 75818
2009-07-15 19:59:19 +00:00
Owen Anderson 53a52215b5 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 7b9d6ebb9c 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 97880ae12a Add an LLVM API change.
llvm-svn: 75426
2009-07-12 20:41:27 +00:00
Chris Lattner bbe228ba10 be explicit about making comments real sentences.
llvm-svn: 75406
2009-07-12 00:10:24 +00:00
Mikhail Glushenkov 0decbb2ad0 Regenerate.
llvm-svn: 75376
2009-07-11 19:28:00 +00:00
Mikhail Glushenkov bee767fa26 Update documentation.
llvm-svn: 75375
2009-07-11 19:27:40 +00:00
Mikhail Glushenkov 4e63f335ae Regenerate.
llvm-svn: 75167
2009-07-09 19:39:49 +00:00
Mikhail Glushenkov 7ab20c7cf9 Documentation update.
llvm-svn: 75166
2009-07-09 19:39:16 +00:00
Owen Anderson a771459bb1 Push LLVMContext _back_ through IRBuilder.
llvm-svn: 75040
2009-07-08 20:50:47 +00:00
Rafael Espindola ca4231e353 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 a21d3daadc 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 628af7a4bc Add a paragraph about the Add->FAdd API change.
llvm-svn: 74941
2009-07-07 20:05:15 +00:00
Mikhail Glushenkov ff4718b0a1 Regenerate.
llvm-svn: 74914
2009-07-07 16:44:20 +00:00
Mikhail Glushenkov 54751921ca Regenerate.
llvm-svn: 74908
2009-07-07 16:09:48 +00:00
Duncan Sands 78cd3e5472 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 6b92174dda Describe the LLVMContext API change.
llvm-svn: 74701
2009-07-02 16:48:38 +00:00
Daniel Dunbar 84190f9a4d 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 c4501d5242 add a FAQ.
llvm-svn: 74538
2009-06-30 17:10:19 +00:00
Chris Lattner 67f2a4ac4e got confused again
llvm-svn: 74514
2009-06-30 06:27:54 +00:00
Chris Lattner 6ad089cc54 fix some issues Jeff Yasskin noticed
llvm-svn: 74512
2009-06-30 06:20:03 +00:00
Chris Lattner 56c1094999 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 7b366b5d47 Regenerate.
llvm-svn: 74485
2009-06-30 00:16:43 +00:00
David Greene efa19619c8 Implement !cast<string>.
llvm-svn: 74444
2009-06-29 20:05:29 +00:00
Shantonu Sen 89d5c4196e 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 0751a28888 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 2b4a7dc1dc Regenerate.
llvm-svn: 74192
2009-06-25 18:21:10 +00:00
Mikhail Glushenkov d1d21a1ce9 Update documentation.
llvm-svn: 74191
2009-06-25 18:20:44 +00:00
Jeffrey Yasskin e3dccb7047 ReleaseNotes.External Projects += Rubinius
llvm-svn: 74119
2009-06-24 21:26:42 +00:00
Jeffrey Yasskin c3aff2c3fa ReleaseNotes.External Projects += Unladen Swallow
llvm-svn: 74116
2009-06-24 21:09:13 +00:00
Duncan Sands d1b5115986 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 2ae473f739 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 667cd9abe2 Fix link to BasicBlock doxygen documentation in Programmer's Manual
llvm-svn: 73635
2009-06-17 21:12:26 +00:00
Mikhail Glushenkov 132a47191d Formatting fix.
llvm-svn: 73600
2009-06-17 03:09:39 +00:00
Mikhail Glushenkov 7af1d248f5 Regenerate.
llvm-svn: 73597
2009-06-17 02:56:48 +00:00
Chris Lattner eaae8d0cdc 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 4741b5782a Update the threading section to reflect current plans/implementation.
llvm-svn: 73521
2009-06-16 18:04:19 +00:00
Owen Anderson eb105f99ec Fix validation errors.
llvm-svn: 73515
2009-06-16 17:40:28 +00:00
Eli Friedman 8bc032c97c 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 f0ffb777d9 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 b4b44ea71c Regenerate.
llvm-svn: 73449
2009-06-16 00:14:20 +00:00
Dan Gohman 405cf6c282 Rewrite the noredzone description, attempting to avoid confusing language.
llvm-svn: 73421
2009-06-15 21:18:01 +00:00
Dan Gohman 5b2f62059b Fix a typo.
llvm-svn: 73397
2009-06-15 18:22:49 +00:00
Dan Gohman 1b1b7e1fbd Reword the description of the noredzone attribute.
llvm-svn: 73394
2009-06-15 17:37:09 +00:00
Torok Edwin 4378bf098c 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 42670d8b24 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 310fd4ad03 Document noredzone and noimplicitfloat function attributes.
llvm-svn: 73246
2009-06-12 19:45:19 +00:00
Oscar Fuentes 46fed3b475 CMake: New variable LLVM_LIBDIR_SUFFIX.
Patch by Ingmar Vanhassel!

llvm-svn: 73216
2009-06-12 02:49:53 +00:00
Oscar Fuentes 4a899c7e33 CMake: Documented how to cross-compile with CMake.
llvm-svn: 73181
2009-06-11 04:45:08 +00:00
David Greene 58a6b76cfd 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 67c05bff31 Add a !patsubst operator. Use on string types.
llvm-svn: 73099
2009-06-08 23:05:37 +00:00
David Greene 26433c2bec Update documentation.
llvm-svn: 73092
2009-06-08 22:38:07 +00:00
Daniel Dunbar 7921a59462 Document the stack alignment part of target data description.
llvm-svn: 73089
2009-06-08 22:17:53 +00:00
David Greene 07eba05a61 Add a !regmatch operator to do pattern matching in TableGen.
llvm-svn: 73074
2009-06-08 17:00:34 +00:00
Nick Lewycky 03f80adeab 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 a5b9645c4b 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 8631e0fd9c --plugin is not needed for bfd anymore. Update docs.
llvm-svn: 72867
2009-06-04 16:08:10 +00:00
Oscar Fuentes 208a87314b 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 b681144334 lets not forget about c++!
llvm-svn: 72778
2009-06-03 15:42:26 +00:00
Oscar Fuentes 6133813eb4 CMake: Implements and documents option LLVM_ENABLE_ASSERTS.
llvm-svn: 72774
2009-06-03 15:11:25 +00:00
Torok Edwin 8608a4287d 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 1a4eea5ad6 Document how phi and invoke instructions interact with SSA form.
llvm-svn: 72762
2009-06-03 10:20:10 +00:00
Nick Lewycky 8e2c4f4716 Metadata uses metadata type not empty struct.
llvm-svn: 72623
2009-05-30 16:08:30 +00:00
Nick Lewycky adbc284666 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 9d809cad50 Fix some typos
llvm-svn: 72579
2009-05-29 17:08:57 +00:00
Nick Lewycky aab930a5db Remove border around table used for layout.
llvm-svn: 72357
2009-05-24 02:46:06 +00:00
Dan Gohman 9069d890e8 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 6d437694ab Add some missing steps to the sacred testing ritual scriptures.
llvm-svn: 72222
2009-05-21 20:23:59 +00:00
Cristian Cadar 1e059f6080 Test commit.
llvm-svn: 72092
2009-05-19 01:56:08 +00:00
Evan Cheng e87bd1d8f7 Add short descriptions of 'implicit' and 'parallel'.
llvm-svn: 72050
2009-05-18 22:14:45 +00:00
Bill Wendling e9353d7d6f 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 3587eed2c4 Implement !if, analogous to $(if) in GNU make.
llvm-svn: 71815
2009-05-14 23:26:46 +00:00
David Greene d571b3c94b 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 e917fff30f 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 98ed3c7273 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 e8f3b27e65 Implement !cast.
llvm-svn: 71794
2009-05-14 21:22:49 +00:00
Jim Grosbach 1a18dcc34a clean up line-wrapping
llvm-svn: 71771
2009-05-14 15:44:15 +00:00
Jim Grosbach 06928192ae 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 f7b83c7ae7 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 784ae669ab garbage allocation is not a good idea :)
llvm-svn: 71680
2009-05-13 18:02:09 +00:00
Bill Wendling cb368e295d Use llvm::raw_stream instead of llvm::Streams.
llvm-svn: 71573
2009-05-12 18:29:42 +00:00
Nick Lewycky b8f9b7a965 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 e648c28e73 fix typo
llvm-svn: 71362
2009-05-09 18:11:50 +00:00
Bill Wendling 9ee6a31bb8 Fix typo.
llvm-svn: 71260
2009-05-08 20:49:29 +00:00
Duncan Sands 1efabaaa2a 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 4707bf4057 Regenerate documentation.
llvm-svn: 71055
2009-05-06 01:41:47 +00:00
Dan Gohman d99feb8da4 Add some more documentation for x86 special address spaces.
llvm-svn: 71012
2009-05-05 20:48:47 +00:00
Chris Lattner be9fa506ad 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 dad5871f84 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 680ae74885 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 f031421afe be very explicit that readnone/readonly functions can't
throw exceptions.

llvm-svn: 70788
2009-05-03 18:49:37 +00:00
Misha Brukman 3268c95840 HTML-escape '>' as '&gt;' in sample C++ code.
llvm-svn: 70569
2009-05-01 20:40:51 +00:00
Jeffrey Yasskin 590dc3c9ac 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 084669a1c9 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 75bc2250ca 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 1f8555a07f 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 a6fdf5a8c9 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 8d319047c5 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 1c1595f9ef improve documentation on build configurations, patch by
Josef Eisl!

llvm-svn: 70087
2009-04-25 22:24:49 +00:00
Chris Lattner 0cb8977c0a 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 6a6d3cc852 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 0c155e6dbe Fixed the gep example for i16 type indices.
llvm-svn: 70019
2009-04-25 07:27:44 +00:00
Sanjiv Gupta 77abea0d6a Fixed spaces and the getelementpointer example with i16 type indices.
llvm-svn: 69971
2009-04-24 16:38:13 +00:00
Sanjiv Gupta 46c97e626f Allow i16 type indices to gep.
llvm-svn: 69946
2009-04-24 02:37:54 +00:00
David Greene 0e89886048 Fix a documentation bug.
llvm-svn: 69923
2009-04-23 21:27:58 +00:00
David Greene 196ac3c69a 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 f00919a040 Allow defm to inherit from multiple multiclasses.
llvm-svn: 69832
2009-04-22 22:17:51 +00:00
David Greene a9c6c5d39b 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 753ed8fd9c Implement multiclass inheritance.
llvm-svn: 69810
2009-04-22 16:42:54 +00:00
Dan Gohman a4fea5b227 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 10961cd40a 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 7da1b90597 Update information on canadian cross builds
llvm-svn: 69358
2009-04-17 17:25:16 +00:00
Bill Wendling 64602b1ed6 More obsessive reformatting. Fixed some validation errors.
llvm-svn: 69130
2009-04-15 02:12:37 +00:00
Chris Lattner 184f1be4a8 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 04adcf153d Add paragraph tags.
llvm-svn: 68934
2009-04-13 02:03:40 +00:00
Nick Lewycky 4ac15cee54 Fix compile error. Pointed out by mait on #llvm IRC!
llvm-svn: 68910
2009-04-12 20:15:44 +00:00
Misha Brukman 5e8b8b37a3 Fixed spelling.
llvm-svn: 68821
2009-04-10 20:48:27 +00:00
Chris Lattner 4c4453061e fix typo, patch by Shlomi Fish!
llvm-svn: 68784
2009-04-10 15:38:51 +00:00
Chris Lattner 3875195865 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 b01824afb5 Use 'name' instead of 'href'.
llvm-svn: 68534
2009-04-07 18:54:06 +00:00
Bill Wendling ebb4486a84 Fix verification failure.
llvm-svn: 68531
2009-04-07 18:52:30 +00:00
Bill Wendling bf448a1010 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 1ae487bad5 Another reformatting. No change in docs.
llvm-svn: 68528
2009-04-07 18:40:56 +00:00
Chris Lattner 4bda28e765 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 28e2cd8090 clean up some html
llvm-svn: 68456
2009-04-06 20:35:19 +00:00
Bill Wendling d231f8a592 Add character encoding declaration to fix verification warning.
llvm-svn: 68440
2009-04-05 12:38:44 +00:00
Bill Wendling b95325c543 Obsessively format this document.
llvm-svn: 68439
2009-04-05 12:37:44 +00:00
Bill Wendling b4d7102417 Add character encoding declaration.
llvm-svn: 68433
2009-04-05 00:44:06 +00:00
Bill Wendling 9216ac0bcc Fix validation error.
llvm-svn: 68432
2009-04-05 00:43:04 +00:00
Bill Wendling b38e198f02 A lot of formatting changes.
llvm-svn: 68431
2009-04-05 00:41:19 +00:00
Bill Wendling 3b779984b4 Fix some HTML validation errors.
llvm-svn: 68427
2009-04-04 22:36:02 +00:00
Bill Wendling e1a070b6e3 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 49f891958f 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 184064484b Duplicate entry.
llvm-svn: 68401
2009-04-03 20:32:13 +00:00
Chris Lattner eaa52bc29b "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 0fc36ca69d update some syntax
llvm-svn: 68362
2009-04-03 00:29:19 +00:00
Chris Lattner d978cc5c63 add this to SVN to allow collaborative hacking.
llvm-svn: 68243
2009-04-01 21:11:04 +00:00
John Mosby 169927e7ef 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 a01a563813 fix some validation problems.
llvm-svn: 68026
2009-03-30 06:34:59 +00:00
John Mosby b92a76ff4f Clarify section on setting up and running test-suite
llvm-svn: 68023
2009-03-30 04:37:51 +00:00
Bill Wendling c619aaf122 Update the Visual Studio docs. Patch by Stefanus!
llvm-svn: 67940
2009-03-28 10:24:15 +00:00
Mikhail Glushenkov 0f78c2721b Documentation update.
Expand a bit on various '--*-graph' options.

llvm-svn: 67836
2009-03-27 12:58:29 +00:00
Duncan Sands 61837e6dc8 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 57be315d36 tt'ify.
llvm-svn: 67505
2009-03-23 04:53:34 +00:00
Chris Lattner 30bc972596 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 b1656c1e1f Add some explanations of how apint loads and stores
work.

llvm-svn: 67471
2009-03-22 11:33:16 +00:00
Duncan Sands 0c9742c3ae Update these for the 2.5 release.
llvm-svn: 66890
2009-03-13 13:42:20 +00:00
Gabor Greif 02ab9ab66d add some text to explain sentinels
llvm-svn: 66790
2009-03-12 10:30:31 +00:00
Gabor Greif 4ef9bc053a minor tweaks
llvm-svn: 66788
2009-03-12 09:47:03 +00:00
Gabor Greif 42225e50f3 do not pretend llvm/.../*.h being system headers
llvm-svn: 66697
2009-03-11 20:23:40 +00:00
Duncan Sands 4581bebf2a 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 605c7cab75 fix validator errors
llvm-svn: 66688
2009-03-11 20:04:08 +00:00
Gabor Greif bfdf23f07c Fix exaples using IRBuilder. Thanks, Quadrescence and Glip7 from IRC!
llvm-svn: 66687
2009-03-11 19:51:07 +00:00
Duncan Sands e2881053c9 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 dd282825a8 Clarify wording, patch by Stefanus Du Toit!
llvm-svn: 66458
2009-03-09 20:55:18 +00:00
Chris Lattner 4ce03e66a1 don't allow hash_map or hash_set.
llvm-svn: 66400
2009-03-09 05:20:45 +00:00
Duncan Sands 12da8ce3d2 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 1424861a62 Committing unsaved changes that should've been with r66237.
llvm-svn: 66242
2009-03-06 02:42:47 +00:00