Commit Graph

14593 Commits

Author SHA1 Message Date
Reid Spencer 200dcd9e68 Numerous fixes to convert ~ into ; that (probably) occurred during data
transmission.

llvm-svn: 16418
2004-09-19 23:42:55 +00:00
Chris Lattner 85927a6730 The lexicon doc is more of a user guide than programming dox
llvm-svn: 16417
2004-09-19 23:15:47 +00:00
Reid Spencer 70eca35170 Bring the script out of the dark ages and into modern autoconfness.
llvm-svn: 16415
2004-09-19 22:31:49 +00:00
Reid Spencer eb61eb2e32 Make the "Warning" notice a LOT more prominent.
llvm-svn: 16414
2004-09-19 22:30:53 +00:00
Reid Spencer 2aeccd0f1c Add in version dependency checks on all the tools we depend on. This is
necessary to ensure that a consistent configuration is created on each
platform. Certain definitions we use (like m4/libtool.m4) require certain
versions of the tools and we can no longer be slack about this or we'll
have problems with mis-configured builds.

llvm-svn: 16412
2004-09-19 22:14:24 +00:00
Reid Spencer dc6f5680f3 Add our own version of libtool.m4 instead of relying on the installed one.
This is a potential version mismatch problem because this file came from
libtool 1.5.10. If you're running a different version of libtool, the
checks in this file may not be quite right. Having our own version of this
file violates the spirit of libtool and is only provided to change the name
of "libtool" to "mklib". This is done so that the name "libtool" does not
conflict with the "lib" directory when doing tab completion and your
$objdir == $srcdir.

llvm-svn: 16411
2004-09-19 21:47:47 +00:00
Chris Lattner 2249dd1c41 better code
Move other things to the right sections

llvm-svn: 16410
2004-09-19 19:21:26 +00:00
Chris Lattner e6f13093e6 Make isSafeToLoadUnconditionally a bit smarter, implementing PR362 and
Regression/Transforms/InstCombine/CPP_min_max.llx

llvm-svn: 16409
2004-09-19 19:18:10 +00:00
Chris Lattner 75cf9f08cc New testcase for PR362: Icky code generated for std::min/std::max
llvm-svn: 16408
2004-09-19 19:17:10 +00:00
Chris Lattner d6d99dfa3f Fix a nasty iterator invalidation problem I introduced yesterday. This
unfortunately is the cause of a bunch of failures from tonight, and the
reason the tester is running so slow :(

llvm-svn: 16407
2004-09-19 19:01:06 +00:00
Chris Lattner 855a4ff4dd Remove a whole bunch of horrible hacky code that was used to promote allocas
whose addresses where used by trivial phi nodes and select instructions.  This
is now performed by the instcombine pass, which is more powerful, is much
simpler, and is faster.  This allows the deletion of a bunch of code, two
FIXME's and two gotos.

llvm-svn: 16406
2004-09-19 18:51:51 +00:00
Chris Lattner 2f7bb1be42 Instcombine now helps out with these
llvm-svn: 16405
2004-09-19 18:45:45 +00:00
Chris Lattner f62ea8ef4b Make instruction combining a bit more aggressive in the face of volatile
loads, and implement two new transforms: InstCombine/load.ll:test[56].

llvm-svn: 16404
2004-09-19 18:43:46 +00:00
Chris Lattner 29dd824a10 Add two new testcases that instcombine should handle
llvm-svn: 16403
2004-09-19 18:43:01 +00:00
Reid Spencer 1bdd0f0a08 Minor correction to Signals implementation.
Patch submitted by Jeff Cohen. Thanks Jeff!

llvm-svn: 16401
2004-09-19 05:37:39 +00:00
Chris Lattner 9864df96ba Add comment
llvm-svn: 16400
2004-09-19 01:05:16 +00:00
Chris Lattner 6455c51ab6 Fix the inliner to always delete any edges from the external call node to
a function being deleted.  Due to optimizations done while inlining, there
can be edges from the external call node to a function node that were not
apparent any longer.

This fixes the compiler crash while compiling 175.vpr

llvm-svn: 16399
2004-09-18 21:37:03 +00:00
Chris Lattner 824a21868b Add CallGraphNode::removeAnyCallEdgeTo method
llvm-svn: 16398
2004-09-18 21:34:34 +00:00
Reid Spencer 91e6f5e975 Use the /dev/zero device as the device on which the pages are mapped.
Patch contributed by Henrik Bach. Thanks Henrik!

llvm-svn: 16397
2004-09-18 19:34:09 +00:00
Reid Spencer 0e86336edc Porting of Unix implementation to Win32.
Patch contributed by Jeff Cohen. Thanks Jeff!

llvm-svn: 16396
2004-09-18 19:29:16 +00:00
Reid Spencer 36e3cbfd3b Get rid of file descriptor leak in create_file.
llvm-svn: 16395
2004-09-18 19:25:11 +00:00
Chris Lattner 9fb88200c4 Misha implemented the ModuleProvider interface back in 9/18/2003.
llvm-svn: 16394
2004-09-18 16:16:28 +00:00
Chris Lattner 9e4be6faed Provide initial docs for CallGraphSCCPass's, and fix several grammar-o's and
other problems.

llvm-svn: 16393
2004-09-18 06:39:35 +00:00
Chris Lattner a94619ddef Make this HTML 4.01 strict
Update to reflect changes to the 'Register' tblgen class.

llvm-svn: 16392
2004-09-18 06:28:07 +00:00
Chris Lattner 24ba604c98 Don't include libtool "object" files
llvm-svn: 16391
2004-09-18 04:40:46 +00:00
Chris Lattner 37b6c4f2d2 Convert this pass to be a CallGraphSCCPass instead of a Pass, which eliminates
the worklist and makes it more efficient.  This does not change functionality
at all.

llvm-svn: 16390
2004-09-18 00:34:13 +00:00
Chris Lattner 475dc2c93d Make sure to remove the Select instruction as well
llvm-svn: 16389
2004-09-18 00:32:40 +00:00
Chris Lattner 85d5ccc006 When changing a function, make sure to update the CallGraphNode for the
function, not just the CallGraph.

llvm-svn: 16388
2004-09-18 00:27:20 +00:00
Chris Lattner d4f3238c12 Implement new changeFunction method, nuke a never implemented one.
Add comments and doxygenify others.

llvm-svn: 16387
2004-09-18 00:22:43 +00:00
Chris Lattner e81c2aa42a Implement new changeFunction method, nuke a never implemented one.
llvm-svn: 16386
2004-09-18 00:22:13 +00:00
John Criswell db981ab5cc Changed the distclean target to handle the new location of config.h.
llvm-svn: 16385
2004-09-17 15:08:25 +00:00
Chris Lattner 5065b240c8 Fix typo in comment
llvm-svn: 16384
2004-09-17 03:58:39 +00:00
Reid Spencer 90debc5e2e Make sure critical sections are entered before trying to leave them.
Add some additional commentary about the workings of this module.

Patch contributed by Jeff Cohen. Thanks Jeff!

llvm-svn: 16383
2004-09-17 03:02:27 +00:00
Reid Spencer 7cd7aeee9a Adjust the license files based on the actual content of llvm and llvm-test
after llvm-test was split out of llvm.

llvm-svn: 16382
2004-09-16 16:41:31 +00:00
Reid Spencer 16b7bad55e Allow "bc" as suffix for bytecode files.
llvm-svn: 16381
2004-09-16 16:36:10 +00:00
Reid Spencer 4aff78acbb Implement the signals interface for Win32.
Patch provided by Jeff Cohen. Thanks Jeff!

llvm-svn: 16380
2004-09-16 15:53:16 +00:00
John Criswell 30a0c10269 Add dependencies so that project tools are recompiled if LLVM libraries
are updated.

llvm-svn: 16378
2004-09-16 14:11:25 +00:00
Chris Lattner 9face5eb1f Add a newline
llvm-svn: 16369
2004-09-15 17:53:52 +00:00
Reid Spencer 6614946443 Convert code to compile with vc7.1.
Patch contributed by Paolo Invernizzi. Thanks Paolo!

llvm-svn: 16368
2004-09-15 17:06:42 +00:00
Chris Lattner f38ee63423 Make sure to update the list end when an element is removed from it. This
fixes a crash in LICM when processing povray.

llvm-svn: 16367
2004-09-15 17:00:41 +00:00
Chris Lattner 6fa9665095 Add some assertions
llvm-svn: 16366
2004-09-15 16:59:47 +00:00
Reid Spencer d684790778 Stacker compiler library doesn't need to be shared and it can cause
problems on some platforms (like Solaris).

llvm-svn: 16365
2004-09-15 06:22:54 +00:00
Reid Spencer 90a3303af7 Attempt to solve the libtool problem on Solaris.
llvm-svn: 16364
2004-09-15 06:19:53 +00:00
Reid Spencer b88212ee1b Patches to make this file actually compile under windows.
Patches submitted by Jeff Cohen. Thanks Jeff!

llvm-svn: 16362
2004-09-15 05:49:50 +00:00
Reid Spencer 7e2c236fcd Initial version of the SysConfig abstraction for Win32.
llvm-svn: 16361
2004-09-15 05:48:49 +00:00
Reid Spencer 0f0c5cfb19 First version of a common header file for Win32 implementations.
llvm-svn: 16360
2004-09-15 05:48:11 +00:00
Reid Spencer 91886b791f Initial implementation of the Process abstraction for Win32.
llvm-svn: 16359
2004-09-15 05:47:40 +00:00
Reid Spencer 0de7bc1c3d Fix the interface to ReleaseRWX to take MemoryBlock& not Memory&
llvm-svn: 16356
2004-09-15 03:55:45 +00:00
Chris Lattner f11216d24f Fix a bug in the previous checkin that broke 255.vortex
llvm-svn: 16355
2004-09-15 02:34:40 +00:00
Alkis Evlogimenos 0507ffebb1 When creating constant arrays check that the initializer vector is the
same size as the one in the array type.

llvm-svn: 16354
2004-09-15 02:32:15 +00:00
Misha Brukman 4bf01357e1 Fit long lines into 80 cols via creative space elimination
llvm-svn: 16353
2004-09-15 01:40:18 +00:00
Misha Brukman 9511910e11 Wrap long line
llvm-svn: 16352
2004-09-15 01:34:42 +00:00
Misha Brukman 2d01db846b Targets are independent of each other, so compile them in parallel
llvm-svn: 16351
2004-09-15 01:34:25 +00:00
Chris Lattner 59d448f15e Bug fixed
llvm-svn: 16349
2004-09-15 01:09:25 +00:00
Chris Lattner a346578d92 Make sure to update alias analysis information as we transform the function.
This fixes PR420 and Regression/Transforms/LICM/2004-09-14-AliasAnalysisInvalidate.llx

llvm-svn: 16348
2004-09-15 01:04:07 +00:00
Chris Lattner 9b9932bd94 If given an AliasSetTracker object to update, update it.
llvm-svn: 16347
2004-09-15 01:02:54 +00:00
Chris Lattner 38be945b54 Add an optional argument to PromoteMemToReg
llvm-svn: 16346
2004-09-15 01:02:30 +00:00
Chris Lattner b69831d8dd New testcase for PR420
llvm-svn: 16345
2004-09-15 00:58:49 +00:00
Chris Lattner ab64481f1d Implement an AliasSetTracker::copyValue method
llvm-svn: 16344
2004-09-14 19:15:32 +00:00
Chris Lattner 8a40b8d8e0 Add an AliasSetTracker::copyValue method
llvm-svn: 16343
2004-09-14 19:15:12 +00:00
Misha Brukman c1f7bb0238 The Sparc linking .so problem extends to the sample project as well
llvm-svn: 16342
2004-09-14 18:21:03 +00:00
Chris Lattner 09f3ac9297 Add notes about some buggy passes
llvm-svn: 16339
2004-09-14 16:43:13 +00:00
Chris Lattner dd457079fa Remove unused pass
llvm-svn: 16338
2004-09-14 16:34:08 +00:00
Chris Lattner f41b80a05f Remove a long-dead pass. Actually, this pass was never used at all.
llvm-svn: 16337
2004-09-14 16:33:01 +00:00
Reid Spencer 4bc165e9c1 Fix compilation warning.
llvm-svn: 16336
2004-09-14 15:46:13 +00:00
Reid Spencer 853d250b0a Fix a compilation error.
llvm-svn: 16335
2004-09-14 15:42:11 +00:00
Reid Spencer f27c4cde06 Okay, the list of link-time passes wasn't such a hot idea. Its prone to
error. We'll strategize on this when we have multiple front ends to deal
with. For now llvm-ld just runs a standard set of transforms.

llvm-svn: 16333
2004-09-14 05:43:23 +00:00
Chris Lattner 2cdd49de2a Don't print newlines between passes in the pass list.
Note to self: sentences end with ".", not "...".
Note to reid: sentences end with ".", not "".   :)

llvm-svn: 16332
2004-09-14 05:06:58 +00:00
Chris Lattner 730cfe431a Don't print newlines between each library in the deplibs list.
llvm-svn: 16331
2004-09-14 04:51:44 +00:00
Chris Lattner e8e81a2941 Revamp the Register class, and allow the use of the RegisterGroup class to
specify aliases directly in register definitions.

Patch contributed by Jason Eckhardt!

llvm-svn: 16330
2004-09-14 04:17:02 +00:00
Reid Spencer b8dcf1cb7c Update to reflect stkrc's new optimization capabilities.
llvm-svn: 16327
2004-09-14 02:00:24 +00:00
Reid Spencer 86343e43dc Support substitution options for the W, M, and f options.
llvm-svn: 16326
2004-09-14 01:59:31 +00:00
Reid Spencer 4de872f623 Support the -WX, -f -M options as pass throughs
Change force option from -f to -F
Support the -strip option
Make changes to reflect different interface in sys::Program

llvm-svn: 16325
2004-09-14 01:58:45 +00:00
Reid Spencer df05ec7e0d Implement the GetLibraryPath function.
llvm-svn: 16323
2004-09-14 00:16:39 +00:00
Reid Spencer 41c5e9f2fc Add the GetLibraryPath method.
llvm-svn: 16322
2004-09-13 23:46:23 +00:00
Reid Spencer b9e0877223 Add support for the link-time pass list to Modules.
llvm-svn: 16321
2004-09-13 23:44:23 +00:00
Misha Brukman 77aedd18c7 Sparc cannot link shared objects (libtool issue) which affects Stacker.
llvm-svn: 16320
2004-09-13 22:42:54 +00:00
Reid Spencer f7948483d2 Simplify the sys::Memory interface per Chris' request.
llvm-svn: 16318
2004-09-13 22:38:11 +00:00
Reid Spencer 07369430c4 Clean up the interface and implementation of sys::Program so that it is
cleanly dissociated from the sys::Path class.

llvm-svn: 16315
2004-09-13 21:48:44 +00:00
Chris Lattner 247c29e4b0 Changes to make this work with Jason's patch. I checked this by hand, but
would appreciate if others would also look at this to make sure I didn't
botch something obvious

llvm-svn: 16312
2004-09-13 21:32:03 +00:00
Reid Spencer cdbb9d246c Change banner name to reflect actual program this Makefile is for.
llvm-svn: 16311
2004-09-13 21:15:19 +00:00
Reid Spencer eafdda000c Get rid of compile warning by having llvmExecve return the result of its
call to executeProgram.

llvm-svn: 16306
2004-09-13 15:37:33 +00:00
Reid Spencer 56d4b17288 Initial implementation of llvm-ld: stolen from gccld.
llvm-svn: 16305
2004-09-13 01:27:53 +00:00
Misha Brukman 01592c2a53 Add LLEE into compilation, but not for Sparc
llvm-svn: 16304
2004-09-13 01:18:30 +00:00
Reid Spencer b956fc1138 Excise the -L option since llvm-link should not do library searches. It
just links bytecode files together.

llvm-svn: 16303
2004-09-12 23:39:42 +00:00
Reid Spencer 1a8e15e356 Excise dependent library linking at Chris' request. llvm-link is intended
to provide only the simplest linking of LLVM modules without trying to be
complete. Dependent library linking will be added to gccld or its successor

llvm-svn: 16302
2004-09-12 23:08:29 +00:00
Misha Brukman c3ba6e2f4b Squelch compilation warnings on Sparc
llvm-svn: 16301
2004-09-12 23:01:24 +00:00
Misha Brukman afab5f9091 * Fix grammar
* Convert tabs to spaces

llvm-svn: 16300
2004-09-12 22:40:40 +00:00
Misha Brukman 72be9ae024 Fix filename: Printer.cpp has become X86AsmPrinter.cpp
llvm-svn: 16299
2004-09-12 21:26:04 +00:00
Misha Brukman 14756e8e1c Unbreak doxygen, according to Reid.
llvm-svn: 16298
2004-09-12 20:56:38 +00:00
Misha Brukman dbcd4fda49 Fix code spacing/alignment
llvm-svn: 16297
2004-09-12 20:47:33 +00:00
Reid Spencer 746dbfebc8 Fix the replace method to assert if an item was erased from the set but not
found in the vector. Previously, it just ignored this condition.

llvm-svn: 16296
2004-09-11 20:38:25 +00:00
Reid Spencer 987319d3a7 Correct the file header to reflect the new "examples" home for the file.
llvm-svn: 16295
2004-09-11 20:30:11 +00:00
Reid Spencer 55a96ee8f5 Fix typo: sterror -> strerror
llvm-svn: 16294
2004-09-11 20:18:08 +00:00
Reid Spencer fda2fe9f1e Correct the dynamic lib suffix on Darwin.
llvm-svn: 16293
2004-09-11 07:35:01 +00:00
Reid Spencer 566ac28f35 Provide initial implementations of Memory and Process concepts for various
platforms.
Implement GetLLVMSuffix function for the Path concept.

llvm-svn: 16292
2004-09-11 04:59:30 +00:00
Reid Spencer 2896c95bca Provide a generic Unix implementation of the Memory concept.
llvm-svn: 16291
2004-09-11 04:57:25 +00:00
Reid Spencer 33b9d77b89 Provide a generic unix implementation of the Process abstraction.
llvm-svn: 16290
2004-09-11 04:56:56 +00:00
Reid Spencer ae9bbda50a Implemented support for detecting file types by magic number, stripping
path and suffix to leave basename, and getting the DLL suffix.

llvm-svn: 16289
2004-09-11 04:55:08 +00:00
Reid Spencer 2d20d765d8 Implementation of Process concept for SUSv2 platforms.
llvm-svn: 16288
2004-09-11 04:54:06 +00:00
Reid Spencer fe020a38bc Implement dependent library processing and search paths for them.
llvm-svn: 16287
2004-09-11 04:32:42 +00:00
Reid Spencer 96019262ca Convert the Emitter to use the lib/System "Memory" interface instead of the
old SystemUtils.h interface to allocate RWX blocks of memory.

llvm-svn: 16286
2004-09-11 04:31:03 +00:00
Reid Spencer 0bb062e55d Add library LLVMsystem.a because the JIT now needs it.
llvm-svn: 16285
2004-09-11 04:29:44 +00:00
Reid Spencer 92475489e7 Correct the interface of a function to use the correct typedef for an
argument so that it will always compile.

llvm-svn: 16284
2004-09-11 04:29:13 +00:00
Reid Spencer 9cfa81662f Implement the remove method for deleting entries from the SetVector.
llvm-svn: 16283
2004-09-11 04:25:58 +00:00
Reid Spencer 1b34fde1cc Implement support for dependent libraries. The "source" module's dependent
libraries list is merged into the "destination" module's list. Also, if the
source module is one of the dependent libraries, it is removed from the
list.

llvm-svn: 16282
2004-09-11 04:25:17 +00:00
Reid Spencer 14072a3f54 Change interface to use correct typedef so it will always compile.
llvm-svn: 16281
2004-09-11 04:22:58 +00:00
Reid Spencer a529d4eaa7 Make the dependent libraries list use a SetVector instead of a regular
vector so that duplicate libraries never occur within a module.

llvm-svn: 16280
2004-09-11 04:22:14 +00:00
Reid Spencer 886fc070d5 Initial commit of a file to declare the interface for platform independent
support for various memory allocation operations.

llvm-svn: 16279
2004-09-11 04:20:58 +00:00
Reid Spencer e88d949c1e Add methods for detecting file types by magic number, getting the file name
suffix for shared objects, and stripping a path down to its base name.

llvm-svn: 16278
2004-09-11 04:19:17 +00:00
Reid Spencer cf40b4a423 Add methods for detecting different kinds of files by their magic number,
getting the suffix for shared objects, and extracting the basename from a
path.

llvm-svn: 16277
2004-09-11 04:18:05 +00:00
Reid Spencer 07e7a5ec18 Use llvm-link to link the .bc with testing.bc. This helps test the new
llvm-link dependent libraries feature.

llvm-svn: 16276
2004-09-11 04:15:09 +00:00
Reid Spencer c90a765368 Print the dependent libraries when dumping bytecode.
llvm-svn: 16275
2004-09-11 04:14:07 +00:00
Brian Gaeke c722311fb5 Update to latest versions of config.guess and config.sub from
http://savannah.gnu.org/projects/config

llvm-svn: 16268
2004-09-10 19:20:06 +00:00
Misha Brukman 04bbe6fa25 Renamed file to SparcV8ISelSimple.cpp
llvm-svn: 16267
2004-09-10 18:51:12 +00:00
Brian Gaeke 86584749b6 Roll back constant printing changes until the problems with larger
programs and C++ can be looked at in detail.

llvm-svn: 16266
2004-09-10 18:01:45 +00:00
Alkis Evlogimenos cb031d9518 Add assertion descriptiosn on type mismatches when creating
ConstantArray and ConstantPacked objects.

llvm-svn: 16261
2004-09-10 04:16:59 +00:00
Misha Brukman 0bc8b12734 Fix broken internal links (one found by seventwentyfour.com spider)
llvm-svn: 16260
2004-09-09 20:34:13 +00:00
Alkis Evlogimenos 213e6db9ce Grow the map on entry so that we don't crash if joinIntervals never
runs (if coalescing is disabled for example).

llvm-svn: 16259
2004-09-09 19:24:38 +00:00
Misha Brukman 4657235e36 If updating from CVS gives error "No rule to make target", it's faster to just
delete .d files than to rebuild from scratch.

llvm-svn: 16258
2004-09-09 16:36:47 +00:00
Misha Brukman 6e8f860fee Fix broken link to the 2004 CGO paper.
llvm-svn: 16257
2004-09-09 16:18:40 +00:00
Chris Lattner c8f1d71f1b Add missing #include
llvm-svn: 16256
2004-09-09 02:37:56 +00:00
Brian Gaeke ee83ff191f Regenerated, to recognize mingw.
llvm-svn: 16255
2004-09-08 20:38:05 +00:00
Brian Gaeke f8d86008c5 recognize MinGW
llvm-svn: 16254
2004-09-08 20:32:11 +00:00
Misha Brukman 17e894523a Disable libprofile as it breaks the build on Sparc (autoconf issues).
llvm-svn: 16253
2004-09-08 20:30:26 +00:00
Misha Brukman 6ea13f679b Make file comment span the entire line
llvm-svn: 16249
2004-09-08 19:48:15 +00:00
Alkis Evlogimenos 371403193c Use a shorter form to express implicit use/defs in FpGETRESULT and
FpSETRESULT.

llvm-svn: 16247
2004-09-08 18:29:31 +00:00
Alkis Evlogimenos 8b700215ed A call instruction should implicitely define ST0 since the return
value is returned in that register. The pseudo instructions
FpGETRESULT and FpSETRESULT shold also have an implicity use and def
of ST0 repsecitvely.

llvm-svn: 16246
2004-09-08 16:54:54 +00:00
Brian Gaeke acafb39cc3 This file does not need <iostream>, I think.
llvm-svn: 16245
2004-09-08 04:10:52 +00:00
Alkis Evlogimenos adb2ce2962 Use a DenseMap for mapping reg->reg. This improves the LiveInterval
analysis running time from 2.7869secs to 2.5226secs on 176.gcc.

llvm-svn: 16244
2004-09-08 03:01:50 +00:00
Brian Gaeke 52a4e667e8 Use libtool, not mklib (which somehow doesn't get generated anymore)
llvm-svn: 16243
2004-09-07 19:03:35 +00:00
Reid Spencer 1a2f0432d5 Remove PAPIDIR, per brg
llvm-svn: 16240
2004-09-07 18:04:45 +00:00
Reid Spencer 05b9b53b79 bug 352 fixed
bug 257 fixed

llvm-svn: 16238
2004-09-07 17:52:38 +00:00
Brian Gaeke 64a0630d72 PAPI check has been moved to projects/reopt.
llvm-svn: 16237
2004-09-07 17:35:16 +00:00
Brian Gaeke 6e07318a38 PAPI is not used here.
llvm-svn: 16236
2004-09-07 17:34:34 +00:00
Reid Spencer edd0b5b653 Removed this file as its contents are now in the m4 directory.
llvm-svn: 16234
2004-09-07 16:50:22 +00:00
Reid Spencer ee0a2bee10 Remove variables and tests that were specific to the now defunct
test/Programs. These have been moved to llvm-test/autoconf/configure.ac and
llvm-test/Makefile.config.in

llvm-svn: 16231
2004-09-07 16:35:45 +00:00
Reid Spencer 90de7fbb3e - Handle AC_CONFIG_SUBDIRS properly for existing "well known" projects
while still retaining the ability to configure unknown ones.
- Excise crud left over from when test/Projects was still part of the main
  LLVM module. These removed tests are now all in
  llvm-test/autoconf/configure.ac

llvm-svn: 16230
2004-09-07 16:26:18 +00:00
Reid Spencer d7eeb3ae28 - Perform all validity checks before doing anything.
- Use the -I parameter to aclocal to tell it where the autoconf/m4
  directory is located so it can find needed autoconf functions

llvm-svn: 16225
2004-09-07 16:00:48 +00:00
Reid Spencer 8118dba3e6 move AC_FUNC_ISINF and AC_FUNC_ISNAN to their own files.
llvm-svn: 16224
2004-09-07 14:23:53 +00:00
Reid Spencer b15e69a09b Individual autoconf function broken out of acincludes.m4. This change
per the recommended style guide for autoconf and so that individual
autoconf functions can more easily be shared across projects.

llvm-svn: 16223
2004-09-07 06:56:14 +00:00
Misha Brukman 33427efbe6 This is the documentation style sheet, not the one for the website.
llvm-svn: 16222
2004-09-07 05:09:22 +00:00
Misha Brukman 125255b9f6 Remove extraneous blank lines.
llvm-svn: 16205
2004-09-06 23:00:30 +00:00
Misha Brukman a0194211d7 Add link to new howto on writing backends.
llvm-svn: 16204
2004-09-06 23:00:01 +00:00
Misha Brukman 25e6361939 How to write an LLVM backend, first draft.
llvm-svn: 16203
2004-09-06 22:58:13 +00:00
Misha Brukman d48f54417f * Profile-guided needs a hyphen
* Dead store elimination has been implemented

llvm-svn: 16202
2004-09-06 22:35:43 +00:00
Misha Brukman a196c6859e Reword to not use a link text `click here'.
llvm-svn: 16201
2004-09-06 20:58:44 +00:00
Reid Spencer ec0c48e0f9 Modify the lines of code counting mechanism to use the new "countloc.sh"
utility. This avoids some problems with long line lengths and counting the
wrong things.

llvm-svn: 16200
2004-09-06 19:32:55 +00:00
Reid Spencer 2a91e7f660 Added a tool to more accurately count the lines of code. The previous
utility, getsrcs.sh suffered from two problems: (1) it generated command
lines too long for some platforms and (2) it searched the projects diretory
which now contains the llvm-test module (in nightly tester) but we don't
want to include the test code in our LOC calculation. This script should
be maintained as LLVM adds new top level directories that contain source
code.

llvm-svn: 16199
2004-09-06 19:06:27 +00:00
Nate Begeman 54bcf2db01 Add 64 bit divide instructions, and use them
llvm-svn: 16198
2004-09-06 18:46:59 +00:00
Reid Spencer d5de72cd6b Remove double paren use in system() function so that the command line can
be correctly interpreted by non-bash shells.

llvm-svn: 16194
2004-09-05 20:57:22 +00:00
Reid Spencer 075de23a3d HTML 4.01 STRICT compliance.
Added missing definitions
Noted the difference between llvm/test and llvm-test

llvm-svn: 16193
2004-09-05 20:50:22 +00:00
Reid Spencer ae21b0b836 Make section separator comments 80 chars, not 70.
Revise descriptions to account for llvm/test/Programs being moved to
the new CVS module llvm-test.
Incoporate an example of how to run the NightlyTest.pl script from a
shell script.

llvm-svn: 16192
2004-09-05 20:07:26 +00:00
Alkis Evlogimenos 58350a7435 Indent to 2 spaces and cleanup excess whitespace.
llvm-svn: 16188
2004-09-05 18:41:35 +00:00
Alkis Evlogimenos fcb3f5197e Indent to 2 spaces.
llvm-svn: 16187
2004-09-05 18:39:20 +00:00
Reid Spencer 7433dcdc0f Remove configuration of test/Programs/* Makefiles.
llvm-svn: 16186
2004-09-05 17:48:32 +00:00
Reid Spencer 20f712853f Added the configuration of the test/Makefile.
llvm-svn: 16185
2004-09-05 16:42:30 +00:00
Reid Spencer fe4c30ec5b Add HAS_U_INT64_T
llvm-svn: 16184
2004-09-05 16:41:11 +00:00
Reid Spencer 7650c06a45 Add LLVMC as a supported tool.
llvm-svn: 16183
2004-09-05 16:39:01 +00:00
Reid Spencer ebb2334fa5 Per Bug 257
The "Programs" directory no longer lives here. It have been moved to its
own cvs module. Check it out into llvm/projects and configure/build it
there.

llvm-svn: 16182
2004-09-05 08:18:23 +00:00
Reid Spencer 2263203a94 Make the NightlyTest run tests out of projects/llvm-test instead of
llvm/test/Programs

llvm-svn: 16181
2004-09-05 07:58:10 +00:00
Misha Brukman 0d68e4cde6 Put a space between `Data' and `Structure' of DSA.
llvm-svn: 16179
2004-09-05 03:57:23 +00:00
Misha Brukman 3541004158 Remove the bit about this document being my `notes', it has matured since then.
llvm-svn: 16178
2004-09-05 03:24:34 +00:00
Misha Brukman 68d6f7fa22 Fix object/library filenames that have changed, clarify descriptions.
llvm-svn: 16177
2004-09-05 03:20:18 +00:00
Misha Brukman adfa8b8ab4 Add DSA.
llvm-svn: 16176
2004-09-05 03:00:20 +00:00
Misha Brukman 73b6e9679b * CSS was created to reduce re-specifying design styles: specify table cell
color once at the top, and do not repeat it 82 times
* Replace bright blue table border with gray, which is easier on the eyes and
  matches the gray LLVM documentation color scheme

llvm-svn: 16175
2004-09-05 02:56:39 +00:00
Misha Brukman 175fdd4678 * Change PPC32AsmPrinter => PowerPCAsmPrinter since it is now shared between
Darwin and AIX and is not 32- or 64-bit specific
* Bring back PowerPC.td as a result, to make it use the `PowerPC' class name
* Adjust Makefile accordingly

llvm-svn: 16174
2004-09-05 02:42:44 +00:00
Misha Brukman 4acadb3af7 Renamed PPC32AsmPrinter.cpp => PowerPCAsmPrinter.cpp as the Darwin and AIX asm
printers are now unified into one file.

llvm-svn: 16173
2004-09-05 02:27:37 +00:00
Reid Spencer 738122ce2c Make sure llvm-test doesn't build automatically so the nightly test can
finish its build phase without building and running all the tests.

llvm-svn: 16172
2004-09-04 23:07:57 +00:00
Reid Spencer ab4df83228 Take one item off the "to do" list: implemented -O1 .. -O5 options for
optimization in stkrc instead of depending on "opt"

llvm-svn: 16169
2004-09-04 20:30:01 +00:00
Reid Spencer 8ea6e94df9 Convert makefile to use standard LLVM macros for tool names
Utilize new stkrc -O4 option for optimization during translation.

llvm-svn: 16168
2004-09-04 20:13:54 +00:00
Reid Spencer 950d604ef9 Make Stacker into a complete project with its own configuration.
llvm-svn: 16167
2004-09-04 19:48:50 +00:00
Reid Spencer fbd716d621 Make the StackerCompiler and optimizing translator by running specific
optimizations after construction of the Module. The OptLevel argument
to the compile function controls the level of optimization.

llvm-svn: 16166
2004-09-04 19:07:32 +00:00
Reid Spencer 4771383e47 Make the Stacker compiler handle -O1 .. -O5 options so it is compliant with
the compiler driver interface as an optimizing translator. Also clean up
error message handling.

llvm-svn: 16165
2004-09-04 19:05:53 +00:00
Nate Begeman 4d847047a0 Include MathExtras.h to fix build breakage, thanks to Vladimir
llvm-svn: 16164
2004-09-04 14:51:26 +00:00
Nate Begeman 4bfceb1ed5 All PPC instructions are now auto-printed
32 and 64 bit AsmWriters unified
Darwin and AIX specific features of AsmWriter split out

llvm-svn: 16163
2004-09-04 05:00:00 +00:00
Reid Spencer b9c90a2b02 Get rid of an un-needed and un-used GCCism. ATTR_DEPRECATED is used nowhere
in the LLVM source base.

llvm-svn: 16162
2004-09-03 23:38:25 +00:00
Reid Spencer 0ded30aec4 Clean up some "clean:" targets so they use $(VERB) and don't print anything
by default, like every other "clean" target in LLVM.

llvm-svn: 16161
2004-09-03 23:19:53 +00:00
Reid Spencer c8ec13388b Make tblgen's exception handling a little more robust by printing the
program name and also catching ...

llvm-svn: 16160
2004-09-03 23:17:54 +00:00
Reid Spencer f68090d67f Don't re-instantiate the std::string in catch block.
llvm-svn: 16159
2004-09-03 22:59:32 +00:00
Reid Spencer 3f4bdc96fe Uh, changing in build dir and committing in src dir doesn't lead to correct
commits. Fix it so it actually works.

llvm-svn: 16158
2004-09-03 22:28:24 +00:00
Reid Spencer 6d28a14133 Correct the specification of the DIRS variable to not include the source
directory prefix, just the name of the subdirectory. This prevents the
makefile from trying to find makefiles (like Makefile.common) in the wrong
place.

llvm-svn: 16157
2004-09-03 22:25:40 +00:00
Misha Brukman 1a45021535 I was actually wrong in my "simplification".
llvm-svn: 16156
2004-09-03 19:46:43 +00:00
Misha Brukman 247b22c56d Simplify check for uint64_t and u_int64_t
llvm-svn: 16155
2004-09-03 19:44:28 +00:00
Reid Spencer 6f21308b16 Provide correct definition of uint64_t for platforms that have only
u_int64_t defined.

llvm-svn: 16154
2004-09-03 19:37:39 +00:00
Misha Brukman 14a2b4628d Order #includes alphabetically, local .h files first.
llvm-svn: 16153
2004-09-03 18:25:53 +00:00
Alkis Evlogimenos a5c04ee50f Fixes to make LLVM compile with vc7.1.
Patch contributed by Paolo Invernizzi!

llvm-svn: 16152
2004-09-03 18:19:51 +00:00
Misha Brukman cb46e66983 Regenerated after Reid's change for uint64_t/u_int64_t (patch by Bill Wendling)
llvm-svn: 16151
2004-09-02 23:02:30 +00:00
Reid Spencer 109524cae3 Make the text of this file a little more useful.
llvm-svn: 16150
2004-09-02 22:49:27 +00:00
Reid Spencer ab2228ad7e Don't just assume that either uint64_t or u_int64_t is available. Instead,
give preference to uint64_t if it exists. If not, check for u_int64_t. If
that doesn't exist either, then error out.

llvm-svn: 16149
2004-09-02 21:38:24 +00:00
Alkis Evlogimenos 9f82237f4e Change the way we choose a free register: instead of picking the first
free allocatable register, we prefer the a free one with the most uses
of inactive intervals.

llvm-svn: 16148
2004-09-02 21:24:33 +00:00
Alkis Evlogimenos 095c3a80f3 Change the way we choose a free register: instead of picking the first
free allocatable register, we prefer the a free one with the most uses
of inactive intervals. This causes less spills and performes a bit
better compared to gcc:

Program                 | GCC/LLC (Before)| GCC/LLC (After)
164.gzip/164.gzip       | 0.59            | 0.60
175.vpr/175.vpr         | 0.57            | 0.58
176.gcc/176.gcc         | 0.59            | 0.61
181.mcf/181.mcf         | 0.94            | 0.95
186.crafty/186.crafty   | 0.62            | 0.62
197.parser/197.parser   | 0.89            | 0.88
252.eon/252.eon         | 0.61            | 0.66
253.perlbmk/253.perlbmk | 0.79            | 0.84
254.gap/254.gap         | 0.81            | 0.81
255.vortex/255.vortex   | 0.92            | 0.93
256.bzip2/256.bzip2     | 0.69            | 0.69
300.twolf/300.twolf     | 0.91            | 0.90

llvm-svn: 16147
2004-09-02 21:23:32 +00:00
John Criswell d672a3dbe3 Added a check for u_int64_t, which is used by Interix.
llvm-svn: 16145
2004-09-02 18:44:44 +00:00
John Criswell 4fcd5c30fa Added u_int64_t because some systems use that instead of uint64_t.
llvm-svn: 16144
2004-09-02 18:41:30 +00:00
Alkis Evlogimenos dcbf893095 We don't need to sort the added vector as unhandled intervals are
stored in a binary heap.

llvm-svn: 16143
2004-09-02 18:00:38 +00:00
Nate Begeman 6173878304 Convert remaining X-Form and Pseudo instructions over to asm writer
llvm-svn: 16142
2004-09-02 08:13:00 +00:00
Alkis Evlogimenos 7063868e2a Pull in definition of std::unary_function.
llvm-svn: 16140
2004-09-02 03:24:45 +00:00
Brian Gaeke 45fb84d68d Unbreak build
llvm-svn: 16139
2004-09-02 03:24:08 +00:00
Brian Gaeke c6e81f0fde Back to compiling land for v8
llvm-svn: 16138
2004-09-02 02:37:43 +00:00
Reid Spencer 7c16caa336 Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.

llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Alkis Evlogimenos fae8f6a4fb Be a bit more efficient when processing the active and inactive
lists. Instead of scanning the vector backwards, scan it forward and
swap each element we want to erase. Then at the end erase all removed
intervals at once. This doesn't save much: 0.08s out of 4s when
compiling 176.gcc.

llvm-svn: 16136
2004-09-01 22:52:29 +00:00
Alkis Evlogimenos 6a099d439e Give a better assertion if we see a use before a def.
llvm-svn: 16135
2004-09-01 22:34:52 +00:00
Reid Spencer a50cb6c8b9 Make sure <cassert> is included for platforms that don't include it via
other header files.

llvm-svn: 16134
2004-09-01 20:36:15 +00:00
Reid Spencer f4e546b7aa mkdtemp doesn't exist on Cygwin. Use tempnam & mkdir instead.
llvm-svn: 16133
2004-09-01 20:29:35 +00:00
Reid Spencer 9501b9b82b Make CommandLine prefix error output with the name of the program.
llvm-svn: 16129
2004-09-01 04:41:28 +00:00
Reid Spencer 67c06d7df0 Initial commit for platform independent system configuration support.
llvm-svn: 16128
2004-08-31 18:13:52 +00:00
Reid Spencer 8c73e0041a Add support for FreeBSD
llvm-svn: 16127
2004-08-31 18:09:35 +00:00
Reid Spencer f2531a1568 Add support for Interix and FreeBSD
llvm-svn: 16126
2004-08-31 18:03:23 +00:00
Reid Spencer b14809c51d Actually define PreventCoreFiles in the sys namespace.
llvm-svn: 16125
2004-08-31 17:53:41 +00:00
Reid Spencer 4f48470d84 Add a new abstraction, SysConfig for platform independent system
configuration calls. Right now this just contains PreventCoreFiles so that
bugpoint can by platform independent.

llvm-svn: 16124
2004-08-31 17:43:29 +00:00
Alkis Evlogimenos b84f0be5b1 Minor code clarity changes.
llvm-svn: 16123
2004-08-31 17:39:15 +00:00
Reid Spencer 67be17afbe Fix a "test" botch.
Alphabetize the platform list
Install some AC_MSG_CHECKING/AC_MSG_RESULT pairs.

llvm-svn: 16122
2004-08-31 14:20:36 +00:00
Nate Begeman a113d74e4c convert M and MD form instructions to generated asm writer
llvm-svn: 16121
2004-08-31 02:28:08 +00:00
Reid Spencer 1daffa57c1 Recognize Interix systems as if they were SunOS and make sure we don't
attempt to configure for "Unknown" system types.

llvm-svn: 16120
2004-08-31 01:34:10 +00:00
Reid Spencer 79d4c3d5db Move the GetTemporaryDirectory function from "generic Unix" to platform
specific.

llvm-svn: 16119
2004-08-30 21:46:55 +00:00
Reid Spencer f98fff36ef Add inclusion of assert.h
llvm-svn: 16118
2004-08-30 16:03:54 +00:00
Reid Spencer 47fc279160 Initial commit of a configuration file for compiling C++ programs with
the file name pattern *.cpp

llvm-svn: 16117
2004-08-30 06:32:24 +00:00
Reid Spencer a681845e69 Implement the "setIncludePaths" and "setSymbolDefines" interface methods.
Revise token substitution to be a little faster.
Clean up exception throwing, make sure its always a std::string.

llvm-svn: 16116
2004-08-30 06:29:06 +00:00
Reid Spencer 1b389f09b4 Pass lists of -I and -D options through to the Compiler Driver.
Handle -g and -Wxxx for GCC compatibility

llvm-svn: 16115
2004-08-30 06:27:32 +00:00
Reid Spencer cf2bc3d767 Add a blurb about exploiting the use of external storage.
llvm-svn: 16114
2004-08-30 05:56:51 +00:00
Nate Begeman 143cf94f92 Move yet more instructions over to being printed by the generated asm writer
llvm-svn: 16112
2004-08-30 02:28:06 +00:00
Reid Spencer b55c0cbaee Abbreviate the long descriptions which are now in docs/SystemLibrary.html.
llvm-svn: 16111
2004-08-30 02:03:51 +00:00
Reid Spencer 8aca0b494d Reduce the number of arguments in the instruction builder and make some
improvements on instruction selection that account for register and frame
index bases.

Patch contributed by Jeff Cohen. Thanks Jeff!

llvm-svn: 16110
2004-08-30 00:13:26 +00:00
Reid Spencer 9f64b91e27 Need to throw std::string not const char* if we want error messages to be
caught.

llvm-svn: 16109
2004-08-30 00:06:52 +00:00
Reid Spencer 94596c2102 Synchronize documentation of configuration items and substitutions with
current reality of llvmc implementation.

llvm-svn: 16108
2004-08-29 23:20:42 +00:00
Nate Begeman 6cdbd22245 Convert A-Form instructions to auto-generated asm writer
llvm-svn: 16107
2004-08-29 22:45:13 +00:00
Nate Begeman 434234f6d1 Register sizes should be specified in bits
llvm-svn: 16106
2004-08-29 22:03:40 +00:00
Nate Begeman 8cb6bd5f3c Improvements to int->float cast code for PPC-64
llvm-svn: 16105
2004-08-29 22:02:43 +00:00
Nate Begeman 50d140ee3d Must link against new LLVMsystem library
llvm-svn: 16104
2004-08-29 22:01:44 +00:00
Nate Begeman a094704ff9 RemoveFileOnSignal is now in sys:: namespace
llvm-svn: 16103
2004-08-29 22:01:17 +00:00
Nate Begeman c9dec3ae70 Put this change back in after testing from Reid proved its innocence. getSpillSize now returns value in bits
llvm-svn: 16102
2004-08-29 22:00:24 +00:00
Nate Begeman 168be7e43f Update doxygen comment now that getSpillSize is supposed to return value in bits
llvm-svn: 16101
2004-08-29 21:59:26 +00:00
Reid Spencer 023637eb38 Add a declaration of environ global for Darwin
llvm-svn: 16100
2004-08-29 20:10:07 +00:00
Reid Spencer a62e5a837f Add a missing header file
llvm-svn: 16099
2004-08-29 20:02:28 +00:00
Reid Spencer 3311669903 Add an assert to cature null Operands. It is better to catch it here than
to SIGSEGV in the bowels of isa<...> later.

llvm-svn: 16098
2004-08-29 19:37:59 +00:00
Reid Spencer 6fca37236d Signals support has been moved to lib/System
llvm-svn: 16097
2004-08-29 19:36:34 +00:00
Reid Spencer efc94f5e72 Updated to create a link needed for correct lib/System compilation.
llvm-svn: 16096
2004-08-29 19:35:28 +00:00
Reid Spencer 90f56ee8b4 Add lib/System ahead of lib/Support in case there are operating system
issues.

llvm-svn: 16095
2004-08-29 19:33:21 +00:00
Reid Spencer 811c3c0edb Link with LLVMsystem.a for operating system independence.
llvm-svn: 16094
2004-08-29 19:31:19 +00:00
Reid Spencer 9b129bea2e RemoveFileOnErrorSignal is now in the llvm::sys namespace. Adjust
accordingly.

llvm-svn: 16093
2004-08-29 19:30:41 +00:00
Reid Spencer 74c3dc6927 Add the LLVMsystem.a library as it is now used for operating system
independence of the tool.

llvm-svn: 16092
2004-08-29 19:29:38 +00:00
Reid Spencer e3263ecaf0 The functions in Signal.h are now in the llvm::sys namespace - adjust
llvm-svn: 16091
2004-08-29 19:28:55 +00:00
Reid Spencer 5b43fc9b53 add llvmc
llvm-svn: 16090
2004-08-29 19:27:34 +00:00
Reid Spencer 1b5b24f9fb Convert llvmc to use the lib/System interface instead of directly
using Unix operating system calls.

llvm-svn: 16089
2004-08-29 19:26:56 +00:00
Reid Spencer b8c572df56 Move a warning comment to where it should have been in the first place.
llvm-svn: 16088
2004-08-29 19:25:54 +00:00
Reid Spencer bb5301eebf Correct the vim: specification
llvm-svn: 16087
2004-08-29 19:24:53 +00:00
Reid Spencer 2f209c4452 Include some additional header files.
Fix the banner length.

llvm-svn: 16086
2004-08-29 19:24:20 +00:00
Reid Spencer 3d7a614ec7 Initial platform independent implementation of operating system concept
of "Signals" (cleanup after fatal errors).

llvm-svn: 16085
2004-08-29 19:22:48 +00:00
Reid Spencer 76b83a1869 Initial commit of an platform-indepdendent implementation for the
"Program" operating system concept (find and execute programs).

llvm-svn: 16084
2004-08-29 19:20:41 +00:00
Reid Spencer 21087b0f7e Put the lib/System interface functions in llvm::sys namespace.
llvm-svn: 16083
2004-08-29 19:19:07 +00:00
Reid Spencer a872cbe3bd Create a link from $BUILD_OBJ_ROOT/lib/System/platform to
$BUILD_SRC_ROOT/lib/System/$build which gives us the ability to
configure the lib/System for the current type of operating system.
Also cleaned up some indentation.

llvm-svn: 16082
2004-08-29 19:18:05 +00:00
Nate Begeman 4483df8b63 Implement the following missing functionality in the PPC backend:
cast fp->bool
cast ulong->fp
algebraic right shift long by non-constant value
These changes tested across most of the test suite.  Fixes Regression/casts

llvm-svn: 16081
2004-08-29 08:19:32 +00:00
Reid Spencer 023ff63545 Initial commit of the platform agnostic interface to finding and executing
programs.

llvm-svn: 16080
2004-08-29 05:29:35 +00:00
Reid Spencer 319b136522 Add a function to remove whole directorys on fatal signal.
Doxygenify function comments.

llvm-svn: 16079
2004-08-29 05:27:15 +00:00
Reid Spencer 6df221d50a Revise the design of the Path concept per peer review. Too many changes to
note individually but these essence of it is to not derive from
std::string, clarify the interface, and provide better documentation.
There is now also (untested) implementations for AIX, Darwin, and SunOS.

llvm-svn: 16078
2004-08-29 05:24:01 +00:00
Alkis Evlogimenos c227d73e5f Remove dead code.
llvm-svn: 16077
2004-08-28 22:43:31 +00:00
Alkis Evlogimenos e2d962e0fd Now that LiveIntervals::addIntervalsForSpills is fixed, do not require
LiveVariables.

llvm-svn: 16076
2004-08-27 19:00:29 +00:00
Alkis Evlogimenos 8c67a3003e Only update LiveVariables if it is available. addIntervalsForSpills
runs after the initial run of the live interval analysis.

llvm-svn: 16075
2004-08-27 18:59:22 +00:00
Alkis Evlogimenos efd40bce75 Back out this change as it broke the build last night. This should be
investicated further as the linearscan variants don't really need
LiveVariables...

llvm-svn: 16074
2004-08-27 18:01:21 +00:00
Nate Begeman c561fc3731 Back out change to divide getSpillSize by 8 until I figure out why it breaks x86, which has register sizes in bits.
llvm-svn: 16073
2004-08-27 16:48:24 +00:00
Nate Begeman 0c1e6804a1 Fix a typo in the bytecode format documentation
llvm-svn: 16072
2004-08-27 07:59:37 +00:00
Alkis Evlogimenos 11f0fc8eda The linear scan variants do not require the LiveVariables analysis.
llvm-svn: 16071
2004-08-27 04:51:13 +00:00
Nate Begeman fa2bf42539 Register sizes are in bits, not bytes
llvm-svn: 16070
2004-08-27 04:28:10 +00:00
Alkis Evlogimenos 7ebfde2be6 Add getLastBlock member. This is useful when growing a densemap keyed
on MachineBasicBlocks.

llvm-svn: 16069
2004-08-27 04:02:35 +00:00
Alkis Evlogimenos 390c820a82 Add MachineBasicBlock2IndexFunctor. This is useful for densemaps from
MachineBasicBlocks to an arbitrary type.

llvm-svn: 16068
2004-08-27 04:00:26 +00:00
Alkis Evlogimenos 60f33d4d66 Add size member function.
llvm-svn: 16067
2004-08-27 03:58:31 +00:00
Reid Spencer 6e8ffc3831 Add more content.
This isn't in reviewable shape yet, unless you're curious.

llvm-svn: 16066
2004-08-27 02:08:04 +00:00
Reid Spencer 7d0a123c3e Bug 430 Fixed.
llvm-svn: 16065
2004-08-27 00:48:26 +00:00
Reid Spencer 366c457e08 Correctly compute the number of compaction tables.
llvm-svn: 16064
2004-08-27 00:43:51 +00:00
Reid Spencer 248c06dcea Prevent an empty compaction table from being written to the bytecode file.
llvm-svn: 16063
2004-08-27 00:38:44 +00:00
Reid Spencer 3b789ad2b8 Add the CompactionTableIsEmpty function so that we can determine if a
CompactionTable really needs to be emitted. This is not a straight forward
computation, hence the need for a member function here.

llvm-svn: 16062
2004-08-26 22:32:00 +00:00
Alkis Evlogimenos 2c69803b61 Use newly added API in MRegisterInfo and don't expose the allocatable
register set anymore. Its users now use the MRegisterInfo API.

llvm-svn: 16061
2004-08-26 22:23:32 +00:00
Alkis Evlogimenos 542ac1cba7 Use newly added API in MRegisterInfo.
llvm-svn: 16060
2004-08-26 22:22:38 +00:00
Alkis Evlogimenos 8b5b3fdb50 Add getAllocatableSet() function.
llvm-svn: 16059
2004-08-26 22:21:04 +00:00
Reid Spencer cb84e4351d Provide some meta tags for this document.
llvm-svn: 16058
2004-08-26 20:44:00 +00:00
Reid Spencer 1d9e29bdc0 Add the default table related styles
llvm-svn: 16057
2004-08-26 20:43:21 +00:00
Reid Spencer c948f9d9e9 Document the rational for the #include hierarchy.
llvm-svn: 16056
2004-08-26 18:52:52 +00:00
Reid Spencer 30e25f33f7 Fix a typo.
llvm-svn: 16055
2004-08-26 07:43:33 +00:00
Reid Spencer 3f3d1666ff First cut at a README for lib/System explaining the #inclusion rules and
design criteria.

llvm-svn: 16054
2004-08-26 07:41:41 +00:00
Reid Spencer b3f342c877 Add a README explaining the intended content of this directory.
llvm-svn: 16053
2004-08-26 05:58:20 +00:00
Alkis Evlogimenos 127c2aa7b2 Add default index functor (an identity functor). You could use a
vector directly to get the same functionality but using a DenseMap
makes the code more readable IMO.

llvm-svn: 16052
2004-08-26 03:37:28 +00:00
Brian Gaeke 7f00753f70 Previous checkin broke printf(%a) support for fp constants-- re-fix it.
llvm-svn: 16051
2004-08-25 19:37:26 +00:00
Brian Gaeke 35eb7aeae3 New version of Bill Wendling's PR33 patch.
llvm-svn: 16050
2004-08-25 19:00:42 +00:00
Reid Spencer ebb91dcfe7 Fix documentation.
Make the library name LLVMsystem instead of just system so as to not
to be confused with other "system" libraries.

llvm-svn: 16049
2004-08-25 06:23:45 +00:00
Reid Spencer 814ba578ba Initial implementation of the Path operating system concept.
llvm-svn: 16048
2004-08-25 06:20:07 +00:00
Reid Spencer 13ebda70ea License for this library.
llvm-svn: 16047
2004-08-25 00:48:02 +00:00
Reid Spencer 135006cab1 Update to include tools/llvmc and lib/System as having additional copyright
licenses.

llvm-svn: 16046
2004-08-25 00:45:35 +00:00
Reid Spencer 6275eee949 License file for llvmc.
llvm-svn: 16045
2004-08-25 00:41:06 +00:00
Reid Spencer 01b22282fc Document definitions and computations provided by llvm-bcanalyzer.
llvm-svn: 16044
2004-08-25 00:35:20 +00:00
Reid Spencer 44bc15064c Insert declarations for two new functions that support the dependent
libraries feature.

llvm-svn: 16043
2004-08-24 22:55:34 +00:00
Reid Spencer 7a0348b163 Run the compilation actions before we attempt linking work.
Correctly implement the dependent libraries feature so that linked bytecode
files automatically include any dependent libraries they specify.

llvm-svn: 16042
2004-08-24 22:54:32 +00:00
Reid Spencer 3aac4f7d88 Add the directory specified by LLVM_LIB_SEARCH_PATH to the list of
directories to be searched during linking.

llvm-svn: 16041
2004-08-24 22:53:13 +00:00
Reid Spencer f20d76d71e Add dependent library support for Stacker. It now inserts "stkr_runtime" as
a dependent library.

llvm-svn: 16040
2004-08-24 22:52:01 +00:00
Reid Spencer db0bdd69f5 Add a function that gets just the dependent libraries from a bytecode file.
Doxygenify comments.

llvm-svn: 16039
2004-08-24 22:49:07 +00:00
Reid Spencer ce9b84a6af Provide a method for wholesale extraction of the dependent libraries.
llvm-svn: 16038
2004-08-24 22:47:39 +00:00
Reid Spencer 79725deeb0 Add a wrapper for extraction of the dependent libraries from a bytecode
file.

llvm-svn: 16037
2004-08-24 22:46:20 +00:00
Reid Spencer f341d29514 Rearrange output a little to make it nicer.
llvm-svn: 16036
2004-08-24 22:45:32 +00:00
Chris Lattner 7bf499c040 Add some details
llvm-svn: 16035
2004-08-24 18:53:39 +00:00
Reid Spencer 7c8d658efc Added BURS.
llvm-svn: 16034
2004-08-24 18:34:10 +00:00
Reid Spencer 8d86dd6453 Get rid of error messages from CommandLine because -time-passes was
defined twice. We make use of the new TimePassesIsEnabled global boolean
value from Pass.h to access the value.

llvm-svn: 16033
2004-08-24 17:54:26 +00:00