oota-llvm.git
20 years agoUse 3-arg form of AC_DEFINE.
Brian Gaeke [Wed, 8 Oct 2003 21:45:58 +0000 (21:45 +0000)]
Use 3-arg form of AC_DEFINE.

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

20 years agoUse 3-arg form of AC_DEFINE.
Brian Gaeke [Wed, 8 Oct 2003 21:44:07 +0000 (21:44 +0000)]
Use 3-arg form of AC_DEFINE.
Check for strsignal(), which isn't found everywhere, and sys_siglist,
 which can be used to implement it.

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

20 years agoI really meant to use that AUTOHEADER variable I put in there.
Brian Gaeke [Wed, 8 Oct 2003 21:38:35 +0000 (21:38 +0000)]
I really meant to use that AUTOHEADER variable I put in there.

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

20 years agoVarious cleanups and simplifications. This speeds up reading a bytecode file
Chris Lattner [Wed, 8 Oct 2003 21:18:57 +0000 (21:18 +0000)]
Various cleanups and simplifications.  This speeds up reading a bytecode file
Bill gave me from 8.69s to 6.90s.

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

20 years agoDestroy allocated resources on exception.
Misha Brukman [Wed, 8 Oct 2003 19:55:47 +0000 (19:55 +0000)]
Destroy allocated resources on exception.

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

20 years agoMake more error messages have gccld's name in them.
Brian Gaeke [Wed, 8 Oct 2003 19:09:30 +0000 (19:09 +0000)]
Make more error messages have gccld's name in them.
Add a newline after "Cannot find <library>".

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

20 years agoold testcase
Chris Lattner [Wed, 8 Oct 2003 18:28:10 +0000 (18:28 +0000)]
old testcase

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

20 years agoCheckin an old bug, which appears to be fixed
Chris Lattner [Wed, 8 Oct 2003 18:26:10 +0000 (18:26 +0000)]
Checkin an old bug, which appears to be fixed

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

20 years agoUpdate comment
Chris Lattner [Wed, 8 Oct 2003 16:56:11 +0000 (16:56 +0000)]
Update comment

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

20 years agoUse a set to keep track of which edges have been noticed as executable already
Chris Lattner [Wed, 8 Oct 2003 16:55:34 +0000 (16:55 +0000)]
Use a set to keep track of which edges have been noticed as executable already
to avoid reprocessing PHI nodes needlessly.  This speeds up the big bad PHI
testcase 43%: from 104.9826 to 73.5157s

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

20 years agoMinor fixes here and there
Chris Lattner [Wed, 8 Oct 2003 16:21:03 +0000 (16:21 +0000)]
Minor fixes here and there

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

20 years agoAvoid building data structures we don't really need. This improves the runtime
Chris Lattner [Wed, 8 Oct 2003 15:47:41 +0000 (15:47 +0000)]
Avoid building data structures we don't really need.  This improves the runtime
of a test that Bill Wendling sent me from 228.5s to 105s.  Obviously there is
more improvement to be had, but this is a nice speedup which should be "felt"
by many programs.

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

20 years agoConvert over to short bug URLs
Chris Lattner [Wed, 8 Oct 2003 06:01:38 +0000 (06:01 +0000)]
Convert over to short bug URLs

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

20 years agoChange MRegisterDesc::AliasSet, TargetInstrDescriptor::ImplicitDefs
Alkis Evlogimenos [Wed, 8 Oct 2003 05:20:08 +0000 (05:20 +0000)]
Change MRegisterDesc::AliasSet, TargetInstrDescriptor::ImplicitDefs
and TargetInstrDescriptor::ImplicitUses to always point to a null
terminated array and never be null. So there is no need to check for
pointer validity when iterating over those sets. Code that looked
like:

if (const unsigned* AS = TID.ImplicitDefs) {
  for (int i = 0; AS[i]; ++i) {
    // use AS[i]
  }
}

was changed to:

for (const unsigned* AS = TID.ImplicitDefs; *AS; ++AS) {
  // use *AS
}

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

20 years agoProperly close anchor tags in column descriptions
Alkis Evlogimenos [Wed, 8 Oct 2003 05:09:52 +0000 (05:09 +0000)]
Properly close anchor tags in column descriptions

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

20 years agoForward declare class Type since it is used in this class and Type.h is not included
Alkis Evlogimenos [Wed, 8 Oct 2003 04:45:45 +0000 (04:45 +0000)]
Forward declare class Type since it is used in this class and Type.h is not included

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

20 years agoAdd rule for regenerating config.h.in using autoheader.
Brian Gaeke [Tue, 7 Oct 2003 23:44:10 +0000 (23:44 +0000)]
Add rule for regenerating config.h.in using autoheader.

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

20 years agoRegenerated with (at top-level llvm directory):
Brian Gaeke [Tue, 7 Oct 2003 23:39:51 +0000 (23:39 +0000)]
Regenerated with (at top-level llvm directory):
 % autoheader -I autoconf autoconf/configure.ac

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

20 years agowhoops, don't accidentally lose variable names
Chris Lattner [Tue, 7 Oct 2003 22:58:41 +0000 (22:58 +0000)]
whoops, don't accidentally lose variable names

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

20 years agoFix bug: InstCombine/cast.ll:test11 / PR#7
Chris Lattner [Tue, 7 Oct 2003 22:54:13 +0000 (22:54 +0000)]
Fix bug: InstCombine/cast.ll:test11 / PR#7

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

20 years agonew testcase
Chris Lattner [Tue, 7 Oct 2003 22:53:46 +0000 (22:53 +0000)]
new testcase

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

20 years agoRefactor code a bit
Chris Lattner [Tue, 7 Oct 2003 22:32:43 +0000 (22:32 +0000)]
Refactor code a bit

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

20 years agoAdd a sanity check for constant expression casts
Chris Lattner [Tue, 7 Oct 2003 22:19:19 +0000 (22:19 +0000)]
Add a sanity check for constant expression casts

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

20 years agoAdd links to bugzilla
Chris Lattner [Tue, 7 Oct 2003 22:14:37 +0000 (22:14 +0000)]
Add links to bugzilla

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

20 years agoRenamed -use-spec to -use-spec2000.
John Criswell [Tue, 7 Oct 2003 21:57:39 +0000 (21:57 +0000)]
Renamed -use-spec to -use-spec2000.
The pathname to SPEC2000 is now given with the -use-spec2000 option.
On our machines, SPEC2000 will be enabled by default.

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

20 years agoCleanups, include a list of passes
Chris Lattner [Tue, 7 Oct 2003 21:38:31 +0000 (21:38 +0000)]
Cleanups, include a list of passes

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

20 years agoFix bugs in mmap()-of-files test program on Mac OS X:
Brian Gaeke [Tue, 7 Oct 2003 21:33:27 +0000 (21:33 +0000)]
Fix bugs in mmap()-of-files test program on Mac OS X:
1) MAP_FAILED is declared to be a pointer
2) can't include sys/mman.h before sys/types.h without getting an error :-(

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

20 years agoFixed the location of the expectations file.
John Criswell [Tue, 7 Oct 2003 21:30:07 +0000 (21:30 +0000)]
Fixed the location of the expectations file.
Added the registration of the LLVM Database class.

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

20 years agoSwitching over to the new test database.
John Criswell [Tue, 7 Oct 2003 21:13:47 +0000 (21:13 +0000)]
Switching over to the new test database.
Adding new qmt files should no longer be necessary.
QMTest should know just "magically" know what sort of test each file is.

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

20 years agoAdd more credits
Chris Lattner [Tue, 7 Oct 2003 20:50:29 +0000 (20:50 +0000)]
Add more credits

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

20 years agocleanup analyze documents
Chris Lattner [Tue, 7 Oct 2003 20:36:00 +0000 (20:36 +0000)]
cleanup analyze documents

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

20 years agoEnsure both columns take 50%
Chris Lattner [Tue, 7 Oct 2003 20:35:55 +0000 (20:35 +0000)]
Ensure both columns take 50%

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

20 years agono this really isn't extract
Chris Lattner [Tue, 7 Oct 2003 20:33:52 +0000 (20:33 +0000)]
no this really isn't extract

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

20 years agoinitial checkin of the bugpoint doxs
Chris Lattner [Tue, 7 Oct 2003 20:33:30 +0000 (20:33 +0000)]
initial checkin of the bugpoint doxs

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

20 years agoTTify, add links between pages
Chris Lattner [Tue, 7 Oct 2003 20:17:24 +0000 (20:17 +0000)]
TTify, add links between pages

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

20 years agoConsistently set the background color
Chris Lattner [Tue, 7 Oct 2003 20:12:05 +0000 (20:12 +0000)]
Consistently set the background color
Change the footer to include "maintained by"

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

20 years ago<tt>ify things
Chris Lattner [Tue, 7 Oct 2003 20:09:21 +0000 (20:09 +0000)]
<tt>ify things

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

20 years agoMake the index page a big more attractive
Chris Lattner [Tue, 7 Oct 2003 20:05:23 +0000 (20:05 +0000)]
Make the index page a big more attractive

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

20 years agoMore changes and updates
Chris Lattner [Tue, 7 Oct 2003 20:01:09 +0000 (20:01 +0000)]
More changes and updates

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

20 years ago<tt>ify, other minor cleanups
Chris Lattner [Tue, 7 Oct 2003 19:51:55 +0000 (19:51 +0000)]
<tt>ify, other minor cleanups

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

20 years ago<tt> stuff
Chris Lattner [Tue, 7 Oct 2003 19:48:25 +0000 (19:48 +0000)]
<tt> stuff
simplify a bit

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

20 years agoAdd pointer to LLC for code generator options. <tt> a bunch of stuff which should be
Chris Lattner [Tue, 7 Oct 2003 19:46:37 +0000 (19:46 +0000)]
Add pointer to LLC for code generator options.  <tt> a bunch of stuff which should be

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

20 years agoseparate options into X86 and sparc specific options
Chris Lattner [Tue, 7 Oct 2003 19:42:50 +0000 (19:42 +0000)]
separate options into X86 and sparc specific options

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

20 years agoFix bugzilla bug #5
Chris Lattner [Tue, 7 Oct 2003 19:33:31 +0000 (19:33 +0000)]
Fix bugzilla bug #5

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

20 years agoThese scripts are no longer needed. They have been replaced by QMTest.
John Criswell [Tue, 7 Oct 2003 19:07:00 +0000 (19:07 +0000)]
These scripts are no longer needed.  They have been replaced by QMTest.

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

20 years agoBill contributed this major rewrite of the -lowerswitch pass to make it generate
Chris Lattner [Tue, 7 Oct 2003 18:46:23 +0000 (18:46 +0000)]
Bill contributed this major rewrite of the -lowerswitch pass to make it generate
logarithmic conditional branch sequences instead of linear sequences.  Thanks Bill!

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

20 years agoAdd target to regenerate top-level "configure" script.
Brian Gaeke [Tue, 7 Oct 2003 17:12:11 +0000 (17:12 +0000)]
Add target to regenerate top-level "configure" script.

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

20 years agoWrap at 80 columns
Chris Lattner [Tue, 7 Oct 2003 16:36:25 +0000 (16:36 +0000)]
Wrap at 80 columns
remove -time-passes and -stats, because llvm-link doesn't really need them

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

20 years agoRenamed llvmas.html llvmdis.html and llvmlink.html to have hyphens in them
Chris Lattner [Tue, 7 Oct 2003 16:34:51 +0000 (16:34 +0000)]
Renamed llvmas.html llvmdis.html and llvmlink.html to have hyphens in them

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

20 years agoremove options specific to the -internalize pass, add the -debug option
Chris Lattner [Tue, 7 Oct 2003 16:33:42 +0000 (16:33 +0000)]
remove options specific to the -internalize pass, add the -debug option

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

20 years agoDepend on config.status instead of config.h, because config.h timestamp may not
Misha Brukman [Tue, 7 Oct 2003 15:24:23 +0000 (15:24 +0000)]
Depend on config.status instead of config.h, because config.h timestamp may not
change even though configure changes.

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

20 years agoFix bug in previous checkin
Chris Lattner [Tue, 7 Oct 2003 15:17:02 +0000 (15:17 +0000)]
Fix bug in previous checkin

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

20 years agoAdded targets that force users to re-run autoconf when the script has been
John Criswell [Tue, 7 Oct 2003 14:16:44 +0000 (14:16 +0000)]
Added targets that force users to re-run autoconf when the script has been
updated.

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

20 years agoThis header file moved. Thanks to Bill and Nightly tester for noticing
Chris Lattner [Tue, 7 Oct 2003 13:45:51 +0000 (13:45 +0000)]
This header file moved.  Thanks to Bill and Nightly tester for noticing

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

20 years agoregenerated using autoconf-2.57.
Brian Gaeke [Tue, 7 Oct 2003 06:01:34 +0000 (06:01 +0000)]
regenerated using autoconf-2.57.

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

20 years agoDon't abort if dlopen cannot be found; it's not like it's going to break
Brian Gaeke [Tue, 7 Oct 2003 05:03:36 +0000 (05:03 +0000)]
Don't abort if dlopen cannot be found; it's not like it's going to break
everything.

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

20 years agoCheck for functions: strtoq, strtoll.
Brian Gaeke [Tue, 7 Oct 2003 03:56:29 +0000 (03:56 +0000)]
Check for functions: strtoq, strtoll.

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

20 years agonew testcase, distilled by Brian
Chris Lattner [Tue, 7 Oct 2003 02:57:51 +0000 (02:57 +0000)]
new testcase, distilled by Brian

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

20 years agoBreak lines so that they fit within 80 columns.
Misha Brukman [Mon, 6 Oct 2003 19:26:00 +0000 (19:26 +0000)]
Break lines so that they fit within 80 columns.

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

20 years ago* Alphabetized order of tools
Misha Brukman [Mon, 6 Oct 2003 19:23:34 +0000 (19:23 +0000)]
* Alphabetized order of tools
* Added blurb about `bugpoint'
* Fixed some grammar issues
* Added blurb about `llvm-link'
* Took out the part about the `lli debugger' which disappeared

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

20 years agoActually _PASS IN_ NO_RESERVE if we have it.
Chris Lattner [Mon, 6 Oct 2003 19:07:41 +0000 (19:07 +0000)]
Actually _PASS IN_ NO_RESERVE if we have it.
Thanks to Brian for fixing this obvious oops

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

20 years agoToolRunner.h has been moved from include/Support to include/llvm/Support.
Misha Brukman [Mon, 6 Oct 2003 18:37:24 +0000 (18:37 +0000)]
ToolRunner.h has been moved from include/Support to include/llvm/Support.

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

20 years agoMoved to llvm/include/llvm/Support because it is LLVM-specific.
Misha Brukman [Mon, 6 Oct 2003 18:34:38 +0000 (18:34 +0000)]
Moved to llvm/include/llvm/Support because it is LLVM-specific.

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

20 years agoRemove unneeded dtors
Chris Lattner [Mon, 6 Oct 2003 17:36:49 +0000 (17:36 +0000)]
Remove unneeded dtors

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

20 years agoUsers can never be null
Chris Lattner [Mon, 6 Oct 2003 17:33:39 +0000 (17:33 +0000)]
Users can never be null

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

20 years agoMinor speedups for the instcombine pass
Chris Lattner [Mon, 6 Oct 2003 17:11:01 +0000 (17:11 +0000)]
Minor speedups for the instcombine pass

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

20 years agoSpeed up the predicate used to decide when to inline by caching the size
Chris Lattner [Mon, 6 Oct 2003 15:52:43 +0000 (15:52 +0000)]
Speed up the predicate used to decide when to inline by caching the size
of callees between executions.

On eon, in release mode, this changes the inliner from taking 11.5712s
to taking 2.2066s.  In debug mode, it went from taking 14.4148s to
taking 7.0745s.  In release mode, this is a 24.7% speedup of gccas, in
debug mode, it's a total speedup of 11.7%.

This also makes it slightly more aggressive.  This could be because we
are not judging the size of the functions quite as accurately as before.
When we start looking at the performance of the generated code, this can
be investigated further.

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

20 years agoAdd # of printed instructions statistic to both the SPARC and X86 LLC backends.
Brian Gaeke [Mon, 6 Oct 2003 15:41:21 +0000 (15:41 +0000)]
Add # of printed instructions statistic to both the SPARC and X86 LLC backends.

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

20 years agoI wanted to make the top of the page less verbose. Hope this helps.
Brian Gaeke [Mon, 6 Oct 2003 15:30:00 +0000 (15:30 +0000)]
I wanted to make the top of the page less verbose. Hope this helps.

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

20 years agoAvoid doing pointless work. Amazingly, this makes us go faster.
Chris Lattner [Mon, 6 Oct 2003 15:23:43 +0000 (15:23 +0000)]
Avoid doing pointless work.  Amazingly, this makes us go faster.

Running the inliner on 252.eon used to take 48.4763s, now it takes 14.4148s.

In release mode, it went from taking 25.8741s to taking 11.5712s.

This also fixes a FIXME.

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

20 years agoImplement the NamedRegionTimer class
Chris Lattner [Mon, 6 Oct 2003 15:02:31 +0000 (15:02 +0000)]
Implement the NamedRegionTimer class

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

20 years agoDoxygenize class comments. Add new NamedRegionTimer class
Chris Lattner [Mon, 6 Oct 2003 15:02:16 +0000 (15:02 +0000)]
Doxygenize class comments.  Add new NamedRegionTimer class

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

20 years agoAll of our supported operating systems (so far) and FreeBSD technically
Brian Gaeke [Mon, 6 Oct 2003 03:30:28 +0000 (03:30 +0000)]
All of our supported operating systems (so far) and FreeBSD technically
want you to include <sys/stat.h> for fstat(), struct stat, and friends.

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

20 years agoHand update the configure script for moved directories
Chris Lattner [Mon, 6 Oct 2003 02:13:00 +0000 (02:13 +0000)]
Hand update the configure script for moved directories

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

20 years agoChanges for the move of the support directory back into utils
Chris Lattner [Mon, 6 Oct 2003 02:09:25 +0000 (02:09 +0000)]
Changes for the move of the support directory back into utils

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

20 years agoThis changes the PromoteMemToReg function to create "pruned" SSA form, not
Chris Lattner [Sun, 5 Oct 2003 22:19:20 +0000 (22:19 +0000)]
This changes the PromoteMemToReg function to create "pruned" SSA form, not
"minimal" SSA form (in other words, it doesn't insert dead PHIs).  This
speeds up the mem2reg pass very significantly because it doesn't have to
do a lot of frivolous work in many common cases.

In the 252.eon function I have been playing with, this doesn't even insert
the 120 PHI nodes that it used to which were trivially dead (in the process
of promoting 356 alloca instructions overall).  This speeds up the mem2reg
pass from 1.2459s to 0.1284s.  More significantly, the DCE pass used to take
2.4138s to remove the 120 dead PHI nodes that mem2reg constructed, now it
takes 0.0134s (which is the time to scan the function and decide that there
is nothing dead).  So overall, on this one function, we speed things up a
total of 3.5179s, which is a 24.8x speedup!  :)

This change is tested by the Mem2Reg/2003-10-05-DeadPHIInsertion.ll test,
which now passes.

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

20 years agoChange the interface to PromoteMemToReg to also take a DominatorTree
Chris Lattner [Sun, 5 Oct 2003 21:20:13 +0000 (21:20 +0000)]
Change the interface to PromoteMemToReg to also take a DominatorTree

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

20 years agonew testcase
Chris Lattner [Sun, 5 Oct 2003 21:11:57 +0000 (21:11 +0000)]
new testcase

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

20 years agoSpeed up the mem2reg transform for allocas which are only read/written in a single
Chris Lattner [Sun, 5 Oct 2003 20:54:03 +0000 (20:54 +0000)]
Speed up the mem2reg transform for allocas which are only read/written in a single
basic block.  This is amazingly common in code generated by the C/C++ front-ends.
This change makes it not have to insert ANY phi nodes, whereas before it would insert
a ton of dead ones which DCE would have to clean up.

Thus, this fix improves compile-time performance of these trivial allocas in two ways:
  1. It doesn't have to do the walking and book-keeping for renaming
  2. It does not insert dead phi nodes for them which would have to
     subsequently be cleaned up.

On my favorite testcase from 252.eon, this special case handles 305 out of
356 promoted allocas in the function.  It speeds up the mem2reg pass from 7.5256s
to 1.2505s.  It inserts 677 fewer dead PHI nodes, which speeds up a subsequent
-dce pass from 18.7524s to 2.4806s.

There are still 120 trivially dead PHI nodes being inserted for variables used
in multiple basic blocks, but they are not handled by this patch.

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

20 years agoThe support directory no longer exists
Chris Lattner [Sun, 5 Oct 2003 19:33:27 +0000 (19:33 +0000)]
The support directory no longer exists

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

20 years agoOops, missed the . files
Chris Lattner [Sun, 5 Oct 2003 19:32:56 +0000 (19:32 +0000)]
Oops, missed the . files

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

20 years agoMove support/lib into lib/Support
Chris Lattner [Sun, 5 Oct 2003 19:32:12 +0000 (19:32 +0000)]
Move support/lib into lib/Support
Move support/tools into utils

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

20 years agoRevert back to keeping Burg and TableGen in the utils directory
Chris Lattner [Sun, 5 Oct 2003 19:28:27 +0000 (19:28 +0000)]
Revert back to keeping Burg and TableGen in the utils directory

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

20 years agoMove support/tools/* back into utils
Chris Lattner [Sun, 5 Oct 2003 19:27:59 +0000 (19:27 +0000)]
Move support/tools/* back into utils

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

20 years agoMove support/lib/Support back to lib/Support
Chris Lattner [Sun, 5 Oct 2003 19:24:38 +0000 (19:24 +0000)]
Move support/lib/Support back to lib/Support

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

20 years agoThe sparc backend now support invoke, but still doesn't support unwind
Chris Lattner [Sun, 5 Oct 2003 19:17:10 +0000 (19:17 +0000)]
The sparc backend now support invoke, but still doesn't support unwind

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

20 years agoAdd support for the Invoke instruction by using the LowerInvoke pass
Chris Lattner [Sun, 5 Oct 2003 19:16:09 +0000 (19:16 +0000)]
Add support for the Invoke instruction by using the LowerInvoke pass

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

20 years agoInstead of hacking in custom support for Invoke/Unwind, use the LowerInvoke pass
Chris Lattner [Sun, 5 Oct 2003 19:15:47 +0000 (19:15 +0000)]
Instead of hacking in custom support for Invoke/Unwind, use the LowerInvoke pass

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

20 years agoAdd new prototype for createLowerInvokePass(). Make simplifycfg be a
Chris Lattner [Sun, 5 Oct 2003 19:15:13 +0000 (19:15 +0000)]
Add new prototype for createLowerInvokePass().  Make simplifycfg be a
functionpass

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

20 years agoInitial checkin of the LLVM->LLVM transform to support code generators which
Chris Lattner [Sun, 5 Oct 2003 19:14:42 +0000 (19:14 +0000)]
Initial checkin of the LLVM->LLVM transform to support code generators which
do not support stack unwinding yet

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

20 years agosimplify-cfg is really a function pass
Chris Lattner [Sun, 5 Oct 2003 19:14:16 +0000 (19:14 +0000)]
simplify-cfg is really a function pass

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

20 years agoBe more careful handling PHI nodes, which might be of potentially high degree.
Chris Lattner [Sun, 5 Oct 2003 17:44:18 +0000 (17:44 +0000)]
Be more careful handling PHI nodes, which might be of potentially high degree.
This reduces the time to verify a function from eon with a large number of
large PHI nodes from 22996s (6.38 hours) to 10.5499s

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

20 years agoThe first PHI node may be null, scan for the first non-null one
Chris Lattner [Sun, 5 Oct 2003 05:34:39 +0000 (05:34 +0000)]
The first PHI node may be null, scan for the first non-null one

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

20 years agoThe VersionNumbers vector is only used during PHI placement. Turn it into an argumen...
Chris Lattner [Sun, 5 Oct 2003 04:33:22 +0000 (04:33 +0000)]
The VersionNumbers vector is only used during PHI placement.  Turn it into an argument, allowing us to get rid of the vector.

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

20 years ago* Update file header comment
Chris Lattner [Sun, 5 Oct 2003 04:26:39 +0000 (04:26 +0000)]
* Update file header comment
*** Revamp the code which handled unreachable code in the function.  Now the
    code is much more efficient for high-degree basic blocks, such as those
    that occur in the 252.eon SPEC benchmark.

For the interested, the time to promote a SINGLE alloca in _ZN7mrScene4ReadERSi
function used to be > 3.5s.  Now it is < .075s.  The function has a LOT of
allocas in it, so it appeared to be infinite looping, this should make it much
nicer.  :)

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

20 years agoSimplify the loop a bit
Chris Lattner [Sun, 5 Oct 2003 03:45:44 +0000 (03:45 +0000)]
Simplify the loop a bit

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

20 years agoThere is no need for separate WriteSets and PhiNodeBlocks lists. It is just a
Chris Lattner [Sun, 5 Oct 2003 03:39:10 +0000 (03:39 +0000)]
There is no need for separate WriteSets and PhiNodeBlocks lists.  It is just a
work-list of value definitions.  This allows elimination of the explicit
'iterative' step of the algorithm, and also reuses temporary memory better.

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

20 years agoThe PhiNodes 2D vector is only used during PHI node placement. It doesn't
Chris Lattner [Sun, 5 Oct 2003 03:26:25 +0000 (03:26 +0000)]
The PhiNodes 2D vector is only used during PHI node placement.  It doesn't
need to be an instance variable!

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

20 years ago* Document instance vars better
Chris Lattner [Sun, 5 Oct 2003 03:16:07 +0000 (03:16 +0000)]
* Document instance vars better
* Fuse two parallel loops
* Use a more specific type for AllocaLookup

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

20 years agoTwo small cleanups/speedups:
Chris Lattner [Sun, 5 Oct 2003 02:37:36 +0000 (02:37 +0000)]
Two small cleanups/speedups:
 * Do not insert a new entry into NewPhiNodes during the rename pass if there are no PHIs in a block.
 * Do not compute WriteSets in parallel

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