oota-llvm.git
17 years agoMake the text of this file a little more useful.
Reid Spencer [Thu, 2 Sep 2004 22:49:27 +0000 (22:49 +0000)]
Make the text of this file a little more useful.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16150 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDon't just assume that either uint64_t or u_int64_t is available. Instead,
Reid Spencer [Thu, 2 Sep 2004 21:38:24 +0000 (21:38 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16149 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange the way we choose a free register: instead of picking the first
Alkis Evlogimenos [Thu, 2 Sep 2004 21:24:33 +0000 (21:24 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16148 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange the way we choose a free register: instead of picking the first
Alkis Evlogimenos [Thu, 2 Sep 2004 21:23:32 +0000 (21:23 +0000)]
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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16147 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdded a check for u_int64_t, which is used by Interix.
John Criswell [Thu, 2 Sep 2004 18:44:44 +0000 (18:44 +0000)]
Added a check for u_int64_t, which is used by Interix.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16145 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdded u_int64_t because some systems use that instead of uint64_t.
John Criswell [Thu, 2 Sep 2004 18:41:30 +0000 (18:41 +0000)]
Added u_int64_t because some systems use that instead of uint64_t.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16144 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoWe don't need to sort the added vector as unhandled intervals are
Alkis Evlogimenos [Thu, 2 Sep 2004 18:00:38 +0000 (18:00 +0000)]
We don't need to sort the added vector as unhandled intervals are
stored in a binary heap.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16143 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoConvert remaining X-Form and Pseudo instructions over to asm writer
Nate Begeman [Thu, 2 Sep 2004 08:13:00 +0000 (08:13 +0000)]
Convert remaining X-Form and Pseudo instructions over to asm writer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16142 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPull in definition of std::unary_function.
Alkis Evlogimenos [Thu, 2 Sep 2004 03:24:45 +0000 (03:24 +0000)]
Pull in definition of std::unary_function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16140 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUnbreak build
Brian Gaeke [Thu, 2 Sep 2004 03:24:08 +0000 (03:24 +0000)]
Unbreak build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16139 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoBack to compiling land for v8
Brian Gaeke [Thu, 2 Sep 2004 02:37:43 +0000 (02:37 +0000)]
Back to compiling land for v8

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16138 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChanges For Bug 352
Reid Spencer [Wed, 1 Sep 2004 22:55:40 +0000 (22:55 +0000)]
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/.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoBe a bit more efficient when processing the active and inactive
Alkis Evlogimenos [Wed, 1 Sep 2004 22:52:29 +0000 (22:52 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16136 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoGive a better assertion if we see a use before a def.
Alkis Evlogimenos [Wed, 1 Sep 2004 22:34:52 +0000 (22:34 +0000)]
Give a better assertion if we see a use before a def.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16135 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake sure <cassert> is included for platforms that don't include it via
Reid Spencer [Wed, 1 Sep 2004 20:36:15 +0000 (20:36 +0000)]
Make sure <cassert> is included for platforms that don't include it via
other header files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16134 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomkdtemp doesn't exist on Cygwin. Use tempnam & mkdir instead.
Reid Spencer [Wed, 1 Sep 2004 20:29:35 +0000 (20:29 +0000)]
mkdtemp doesn't exist on Cygwin. Use tempnam & mkdir instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16133 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake CommandLine prefix error output with the name of the program.
Reid Spencer [Wed, 1 Sep 2004 04:41:28 +0000 (04:41 +0000)]
Make CommandLine prefix error output with the name of the program.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16129 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitial commit for platform independent system configuration support.
Reid Spencer [Tue, 31 Aug 2004 18:13:52 +0000 (18:13 +0000)]
Initial commit for platform independent system configuration support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16128 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for FreeBSD
Reid Spencer [Tue, 31 Aug 2004 18:09:35 +0000 (18:09 +0000)]
Add support for FreeBSD

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16127 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for Interix and FreeBSD
Reid Spencer [Tue, 31 Aug 2004 18:03:23 +0000 (18:03 +0000)]
Add support for Interix and FreeBSD

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16126 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoActually define PreventCoreFiles in the sys namespace.
Reid Spencer [Tue, 31 Aug 2004 17:53:41 +0000 (17:53 +0000)]
Actually define PreventCoreFiles in the sys namespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16125 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a new abstraction, SysConfig for platform independent system
Reid Spencer [Tue, 31 Aug 2004 17:43:29 +0000 (17:43 +0000)]
Add a new abstraction, SysConfig for platform independent system
configuration calls. Right now this just contains PreventCoreFiles so that
bugpoint can by platform independent.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16124 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMinor code clarity changes.
Alkis Evlogimenos [Tue, 31 Aug 2004 17:39:15 +0000 (17:39 +0000)]
Minor code clarity changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16123 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a "test" botch.
Reid Spencer [Tue, 31 Aug 2004 14:20:36 +0000 (14:20 +0000)]
Fix a "test" botch.
Alphabetize the platform list
Install some AC_MSG_CHECKING/AC_MSG_RESULT pairs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16122 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoconvert M and MD form instructions to generated asm writer
Nate Begeman [Tue, 31 Aug 2004 02:28:08 +0000 (02:28 +0000)]
convert M and MD form instructions to generated asm writer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16121 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRecognize Interix systems as if they were SunOS and make sure we don't
Reid Spencer [Tue, 31 Aug 2004 01:34:10 +0000 (01:34 +0000)]
Recognize Interix systems as if they were SunOS and make sure we don't
attempt to configure for "Unknown" system types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16120 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove the GetTemporaryDirectory function from "generic Unix" to platform
Reid Spencer [Mon, 30 Aug 2004 21:46:55 +0000 (21:46 +0000)]
Move the GetTemporaryDirectory function from "generic Unix" to platform
specific.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16119 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd inclusion of assert.h
Reid Spencer [Mon, 30 Aug 2004 16:03:54 +0000 (16:03 +0000)]
Add inclusion of assert.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16118 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitial commit of a configuration file for compiling C++ programs with
Reid Spencer [Mon, 30 Aug 2004 06:32:24 +0000 (06:32 +0000)]
Initial commit of a configuration file for compiling C++ programs with
the file name pattern *.cpp

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16117 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement the "setIncludePaths" and "setSymbolDefines" interface methods.
Reid Spencer [Mon, 30 Aug 2004 06:29:06 +0000 (06:29 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16116 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPass lists of -I and -D options through to the Compiler Driver.
Reid Spencer [Mon, 30 Aug 2004 06:27:32 +0000 (06:27 +0000)]
Pass lists of -I and -D options through to the Compiler Driver.
Handle -g and -Wxxx for GCC compatibility

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16115 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a blurb about exploiting the use of external storage.
Reid Spencer [Mon, 30 Aug 2004 05:56:51 +0000 (05:56 +0000)]
Add a blurb about exploiting the use of external storage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16114 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove yet more instructions over to being printed by the generated asm writer
Nate Begeman [Mon, 30 Aug 2004 02:28:06 +0000 (02:28 +0000)]
Move yet more instructions over to being printed by the generated asm writer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16112 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAbbreviate the long descriptions which are now in docs/SystemLibrary.html.
Reid Spencer [Mon, 30 Aug 2004 02:03:51 +0000 (02:03 +0000)]
Abbreviate the long descriptions which are now in docs/SystemLibrary.html.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16111 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReduce the number of arguments in the instruction builder and make some
Reid Spencer [Mon, 30 Aug 2004 00:13:26 +0000 (00:13 +0000)]
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!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16110 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNeed to throw std::string not const char* if we want error messages to be
Reid Spencer [Mon, 30 Aug 2004 00:06:52 +0000 (00:06 +0000)]
Need to throw std::string not const char* if we want error messages to be
caught.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16109 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSynchronize documentation of configuration items and substitutions with
Reid Spencer [Sun, 29 Aug 2004 23:20:42 +0000 (23:20 +0000)]
Synchronize documentation of configuration items and substitutions with
current reality of llvmc implementation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16108 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoConvert A-Form instructions to auto-generated asm writer
Nate Begeman [Sun, 29 Aug 2004 22:45:13 +0000 (22:45 +0000)]
Convert A-Form instructions to auto-generated asm writer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16107 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRegister sizes should be specified in bits
Nate Begeman [Sun, 29 Aug 2004 22:03:40 +0000 (22:03 +0000)]
Register sizes should be specified in bits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16106 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImprovements to int->float cast code for PPC-64
Nate Begeman [Sun, 29 Aug 2004 22:02:43 +0000 (22:02 +0000)]
Improvements to int->float cast code for PPC-64

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16105 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMust link against new LLVMsystem library
Nate Begeman [Sun, 29 Aug 2004 22:01:44 +0000 (22:01 +0000)]
Must link against new LLVMsystem library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16104 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemoveFileOnSignal is now in sys:: namespace
Nate Begeman [Sun, 29 Aug 2004 22:01:17 +0000 (22:01 +0000)]
RemoveFileOnSignal is now in sys:: namespace

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16103 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPut this change back in after testing from Reid proved its innocence. getSpillSize...
Nate Begeman [Sun, 29 Aug 2004 22:00:24 +0000 (22:00 +0000)]
Put this change back in after testing from Reid proved its innocence.  getSpillSize now returns value in bits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16102 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate doxygen comment now that getSpillSize is supposed to return value in bits
Nate Begeman [Sun, 29 Aug 2004 21:59:26 +0000 (21:59 +0000)]
Update doxygen comment now that getSpillSize is supposed to return value in bits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16101 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a declaration of environ global for Darwin
Reid Spencer [Sun, 29 Aug 2004 20:10:07 +0000 (20:10 +0000)]
Add a declaration of environ global for Darwin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16100 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a missing header file
Reid Spencer [Sun, 29 Aug 2004 20:02:28 +0000 (20:02 +0000)]
Add a missing header file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16099 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd an assert to cature null Operands. It is better to catch it here than
Reid Spencer [Sun, 29 Aug 2004 19:37:59 +0000 (19:37 +0000)]
Add an assert to cature null Operands. It is better to catch it here than
to SIGSEGV in the bowels of isa<...> later.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16098 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSignals support has been moved to lib/System
Reid Spencer [Sun, 29 Aug 2004 19:36:34 +0000 (19:36 +0000)]
Signals support has been moved to lib/System

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16097 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdated to create a link needed for correct lib/System compilation.
Reid Spencer [Sun, 29 Aug 2004 19:35:28 +0000 (19:35 +0000)]
Updated to create a link needed for correct lib/System compilation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16096 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd lib/System ahead of lib/Support in case there are operating system
Reid Spencer [Sun, 29 Aug 2004 19:33:21 +0000 (19:33 +0000)]
Add lib/System ahead of lib/Support in case there are operating system
issues.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16095 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoLink with LLVMsystem.a for operating system independence.
Reid Spencer [Sun, 29 Aug 2004 19:31:19 +0000 (19:31 +0000)]
Link with LLVMsystem.a for operating system independence.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16094 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemoveFileOnErrorSignal is now in the llvm::sys namespace. Adjust
Reid Spencer [Sun, 29 Aug 2004 19:30:41 +0000 (19:30 +0000)]
RemoveFileOnErrorSignal is now in the llvm::sys namespace. Adjust
accordingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16093 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd the LLVMsystem.a library as it is now used for operating system
Reid Spencer [Sun, 29 Aug 2004 19:29:38 +0000 (19:29 +0000)]
Add the LLVMsystem.a library as it is now used for operating system
independence of the tool.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16092 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThe functions in Signal.h are now in the llvm::sys namespace - adjust
Reid Spencer [Sun, 29 Aug 2004 19:28:55 +0000 (19:28 +0000)]
The functions in Signal.h are now in the llvm::sys namespace - adjust

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16091 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd llvmc
Reid Spencer [Sun, 29 Aug 2004 19:27:34 +0000 (19:27 +0000)]
add llvmc

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16090 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoConvert llvmc to use the lib/System interface instead of directly
Reid Spencer [Sun, 29 Aug 2004 19:26:56 +0000 (19:26 +0000)]
Convert llvmc to use the lib/System interface instead of directly
using Unix operating system calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16089 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMove a warning comment to where it should have been in the first place.
Reid Spencer [Sun, 29 Aug 2004 19:25:54 +0000 (19:25 +0000)]
Move a warning comment to where it should have been in the first place.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16088 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoCorrect the vim: specification
Reid Spencer [Sun, 29 Aug 2004 19:24:53 +0000 (19:24 +0000)]
Correct the vim: specification

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16087 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInclude some additional header files.
Reid Spencer [Sun, 29 Aug 2004 19:24:20 +0000 (19:24 +0000)]
Include some additional header files.
Fix the banner length.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16086 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitial platform independent implementation of operating system concept
Reid Spencer [Sun, 29 Aug 2004 19:22:48 +0000 (19:22 +0000)]
Initial platform independent implementation of operating system concept
of "Signals" (cleanup after fatal errors).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16085 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitial commit of an platform-indepdendent implementation for the
Reid Spencer [Sun, 29 Aug 2004 19:20:41 +0000 (19:20 +0000)]
Initial commit of an platform-indepdendent implementation for the
"Program" operating system concept (find and execute programs).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16084 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPut the lib/System interface functions in llvm::sys namespace.
Reid Spencer [Sun, 29 Aug 2004 19:19:07 +0000 (19:19 +0000)]
Put the lib/System interface functions in llvm::sys namespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16083 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoCreate a link from $BUILD_OBJ_ROOT/lib/System/platform to
Reid Spencer [Sun, 29 Aug 2004 19:18:05 +0000 (19:18 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16082 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement the following missing functionality in the PPC backend:
Nate Begeman [Sun, 29 Aug 2004 08:19:32 +0000 (08:19 +0000)]
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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16081 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitial commit of the platform agnostic interface to finding and executing
Reid Spencer [Sun, 29 Aug 2004 05:29:35 +0000 (05:29 +0000)]
Initial commit of the platform agnostic interface to finding and executing
programs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16080 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a function to remove whole directorys on fatal signal.
Reid Spencer [Sun, 29 Aug 2004 05:27:15 +0000 (05:27 +0000)]
Add a function to remove whole directorys on fatal signal.
Doxygenify function comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16079 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRevise the design of the Path concept per peer review. Too many changes to
Reid Spencer [Sun, 29 Aug 2004 05:24:01 +0000 (05:24 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16078 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove dead code.
Alkis Evlogimenos [Sat, 28 Aug 2004 22:43:31 +0000 (22:43 +0000)]
Remove dead code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16077 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNow that LiveIntervals::addIntervalsForSpills is fixed, do not require
Alkis Evlogimenos [Fri, 27 Aug 2004 19:00:29 +0000 (19:00 +0000)]
Now that LiveIntervals::addIntervalsForSpills is fixed, do not require
LiveVariables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16076 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoOnly update LiveVariables if it is available. addIntervalsForSpills
Alkis Evlogimenos [Fri, 27 Aug 2004 18:59:22 +0000 (18:59 +0000)]
Only update LiveVariables if it is available. addIntervalsForSpills
runs after the initial run of the live interval analysis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16075 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoBack out this change as it broke the build last night. This should be
Alkis Evlogimenos [Fri, 27 Aug 2004 18:01:21 +0000 (18:01 +0000)]
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...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16074 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoBack out change to divide getSpillSize by 8 until I figure out why it breaks x86...
Nate Begeman [Fri, 27 Aug 2004 16:48:24 +0000 (16:48 +0000)]
Back out change to divide getSpillSize by 8 until I figure out why it breaks x86, which has register sizes in bits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16073 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a typo in the bytecode format documentation
Nate Begeman [Fri, 27 Aug 2004 07:59:37 +0000 (07:59 +0000)]
Fix a typo in the bytecode format documentation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16072 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThe linear scan variants do not require the LiveVariables analysis.
Alkis Evlogimenos [Fri, 27 Aug 2004 04:51:13 +0000 (04:51 +0000)]
The linear scan variants do not require the LiveVariables analysis.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16071 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRegister sizes are in bits, not bytes
Nate Begeman [Fri, 27 Aug 2004 04:28:10 +0000 (04:28 +0000)]
Register sizes are in bits, not bytes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16070 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd getLastBlock member. This is useful when growing a densemap keyed
Alkis Evlogimenos [Fri, 27 Aug 2004 04:02:35 +0000 (04:02 +0000)]
Add getLastBlock member. This is useful when growing a densemap keyed
on MachineBasicBlocks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16069 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd MachineBasicBlock2IndexFunctor. This is useful for densemaps from
Alkis Evlogimenos [Fri, 27 Aug 2004 04:00:26 +0000 (04:00 +0000)]
Add MachineBasicBlock2IndexFunctor. This is useful for densemaps from
MachineBasicBlocks to an arbitrary type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16068 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd size member function.
Alkis Evlogimenos [Fri, 27 Aug 2004 03:58:31 +0000 (03:58 +0000)]
Add size member function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16067 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd more content.
Reid Spencer [Fri, 27 Aug 2004 02:08:04 +0000 (02:08 +0000)]
Add more content.

This isn't in reviewable shape yet, unless you're curious.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16066 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoBug 430 Fixed.
Reid Spencer [Fri, 27 Aug 2004 00:48:26 +0000 (00:48 +0000)]
Bug 430 Fixed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16065 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoCorrectly compute the number of compaction tables.
Reid Spencer [Fri, 27 Aug 2004 00:43:51 +0000 (00:43 +0000)]
Correctly compute the number of compaction tables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16064 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPrevent an empty compaction table from being written to the bytecode file.
Reid Spencer [Fri, 27 Aug 2004 00:38:44 +0000 (00:38 +0000)]
Prevent an empty compaction table from being written to the bytecode file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16063 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd the CompactionTableIsEmpty function so that we can determine if a
Reid Spencer [Thu, 26 Aug 2004 22:32:00 +0000 (22:32 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16062 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse newly added API in MRegisterInfo and don't expose the allocatable
Alkis Evlogimenos [Thu, 26 Aug 2004 22:23:32 +0000 (22:23 +0000)]
Use newly added API in MRegisterInfo and don't expose the allocatable
register set anymore. Its users now use the MRegisterInfo API.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16061 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse newly added API in MRegisterInfo.
Alkis Evlogimenos [Thu, 26 Aug 2004 22:22:38 +0000 (22:22 +0000)]
Use newly added API in MRegisterInfo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16060 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd getAllocatableSet() function.
Alkis Evlogimenos [Thu, 26 Aug 2004 22:21:04 +0000 (22:21 +0000)]
Add getAllocatableSet() function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16059 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoProvide some meta tags for this document.
Reid Spencer [Thu, 26 Aug 2004 20:44:00 +0000 (20:44 +0000)]
Provide some meta tags for this document.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16058 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd the default table related styles
Reid Spencer [Thu, 26 Aug 2004 20:43:21 +0000 (20:43 +0000)]
Add the default table related styles

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16057 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDocument the rational for the #include hierarchy.
Reid Spencer [Thu, 26 Aug 2004 18:52:52 +0000 (18:52 +0000)]
Document the rational for the #include hierarchy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16056 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a typo.
Reid Spencer [Thu, 26 Aug 2004 07:43:33 +0000 (07:43 +0000)]
Fix a typo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16055 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFirst cut at a README for lib/System explaining the #inclusion rules and
Reid Spencer [Thu, 26 Aug 2004 07:41:41 +0000 (07:41 +0000)]
First cut at a README for lib/System explaining the #inclusion rules and
design criteria.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16054 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a README explaining the intended content of this directory.
Reid Spencer [Thu, 26 Aug 2004 05:58:20 +0000 (05:58 +0000)]
Add a README explaining the intended content of this directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16053 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd default index functor (an identity functor). You could use a
Alkis Evlogimenos [Thu, 26 Aug 2004 03:37:28 +0000 (03:37 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16052 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPrevious checkin broke printf(%a) support for fp constants-- re-fix it.
Brian Gaeke [Wed, 25 Aug 2004 19:37:26 +0000 (19:37 +0000)]
Previous checkin broke printf(%a) support for fp constants-- re-fix it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16051 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNew version of Bill Wendling's PR33 patch.
Brian Gaeke [Wed, 25 Aug 2004 19:00:42 +0000 (19:00 +0000)]
New version of Bill Wendling's PR33 patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16050 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix documentation.
Reid Spencer [Wed, 25 Aug 2004 06:23:45 +0000 (06:23 +0000)]
Fix documentation.
Make the library name LLVMsystem instead of just system so as to not
to be confused with other "system" libraries.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16049 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoInitial implementation of the Path operating system concept.
Reid Spencer [Wed, 25 Aug 2004 06:20:07 +0000 (06:20 +0000)]
Initial implementation of the Path operating system concept.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16048 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoLicense for this library.
Reid Spencer [Wed, 25 Aug 2004 00:48:02 +0000 (00:48 +0000)]
License for this library.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16047 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate to include tools/llvmc and lib/System as having additional copyright
Reid Spencer [Wed, 25 Aug 2004 00:45:35 +0000 (00:45 +0000)]
Update to include tools/llvmc and lib/System as having additional copyright
licenses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16046 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoLicense file for llvmc.
Reid Spencer [Wed, 25 Aug 2004 00:41:06 +0000 (00:41 +0000)]
License file for llvmc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16045 91177308-0d34-0410-b5e6-96231b3b80d8