oota-llvm.git
19 years agoAdd HAVE_SBRK
Reid Spencer [Sat, 1 Jan 2005 18:16:16 +0000 (18:16 +0000)]
Add HAVE_SBRK

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

19 years agoIgnore some files
Reid Spencer [Sat, 1 Jan 2005 18:14:18 +0000 (18:14 +0000)]
Ignore some files

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

19 years agoThis is a bulk commit that implements the following primary improvements:
Chris Lattner [Sat, 1 Jan 2005 16:22:27 +0000 (16:22 +0000)]
This is a bulk commit that implements the following primary improvements:
  * We can now fold cast instructions into select instructions that
    have at least one constant operand.
  * We now optimize expressions more aggressively based on bits that are
    known to be zero.  These optimizations occur a lot in code that uses
    bitfields even in simple ways.
  * We now turn more cast-cast sequences into AND instructions.  Before we
    would only do this if it if all types were unsigned.  Now only the
    middle type needs to be unsigned (guaranteeing a zero extend).
  * We transform sign extensions into zero extensions in several cases.

This corresponds to these test/Regression/Transforms/InstCombine testcases:
  2004-11-22-Missed-and-fold.ll
  and.ll: test28-29
  cast.ll: test21-24
  and-or-and.ll
  cast-cast-to-and.ll
  zeroext-and-reduce.ll

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

19 years agoNew testcases that we should combine.
Chris Lattner [Sat, 1 Jan 2005 16:14:46 +0000 (16:14 +0000)]
New testcases that we should combine.

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

19 years agoNew testcase for common bitfield manipulation instruction sequences.
Chris Lattner [Sat, 1 Jan 2005 16:14:18 +0000 (16:14 +0000)]
New testcase for common bitfield manipulation instruction sequences.

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

19 years agoAdd a bunch of tests for cases that should be eliminated.
Chris Lattner [Sat, 1 Jan 2005 16:13:43 +0000 (16:13 +0000)]
Add a bunch of tests for cases that should be eliminated.

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

19 years agoAdd a bunch of tests for ANDs that should be eliminated.
Chris Lattner [Sat, 1 Jan 2005 16:13:19 +0000 (16:13 +0000)]
Add a bunch of tests for ANDs that should be eliminated.

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

19 years agoThis now works.
Chris Lattner [Sat, 1 Jan 2005 16:12:52 +0000 (16:12 +0000)]
This now works.

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

19 years agoFix a FIXME: Select instructions on longs were miscompiled.
Chris Lattner [Sat, 1 Jan 2005 16:10:12 +0000 (16:10 +0000)]
Fix a FIXME: Select instructions on longs were miscompiled.

While we're at it, improve codegen of select instructions.  For this
testcase:

int %test(bool %C, int %A, int %B) {
  %D = select bool %C, int %A, int %B
  ret int %D
}

We used to generate this code:

_test:
        cmpwi cr0, r3, 0
        bne .LBB_test_2 ;
.LBB_test_1:    ;
        b .LBB_test_3   ;
.LBB_test_2:    ;
        or r5, r4, r4
.LBB_test_3:    ;
        or r3, r5, r5
        blr

Now we emit:

_test:
        cmpwi cr0, r3, 0
        bne .LBB_test_2 ;
.LBB_test_1:    ;
        or r4, r5, r5
.LBB_test_2:    ;
        or r3, r4, r4
        blr

-Chris

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

19 years agoSubstantially improve the code generated by non-folded setcc instructions.
Chris Lattner [Sat, 1 Jan 2005 16:06:57 +0000 (16:06 +0000)]
Substantially improve the code generated by non-folded setcc instructions.
In particular, instead of compiling this:

bool %test(int %A, int %B) {
  %C = setlt int %A, %B
  ret bool %C
}

to this:

test:
        save %sp, -96, %sp
        subcc %i0, %i1, %g0
        bl .LBBtest_1   !
        nop
        ba .LBBtest_2   !
        nop
.LBBtest_1:     !
        or %g0, 1, %i0
        ba .LBBtest_3   !
        nop
.LBBtest_2:     !
        or %g0, 0, %i0
        ba .LBBtest_3   !
        nop
.LBBtest_3:     !
        restore %g0, %g0, %g0
        retl
        nop

We now compile it to this:

test:
        save %sp, -96, %sp
        subcc %i0, %i1, %g0
        or %g0, 1, %i0
        bl .LBBtest_2   !
        nop
.LBBtest_1:     !
        or %g0, %g0, %i0
.LBBtest_2:     !
        restore %g0, %g0, %g0
        retl
        nop

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

19 years agoImplement SimplifyCFG/DeadSetCC.ll
Chris Lattner [Sat, 1 Jan 2005 16:02:12 +0000 (16:02 +0000)]
Implement SimplifyCFG/DeadSetCC.ll

SimplifyCFG is one of those passes that we use for final cleanup: it should
not rely on other passes to clean up its garbage.  This fixes the "why are
trivially dead setcc's in the output of gccas" problem.

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

19 years agoAdd new test to make sure simplifycfg doesn't leave around trivially
Chris Lattner [Sat, 1 Jan 2005 16:00:56 +0000 (16:00 +0000)]
Add new test to make sure simplifycfg doesn't leave around trivially
dead instructions.

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

19 years agoAllow getZeroExtend and getSignExtend to work with boolean inputs.
Chris Lattner [Sat, 1 Jan 2005 15:59:57 +0000 (15:59 +0000)]
Allow getZeroExtend and getSignExtend to work with boolean inputs.

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

19 years agoAdd a useful accessor
Chris Lattner [Sat, 1 Jan 2005 15:58:55 +0000 (15:58 +0000)]
Add a useful accessor

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

19 years agoAdd two helper functions.
Chris Lattner [Sat, 1 Jan 2005 15:58:41 +0000 (15:58 +0000)]
Add two helper functions.

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

19 years agoUpdate to autoconf 2.59 standards.
Reid Spencer [Sat, 1 Jan 2005 09:26:55 +0000 (09:26 +0000)]
Update to autoconf 2.59 standards.

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

19 years agoCorrect the conditional test for non-portable tools so that it will
Reid Spencer [Fri, 31 Dec 2004 22:56:14 +0000 (22:56 +0000)]
Correct the conditional test for non-portable tools so that it will
correctly omit them for non-Unix operating systems.

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

19 years agoFor PR351:
Reid Spencer [Fri, 31 Dec 2004 22:54:28 +0000 (22:54 +0000)]
For PR351:
Make LLVM_ON_UNIX and LLVM_ON_WIN32 available in the makefiles

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

19 years agoDescribe both objdir==srcdir and objdir!=srcdir methods of building LLVM
Reid Spencer [Fri, 31 Dec 2004 19:48:59 +0000 (19:48 +0000)]
Describe both objdir==srcdir and objdir!=srcdir methods of building LLVM
libraries and tools. Thanks to Henrik Bach for this suggestion.

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

19 years agoWhere do these tabs keep coming from???
Jeff Cohen [Fri, 31 Dec 2004 19:03:31 +0000 (19:03 +0000)]
Where do these tabs keep coming from???

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

19 years agoMostly cleanup, but also some bug fixes, for win32/Path.cpp
Jeff Cohen [Fri, 31 Dec 2004 19:01:08 +0000 (19:01 +0000)]
Mostly cleanup, but also some bug fixes, for win32/Path.cpp

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

19 years agoFix a compilation error for the case where mallinfo() is not available.
Reid Spencer [Fri, 31 Dec 2004 05:53:27 +0000 (05:53 +0000)]
Fix a compilation error for the case where mallinfo() is not available.

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

19 years agoFor PR351:
Reid Spencer [Fri, 31 Dec 2004 05:49:15 +0000 (05:49 +0000)]
For PR351:
* lib/System depends on sbrk(3), make sure we check for it.

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

19 years agoGet rid of those nasty tabs...
Jeff Cohen [Fri, 31 Dec 2004 05:07:26 +0000 (05:07 +0000)]
Get rid of those nasty tabs...

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

19 years agoBring win32/Path.cpp up to date with respect to Unix/Path.cpp
Jeff Cohen [Fri, 31 Dec 2004 04:39:07 +0000 (04:39 +0000)]
Bring win32/Path.cpp up to date with respect to Unix/Path.cpp

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

19 years ago* Add missing libraries: Linker, Archive, SparcV8
Reid Spencer [Fri, 31 Dec 2004 00:13:14 +0000 (00:13 +0000)]
* Add missing libraries: Linker, Archive, SparcV8
* Make library descriptions consistently lower case.

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

19 years ago* Don't include weak definitions as a definition
Reid Spencer [Thu, 30 Dec 2004 23:13:12 +0000 (23:13 +0000)]
* Don't include weak definitions as a definition
* Make subordinate libraries presented with a vertical list instead of all
  listed on a single line.

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

19 years agoAdd a section on library dependencies now that GenLibDeps.html is written.
Reid Spencer [Thu, 30 Dec 2004 23:12:04 +0000 (23:12 +0000)]
Add a section on library dependencies now that GenLibDeps.html is written.

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

19 years agoA Perl script to generate an HTML definition list containing the LLVM
Reid Spencer [Thu, 30 Dec 2004 23:07:56 +0000 (23:07 +0000)]
A Perl script to generate an HTML definition list containing the LLVM
library dependencies, for documentation purposes.

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

19 years agoFix the help documentation to not imply multiple archive files can be
Reid Spencer [Thu, 30 Dec 2004 17:51:57 +0000 (17:51 +0000)]
Fix the help documentation to not imply multiple archive files can be
processed.

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

19 years agoFor PR351:
Reid Spencer [Thu, 30 Dec 2004 05:36:08 +0000 (05:36 +0000)]
For PR351:
* Place a try/catch block around the entire tool to Make sure std::string
  exceptions are caught and printed before exiting the tool.
* Make sure we catch unhandled exceptions at the top level so that we don't
  abort with a useless message but indicate than an unhandled exception was
  generated.

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

19 years agoFix MINGW compilation errors
Jeff Cohen [Thu, 30 Dec 2004 03:02:31 +0000 (03:02 +0000)]
Fix MINGW compilation errors

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

19 years ago* Fix a bug in an m4 macro that used an incorrect test operator
Reid Spencer [Wed, 29 Dec 2004 07:07:57 +0000 (07:07 +0000)]
* Fix a bug in an m4 macro that used an incorrect test operator
* Add CAN_DLOPEN_SELF so we can determine if dlopen(0) will open the
  program or not.
* Correct a warning messages to be a little more specific on what it checks

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

19 years agoFix a Bourne Shell syntax error in a test
Reid Spencer [Wed, 29 Dec 2004 06:59:36 +0000 (06:59 +0000)]
Fix a Bourne Shell syntax error in a test

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

19 years agoFix one of the names to not have a . in front of it.
Reid Spencer [Wed, 29 Dec 2004 05:47:04 +0000 (05:47 +0000)]
Fix one of the names to not have a . in front of it.

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

19 years agoBug fixed
Chris Lattner [Wed, 29 Dec 2004 04:39:50 +0000 (04:39 +0000)]
Bug fixed

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

19 years agoFix PR491 and testcase Transforms/DeadStoreElimination/2004-12-28-PartialStore.ll
Chris Lattner [Wed, 29 Dec 2004 04:36:02 +0000 (04:36 +0000)]
Fix PR491 and testcase Transforms/DeadStoreElimination/2004-12-28-PartialStore.ll

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

19 years agoAdd a comment, add a new testcase
Chris Lattner [Wed, 29 Dec 2004 04:35:30 +0000 (04:35 +0000)]
Add a comment, add a new testcase

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

19 years agoNew testcase for PR491
Chris Lattner [Wed, 29 Dec 2004 04:27:26 +0000 (04:27 +0000)]
New testcase for PR491

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

19 years agoBug fixed
Chris Lattner [Wed, 29 Dec 2004 04:03:23 +0000 (04:03 +0000)]
Bug fixed

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

19 years agoFix PR490
Chris Lattner [Wed, 29 Dec 2004 04:00:09 +0000 (04:00 +0000)]
Fix PR490
Fix testcase CodeGen/CBackend/2004-12-28-LogicalConstantExprs.ll

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

19 years agonew testcase for PR490
Chris Lattner [Wed, 29 Dec 2004 03:57:25 +0000 (03:57 +0000)]
new testcase for PR490

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

19 years agoXFAIL this test everywhere.
Reid Spencer [Wed, 29 Dec 2004 03:17:30 +0000 (03:17 +0000)]
XFAIL this test everywhere.

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

19 years agoXFAIL this everywhere, the CFE doesn't support bitfield initialization.
Reid Spencer [Wed, 29 Dec 2004 03:16:40 +0000 (03:16 +0000)]
XFAIL this everywhere, the CFE doesn't support bitfield initialization.

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

19 years agoRemove potential platform portability issue with size of "int".
Reid Spencer [Wed, 29 Dec 2004 01:20:24 +0000 (01:20 +0000)]
Remove potential platform portability issue with size of "int".

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

19 years agoCorrect the name of the variable for the LLVM examples directory so that
Reid Spencer [Tue, 28 Dec 2004 07:59:22 +0000 (07:59 +0000)]
Correct the name of the variable for the LLVM examples directory so that
parallel builds don't attempt to create it twice.

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

19 years agoMake the x86_64 target names match between def and use. Thanks Misha.
Reid Spencer [Tue, 28 Dec 2004 07:56:14 +0000 (07:56 +0000)]
Make the x86_64 target names match between def and use. Thanks Misha.

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

19 years agoMake the 64-bit x86 target named "x86_64" instead of "AMD64".
Reid Spencer [Tue, 28 Dec 2004 06:34:11 +0000 (06:34 +0000)]
Make the 64-bit x86 target named "x86_64" instead of "AMD64".

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

19 years agoAdd a note about registering the backend so it's available in LLC and LLI
Misha Brukman [Mon, 27 Dec 2004 19:05:16 +0000 (19:05 +0000)]
Add a note about registering the backend so it's available in LLC and LLI

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

19 years agoBring VS projects up to date with respect to recent changes
Jeff Cohen [Mon, 27 Dec 2004 16:49:34 +0000 (16:49 +0000)]
Bring VS projects up to date with respect to recent changes

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

19 years agoDon't create symbolic links for lib/System any more. It doesn't need them.
Reid Spencer [Mon, 27 Dec 2004 09:33:46 +0000 (09:33 +0000)]
Don't create symbolic links for lib/System any more. It doesn't need them.

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

19 years agoClean up some autoconf cruft
Reid Spencer [Mon, 27 Dec 2004 08:51:55 +0000 (08:51 +0000)]
Clean up some autoconf cruft
* Make the source detection use a file unique to Stacker
* Configure Makefile.common.in with AC_CONFIG_FILES not AC_CONFIG_MAKEFILE
* Use new autoconf format for invoking AC_OUTPUT

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

19 years agoMake it possible to reconfigure a project as well as just LLVM main dir.
Reid Spencer [Mon, 27 Dec 2004 08:50:27 +0000 (08:50 +0000)]
Make it possible to reconfigure a project as well as just LLVM main dir.

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

19 years agoFix a bug that made the nightly tester *really* slow. During changes for
Reid Spencer [Mon, 27 Dec 2004 08:03:04 +0000 (08:03 +0000)]
Fix a bug that made the nightly tester *really* slow. During changes for
portability, the --track-space option was inadvertently ignored. This patch
fixes that so that sys::Process::GetMallocUsage() is only invoked if the
--track-spaces option is given. Apparently the mallinfo() call that
GetMallocUsage() uses is *very* slow, especially when processing very large
modules like projects/llvm-test/MultiSource/Applications/kimwitu++.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:18:02 +0000 (06:18 +0000)]
For PR351:
* sys::PreventCoreFiles -> sys::Process::PreventCoreFiles

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:17:50 +0000 (06:17 +0000)]
For PR351:
* Ensure #includes are wrapped with appropriate HAVE_ guards
* Account for variations in time.h and sys/time.h inclusion.
* Add macros for getting wait(2) exit status correctly (per autoconf sugg.)
* Implement ThrowErrno in terms of strerror_r, strerror or none based on
  what is available on the platform.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:17:39 +0000 (06:17 +0000)]
For PR351:
* Remove redundant #includes that are now in Unix.h

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:17:27 +0000 (06:17 +0000)]
For PR351:
* Move implementation of sys::PreventCoreFiles function to this file from
  the now defunct SysConfig abstraction.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:17:15 +0000 (06:17 +0000)]
For PR351:
* Ensure #includes are wrapped with appropriate HAVE_ guards
* Ensure variations in "dirent" structure are accounted for.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:17:03 +0000 (06:17 +0000)]
For PR351:
* Ensure #includes are wrapped with appropriate HAVE_ guards
* Consolidate implementation from operating system specific directory.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:16:52 +0000 (06:16 +0000)]
For PR351:
* Ensure #includes are wrapped with appropriate HAVE_ guards

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:16:38 +0000 (06:16 +0000)]
For PR351:
* Consolidate implementation for Unix systems into Unix/TimeValue.cpp
* Avoid use of symbolic link to #include platform-specific implementation.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:16:25 +0000 (06:16 +0000)]
For PR351:
* Consolidate implementation for Unix systems into Unix/Program.cpp
* Avoid use of symbolic link to #include platform-specific implementation.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:16:11 +0000 (06:16 +0000)]
For PR351:
* Consolidate implementation for Unix systems into Unix/Signals.cpp
* Avoid use of symbolic link to #include platform-specific implementation.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:15:57 +0000 (06:15 +0000)]
For PR351:
* Consolidate implementation for Unix systems into Unix/Memory.cpp
* Avoid use of symbolic link to #include platform-specific implementation.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:15:43 +0000 (06:15 +0000)]
For PR351:
* Consolidate implementation for Unix systems into Unix/MappedFile.cpp
* Avoid use of symbolic link to #include platform-specific implementation.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:15:29 +0000 (06:15 +0000)]
For PR351:
* Consolidate implementation for Unix systems into Unix/Process.cpp
* Avoid use of symbolic link to #include platform-specific implementation.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:15:14 +0000 (06:15 +0000)]
For PR351:
SysConf abstraction was pointless because it had a single function in it that
pertained only to the current process. So merge it into the Process abstraction
and remove the files completely.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:15:02 +0000 (06:15 +0000)]
For PR351:
* Add checks for sterror and strerror_r functions
* Add check to determine if /dev/zero is needed for allocating RWX memory.

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

19 years agoFor PR351:
Reid Spencer [Mon, 27 Dec 2004 06:14:48 +0000 (06:14 +0000)]
For PR351:
Provide a check to determine if /dev/zero is needed for AllocateRWX function.

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

19 years agoOops, reverse the logic on a test for WITH_LLVMGCCDIR to make it define
Reid Spencer [Mon, 27 Dec 2004 03:15:28 +0000 (03:15 +0000)]
Oops, reverse the logic on a test for WITH_LLVMGCCDIR to make it define
the path names correctly.

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

19 years agoProvide a value for HAVE_MMAP_ANONYMOUS variable, for consistency with
Reid Spencer [Mon, 27 Dec 2004 03:14:43 +0000 (03:14 +0000)]
Provide a value for HAVE_MMAP_ANONYMOUS variable, for consistency with
other #define's.

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

19 years agoDescribe the --with-llvmgccdir option to configure.
Reid Spencer [Sun, 26 Dec 2004 05:47:26 +0000 (05:47 +0000)]
Describe the --with-llvmgccdir option to configure.

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

19 years agoRevert the last patch so that the LLVMGCCDIR environment variable is
Reid Spencer [Sun, 26 Dec 2004 05:21:13 +0000 (05:21 +0000)]
Revert the last patch so that the LLVMGCCDIR environment variable is
still viable and will make use of the resurrected --with-llvmgccdir
configure option.

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

19 years agoFor PR351:
Reid Spencer [Sat, 25 Dec 2004 07:31:29 +0000 (07:31 +0000)]
For PR351:
* Make sure all headers used by lib/System have checks
* Use "standard" autoconf checks for certain problematic headers
For PR432:
* Resurrect --with-llvmgccdir so a specific llvm-gcc/llvm-g++ installation
  can be specified.

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

19 years agomingw doesn't support the official debug API.
Jeff Cohen [Sat, 25 Dec 2004 04:50:17 +0000 (04:50 +0000)]
mingw doesn't support the official debug API.

Old versions of the C runtime somehow get loaded into the process.  Make
sure they aren't searched for symbols.

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

19 years agoGet VC++ building again
Jeff Cohen [Fri, 24 Dec 2004 16:26:47 +0000 (16:26 +0000)]
Get VC++ building again

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

19 years agoIgnore the autom4te.cache directoy.
Reid Spencer [Fri, 24 Dec 2004 15:11:23 +0000 (15:11 +0000)]
Ignore the autom4te.cache directoy.

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

19 years agoMake sure llvm-g++ gets the right path for the llvm tools.
Reid Spencer [Fri, 24 Dec 2004 14:47:34 +0000 (14:47 +0000)]
Make sure llvm-g++ gets the right path for the llvm tools.

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

19 years agoEliminate use of ltdl.c when doing a VC++ build. Because libtool isn't used,
Jeff Cohen [Fri, 24 Dec 2004 07:57:09 +0000 (07:57 +0000)]
Eliminate use of ltdl.c when doing a VC++ build.  Because libtool isn't used,
ltdl's LGPL license would infect all of LLVM.

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

19 years agoMake the symbolic link using the correct variable!
Reid Spencer [Fri, 24 Dec 2004 06:49:16 +0000 (06:49 +0000)]
Make the symbolic link using the correct variable!

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

19 years agoRemove references to LLVMGCCDIR because it was only used to provide a
Reid Spencer [Fri, 24 Dec 2004 06:32:54 +0000 (06:32 +0000)]
Remove references to LLVMGCCDIR because it was only used to provide a
value for the --with-llvmgccdir configure option which is no longer
supported.

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

19 years agoFor PR351:
Reid Spencer [Fri, 24 Dec 2004 06:29:42 +0000 (06:29 +0000)]
For PR351:
Merge implementations of isValid and GetTemporaryDirectory into this file. There
is not any point having the operating system specific files for such little
variation between the Unix family of systems.

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

19 years agoFor PR351:
Reid Spencer [Fri, 24 Dec 2004 06:29:28 +0000 (06:29 +0000)]
For PR351:
This implementation is no longer needed, its been merged to Unix/Path.cpp since
there is such little variation between the platforms.

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

19 years agoFor PR351:
Reid Spencer [Fri, 24 Dec 2004 06:29:17 +0000 (06:29 +0000)]
For PR351:
Use the LLVM_ON_UNIX and LLVM_ON_WIN32 #defines to include the implementation
instead of relying upon the "platform" link

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

19 years agoFor PR351:
Reid Spencer [Fri, 24 Dec 2004 06:29:05 +0000 (06:29 +0000)]
For PR351:
Create new variables LLVM_ON_UNIX and LLVM_ON_WIN32 so we can start getting
rid of reliance upon a symbolic link to switch implementations in lib/System

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

19 years agoResurrect this file.
Reid Spencer [Fri, 24 Dec 2004 06:03:31 +0000 (06:03 +0000)]
Resurrect this file.

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

19 years agoRemove these files as they are not being included any more. DynamicLibrary
Reid Spencer [Fri, 24 Dec 2004 03:59:46 +0000 (03:59 +0000)]
Remove these files as they are not being included any more. DynamicLibrary
is now implemented via ltdl.cpp which has its own way of dealing with
the different platforms.

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

19 years agoMake sure LLVMGCCWITHPATH is used instead of just LLVMGCC so that the
Reid Spencer [Fri, 24 Dec 2004 03:44:24 +0000 (03:44 +0000)]
Make sure LLVMGCCWITHPATH is used instead of just LLVMGCC so that the
CFE tools can find the correct LLVM tools to invoke.

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

19 years agoThe dejagnu scripts need a path for llvm-gcc/llvm-g++ as well so use the
Reid Spencer [Fri, 24 Dec 2004 03:38:01 +0000 (03:38 +0000)]
The dejagnu scripts need a path for llvm-gcc/llvm-g++ as well so use the
correct variable to get a "set the path first" invocation of those tools.

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

19 years agoTwo corrections:
Reid Spencer [Fri, 24 Dec 2004 03:36:31 +0000 (03:36 +0000)]
Two corrections:
* When reconfiguring, make sure the config.cache file is blown away so that
  its (old) values don't short-circuit doing the tests. When a reconfigure
  is done, it should be done from scratch, without the cache.
* For dist-check, don't pass --with-llvmgccdir any more because configure
  doesn't have this option any more.

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

19 years agoChange llvmgcc/llvmg++ to llvm-gcc and llvm-g++ respectively.
Reid Spencer [Fri, 24 Dec 2004 03:34:31 +0000 (03:34 +0000)]
Change llvmgcc/llvmg++ to llvm-gcc and llvm-g++ respectively.

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

19 years agoFix VC++ compilation error
Jeff Cohen [Fri, 24 Dec 2004 02:38:34 +0000 (02:38 +0000)]
Fix VC++ compilation error

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

19 years agoFix a bug in libtool's ltmain.sh. On Cygwin the "$output.exp" expression
Reid Spencer [Fri, 24 Dec 2004 00:15:20 +0000 (00:15 +0000)]
Fix a bug in libtool's ltmain.sh. On Cygwin the "$output.exp" expression
expands to a full path name. Substitute $outputname.exp" instead and it
makes a viable temporary file name. This gets around the problem with lli
on Cygwin linking but not having any "C" library functions linked into it.

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

19 years agoPut CopyFile in the sys namespace.
Reid Spencer [Thu, 23 Dec 2004 22:14:32 +0000 (22:14 +0000)]
Put CopyFile in the sys namespace.

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

19 years agoWrap at 80 cols
Misha Brukman [Thu, 23 Dec 2004 21:17:41 +0000 (21:17 +0000)]
Wrap at 80 cols

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

19 years agoCorrect the comments and file header.
Reid Spencer [Thu, 23 Dec 2004 21:16:46 +0000 (21:16 +0000)]
Correct the comments and file header.

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

19 years agoTry to speed up gccld hot spot in BasicVN::getEqualNumberNodes by making
Reid Spencer [Thu, 23 Dec 2004 21:13:26 +0000 (21:13 +0000)]
Try to speed up gccld hot spot in BasicVN::getEqualNumberNodes by making
a function call at the core of the loop inline and removing unused
stack variables from an often called function. This doesn't improve things
much, the real saving will be by reducing the number of calls to this
function (100K+ when linking kimwitu++).

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

19 years agoUpdate the amd64 target detection checks.
Reid Spencer [Thu, 23 Dec 2004 21:08:52 +0000 (21:08 +0000)]
Update the amd64 target detection checks.
Patch contributed by Markus F.X.J. Oberhumer.

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

19 years agoAdd a caution about using experimental versions of gnu binutils when
Reid Spencer [Thu, 23 Dec 2004 19:49:54 +0000 (19:49 +0000)]
Add a caution about using experimental versions of gnu binutils when
building Cygwin.

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