oota-llvm.git
20 years agoMoved iterators to common file.
Tanya Lattner [Tue, 20 Jan 2004 17:49:42 +0000 (17:49 +0000)]
Moved iterators to common file.

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

20 years agoFix bogus warning and simplify code
Chris Lattner [Tue, 20 Jan 2004 17:06:29 +0000 (17:06 +0000)]
Fix bogus warning and simplify code

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

20 years agoMajor changes. Now we only compactify individual type planes if it is in
Chris Lattner [Tue, 20 Jan 2004 00:57:32 +0000 (00:57 +0000)]
Major changes.  Now we only compactify individual type planes if it is in
fact "profitable" to do so.  This makes compactification "free" for small
programs (ie, it is completely disabled) and even helps large programs by
not having to encode pointless compactification planes.

On 176.gcc, this saves 50K from the bytecode file, which is, alas only
a couple percent.

This concludes my head bashing against the bytecode format, at least for
now.

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

20 years agoadd a method proto, make a method not inline
Chris Lattner [Tue, 20 Jan 2004 00:54:47 +0000 (00:54 +0000)]
add a method proto, make a method not inline

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

20 years agoBugfixes for dealing with partially compactified functions
Chris Lattner [Tue, 20 Jan 2004 00:54:06 +0000 (00:54 +0000)]
Bugfixes for dealing with partially compactified functions

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

20 years agoNow with HTML 4.01 comliance flavor.
Misha Brukman [Tue, 20 Jan 2004 00:20:17 +0000 (00:20 +0000)]
Now with HTML 4.01 comliance flavor.

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

20 years agoSave another 30K from 176.gcc by encoding the compaction table a bit more
Chris Lattner [Sun, 18 Jan 2004 22:35:34 +0000 (22:35 +0000)]
Save another 30K from 176.gcc by encoding the compaction table a bit more
intelligently.

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

20 years agoRemove -debug output
Chris Lattner [Sun, 18 Jan 2004 22:26:53 +0000 (22:26 +0000)]
Remove -debug output

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

20 years agoAdd enum for compaction table.
Chris Lattner [Sun, 18 Jan 2004 21:09:23 +0000 (21:09 +0000)]
Add enum for compaction table.

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

20 years agoAdd support for writing bytecode files with compactiontables for bytecode files.
Chris Lattner [Sun, 18 Jan 2004 21:08:52 +0000 (21:08 +0000)]
Add support for writing bytecode files with compactiontables for bytecode files.
This shrinks the bytecode file for 176.gcc by about 200K (10%), and 254.gap by
about 167K, a 25% reduction.  There is still a lot of room for improvement in
the encoding of the compaction table.

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

20 years agoAdd support for reading bytecode files with compactiontables for bytecode files.
Chris Lattner [Sun, 18 Jan 2004 21:08:15 +0000 (21:08 +0000)]
Add support for reading bytecode files with compactiontables for bytecode files.
This shrinks the bytecode file for 176.gcc by about 200K (10%), and 254.gap by
about 167K, a 25% reduction.  There is still a lot of room for improvement in
the encoding of the compaction table.

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

20 years agoAdd support for building the compactiontable for bytecode files. This shrinks
Chris Lattner [Sun, 18 Jan 2004 21:07:07 +0000 (21:07 +0000)]
Add support for building the compactiontable for bytecode files.  This shrinks
the bytecode file for 176.gcc by about 200K (10%), and 254.gap by about 167K,
a 25% reduction.  There is still a lot of room for improvement in the encoding
of the compaction table.

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

20 years agoAdd support for representing the "compaction table"
Chris Lattner [Sun, 18 Jan 2004 21:03:49 +0000 (21:03 +0000)]
Add support for representing the "compaction table"
Change protected members to private.  Nothing should subclass SlotCalculator

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

20 years agoEliminate special case handling for CPR's
Chris Lattner [Sun, 18 Jan 2004 21:03:06 +0000 (21:03 +0000)]
Eliminate special case handling for CPR's
Fix some problem cases where I was building the slot calculator in bytecode
writer mode instead of asmwriter mode.

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

20 years agoClarify situation w.r.t the -lowerinvoke pass.
Chris Lattner [Sun, 18 Jan 2004 20:13:43 +0000 (20:13 +0000)]
Clarify situation w.r.t the -lowerinvoke pass.

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

20 years agoBytecode format for LLVM 1.2 no longer explicitly encodes zeros in primitive
Chris Lattner [Sat, 17 Jan 2004 23:25:43 +0000 (23:25 +0000)]
Bytecode format for LLVM 1.2 no longer explicitly encodes zeros in primitive
type planes.  This saves about 5k on 176.gcc, and is needed for a subsequent
patch of mine I'm working on.

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

20 years agofix copy-and-pasto
Chris Lattner [Sat, 17 Jan 2004 22:48:06 +0000 (22:48 +0000)]
fix copy-and-pasto

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

20 years agoRevision of Brian's threading support library to be a bit more generic and
Chris Lattner [Sat, 17 Jan 2004 19:54:29 +0000 (19:54 +0000)]
Revision of Brian's threading support library to be a bit more generic and
platform independent.  This code is completely untested (but never used),
and needs autoconf support for detecting pthreads, but it's a start, and
deletes two emails from my inbox.  :)

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

20 years agoThis file goes away
Chris Lattner [Sat, 17 Jan 2004 19:35:57 +0000 (19:35 +0000)]
This file goes away

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

20 years agoAdd a fixed bug
Brian Gaeke [Fri, 16 Jan 2004 21:55:04 +0000 (21:55 +0000)]
Add a fixed bug

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

20 years agoRemove the use of LLVMGCCARCH. Instead, query the compiler for the
John Criswell [Fri, 16 Jan 2004 21:53:23 +0000 (21:53 +0000)]
Remove the use of LLVMGCCARCH.  Instead, query the compiler for the
location of libgcc.a; that will tell us the name of the directory to find
the libraries that we're looking for.

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

20 years agoRemove some whitespace and fix up some comments.
Brian Gaeke [Fri, 16 Jan 2004 21:31:34 +0000 (21:31 +0000)]
Remove some whitespace and fix up some comments.
Take settings of LCC and LCC1XX from configure.

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

20 years agoGet paths to cc1 and cc1plus by asking llvm-gcc, and AC_SUBST them.
Brian Gaeke [Fri, 16 Jan 2004 21:31:22 +0000 (21:31 +0000)]
Get paths to cc1 and cc1plus by asking llvm-gcc, and AC_SUBST them.

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

20 years agoRegenerated using autoconf-2.57.
Brian Gaeke [Fri, 16 Jan 2004 21:31:21 +0000 (21:31 +0000)]
Regenerated using autoconf-2.57.

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

20 years agoTake settings of LCC and LCC1XX from configure.
Brian Gaeke [Fri, 16 Jan 2004 21:31:20 +0000 (21:31 +0000)]
Take settings of LCC and LCC1XX from configure.

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

20 years agoClarify comment.
Brian Gaeke [Fri, 16 Jan 2004 21:13:10 +0000 (21:13 +0000)]
Clarify comment.

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

20 years agoI'm fairly certain this was just a typo.
Brian Gaeke [Fri, 16 Jan 2004 21:12:34 +0000 (21:12 +0000)]
I'm fairly certain this was just a typo.

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

20 years agoHandle printing of intervals that are not assign to any physical
Alkis Evlogimenos [Fri, 16 Jan 2004 20:33:13 +0000 (20:33 +0000)]
Handle printing of intervals that are not assign to any physical
register yet (2nd try).

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

20 years agoHandle printing of intervals that are not assign to any physical
Alkis Evlogimenos [Fri, 16 Jan 2004 20:29:42 +0000 (20:29 +0000)]
Handle printing of intervals that are not assign to any physical
register yet.

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

20 years agoFold open interval ends handling into
Alkis Evlogimenos [Fri, 16 Jan 2004 20:17:05 +0000 (20:17 +0000)]
Fold open interval ends handling into
LiveIntervals::Interval::expiredAt() and simplify regalloc code.

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

20 years agoAdd asserts to previous change.
Alkis Evlogimenos [Fri, 16 Jan 2004 16:23:23 +0000 (16:23 +0000)]
Add asserts to previous change.

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

20 years agoUse a list instead of a vector to store intervals. This will be needed
Alkis Evlogimenos [Fri, 16 Jan 2004 16:06:59 +0000 (16:06 +0000)]
Use a list instead of a vector to store intervals. This will be needed
when we join intervals and one of the two will need to be removed.

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

20 years agoUse the LLVM standard name mangling infrastructure instead of reinventing the
Misha Brukman [Thu, 15 Jan 2004 22:44:19 +0000 (22:44 +0000)]
Use the LLVM standard name mangling infrastructure instead of reinventing the
wheel.

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

20 years agoThis is my script for narrowing down miscompilations to a single file.
Brian Gaeke [Thu, 15 Jan 2004 22:35:43 +0000 (22:35 +0000)]
This is my script for narrowing down miscompilations to a single file.

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

20 years agoIf these blocks are empty, there is no reason to even emit the bytecode blocks.
Chris Lattner [Thu, 15 Jan 2004 21:06:57 +0000 (21:06 +0000)]
If these blocks are empty, there is no reason to even emit the bytecode blocks.
This saves about 15K in 176.gcc, coupled with another patch that I'm working on.

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

20 years agoCleanups & efficiency improvements
Chris Lattner [Thu, 15 Jan 2004 20:24:09 +0000 (20:24 +0000)]
Cleanups & efficiency improvements

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

20 years agoPut stylesheet after the title.
Misha Brukman [Thu, 15 Jan 2004 19:04:12 +0000 (19:04 +0000)]
Put stylesheet after the title.

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

20 years ago* HTML 4.01 Strict DTD compliance
Misha Brukman [Thu, 15 Jan 2004 19:03:47 +0000 (19:03 +0000)]
* HTML 4.01 Strict DTD compliance
* Added icons to check document easily

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

20 years agoThe bcwriter does not want ConstantPointerRef's to be indexed, and the asmwriter...
Chris Lattner [Thu, 15 Jan 2004 18:47:15 +0000 (18:47 +0000)]
The bcwriter does not want ConstantPointerRef's to be indexed, and the asmwriter never did!

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

20 years agoConstantPointerRef's are no longer emitted. This saves 20028 bytes in the
Chris Lattner [Thu, 15 Jan 2004 18:46:56 +0000 (18:46 +0000)]
ConstantPointerRef's are no longer emitted.  This saves 20028 bytes in the
bytecode files when compiling 176.gcc, but more importantly will make it
easier to eliminate CPR's in the future (no new .bc revision will be
required to support them)

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

20 years agoAllow bytecode files to refer directly to global values as constants, instead
Chris Lattner [Thu, 15 Jan 2004 18:45:25 +0000 (18:45 +0000)]
Allow bytecode files to refer directly to global values as constants, instead
of forcing them to go through ConstantPointerRef's.  This allows bytecode
files to mirror .ll files, allows more efficient encoding, and makes it easier
to eventually eliminate CPR's.

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

20 years agoFix more breakage with string change.
Chris Lattner [Thu, 15 Jan 2004 18:39:06 +0000 (18:39 +0000)]
Fix more breakage with string change.

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

20 years ago* HTML 4.01 Strict DTD compliance
Misha Brukman [Thu, 15 Jan 2004 18:34:11 +0000 (18:34 +0000)]
* HTML 4.01 Strict DTD compliance
* Use stylesheets instead of adhoc formatting
* Fix broken links in doxygen due to llvm namespace

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

20 years agoInclude TargetRegInfo.h and declare SparcTargetMachine forward, to make this
Brian Gaeke [Thu, 15 Jan 2004 18:17:07 +0000 (18:17 +0000)]
Include TargetRegInfo.h and declare SparcTargetMachine forward, to make this
header more easily includable.

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

20 years agoMake this assertion more self-explanatory.
Brian Gaeke [Thu, 15 Jan 2004 18:15:58 +0000 (18:15 +0000)]
Make this assertion more self-explanatory.

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

20 years agoHrm, thanks to misha for paying attention to my foolishness!
Chris Lattner [Thu, 15 Jan 2004 17:59:29 +0000 (17:59 +0000)]
Hrm, thanks to misha for paying attention to my foolishness!

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

20 years agoPR73 is finally fixed
Chris Lattner [Thu, 15 Jan 2004 17:55:21 +0000 (17:55 +0000)]
PR73 is finally fixed

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

20 years agoFix PR73: bytecode format inconsistent
Chris Lattner [Thu, 15 Jan 2004 17:55:09 +0000 (17:55 +0000)]
Fix PR73: bytecode format inconsistent

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

20 years agoFix PR73
Chris Lattner [Thu, 15 Jan 2004 17:55:01 +0000 (17:55 +0000)]
Fix PR73

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

20 years agoFix brokenness in my last checking
Chris Lattner [Thu, 15 Jan 2004 16:56:15 +0000 (16:56 +0000)]
Fix brokenness in my last checking

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

20 years agoRemove configure support for endianness checking, the need for which
Brian Gaeke [Thu, 15 Jan 2004 06:22:37 +0000 (06:22 +0000)]
Remove configure support for endianness checking, the need for which
Chris has helpfully expunged.

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

20 years agoRemove ENDIAN_* support. LLVM does not need it anymore.
Chris Lattner [Thu, 15 Jan 2004 06:13:58 +0000 (06:13 +0000)]
Remove ENDIAN_* support.  LLVM does not need it anymore.

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

20 years agoChange all of the bytecode reader primitives to throw exceptions instead of
Chris Lattner [Thu, 15 Jan 2004 06:13:09 +0000 (06:13 +0000)]
Change all of the bytecode reader primitives to throw exceptions instead of
returning error codes.  Because they don't return an error code, they can
return the value read, which simplifies the code and makes the reader more
efficient (yaay!).

Also eliminate the special case code for little endian machines.

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

20 years agoRemove the optimization that depends on ENDIAN_LITTLE: it's not worth it.
Chris Lattner [Thu, 15 Jan 2004 06:11:30 +0000 (06:11 +0000)]
Remove the optimization that depends on ENDIAN_LITTLE: it's not worth it.

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

20 years agoRemove broken doxygen comments
Chris Lattner [Thu, 15 Jan 2004 04:37:10 +0000 (04:37 +0000)]
Remove broken doxygen comments

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

20 years ago* Conform to HTML 4.01 strict DTD
Misha Brukman [Thu, 15 Jan 2004 00:14:41 +0000 (00:14 +0000)]
* Conform to HTML 4.01 strict DTD
* Use stylesheets instead of hard-coding formatting

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

20 years agoMake the stylesheet conform to CSS standard.
Misha Brukman [Thu, 15 Jan 2004 00:13:59 +0000 (00:13 +0000)]
Make the stylesheet conform to CSS standard.

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

20 years agoImprove comments, add support for remembering the constants strings that
Chris Lattner [Wed, 14 Jan 2004 23:37:43 +0000 (23:37 +0000)]
Improve comments, add support for remembering the constants strings that
are to be emitted.

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

20 years agoadd support for -- for symmetry
Chris Lattner [Wed, 14 Jan 2004 23:37:22 +0000 (23:37 +0000)]
add support for -- for symmetry

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

20 years agoThe new bytecode format supports emitting strings a special case. This is
Chris Lattner [Wed, 14 Jan 2004 23:36:54 +0000 (23:36 +0000)]
The new bytecode format supports emitting strings a special case.  This is
intended to save size (and does on small programs), but on big programs it
actually increases the size of the program slightly.  The deal is that many
functions end up using the characters that the string contained, and the
characters are no longer in the global constant table, so they have to be
emitted in function specific constant pools.

This pessimization will be fixed in subsequent patches.

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

20 years agoVersion 1.2 now supports encoding strings as a special case, to avoid having
Chris Lattner [Wed, 14 Jan 2004 23:35:21 +0000 (23:35 +0000)]
Version 1.2 now supports encoding strings as a special case, to avoid having
to emit all of those sbyte constants.

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

20 years agoWhen emitting bytecode, handle strings specially. Do not add the characters
Chris Lattner [Wed, 14 Jan 2004 23:34:39 +0000 (23:34 +0000)]
When emitting bytecode, handle strings specially.  Do not add the characters
that make up the strings to the slotcalculator.

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

20 years agoLike output_data, it's obvious that input_data was only used with 1 character
Chris Lattner [Wed, 14 Jan 2004 23:03:22 +0000 (23:03 +0000)]
Like output_data, it's obvious that input_data was only used with 1 character
data.

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

20 years ago"fix" a nasty race condition
Chris Lattner [Wed, 14 Jan 2004 21:18:03 +0000 (21:18 +0000)]
"fix" a nasty race condition

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

20 years agoFix some exception safety problems
Chris Lattner [Wed, 14 Jan 2004 20:58:17 +0000 (20:58 +0000)]
Fix some exception safety problems

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

20 years agoHrm, apparently I missed lowering this intrinsic. :(
Chris Lattner [Wed, 14 Jan 2004 20:41:29 +0000 (20:41 +0000)]
Hrm, apparently I missed lowering this intrinsic.  :(

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

20 years agoIt is obvious that this has never been used for outputing more than a single
Chris Lattner [Wed, 14 Jan 2004 18:50:28 +0000 (18:50 +0000)]
It is obvious that this has never been used for outputing more than a single
byte, it's totally endian incorrect!

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

20 years agoBe const correct
Chris Lattner [Wed, 14 Jan 2004 18:41:38 +0000 (18:41 +0000)]
Be const correct

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

20 years agoFix bug in previous checkin: Demorgan would be ashamed of me, I need to
Chris Lattner [Wed, 14 Jan 2004 17:51:53 +0000 (17:51 +0000)]
Fix bug in previous checkin:  Demorgan would be ashamed of me, I need to
lay off the crack.

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

20 years agoEliminate the isStringCompatible function, using ConstantArray::isString.
Chris Lattner [Wed, 14 Jan 2004 17:15:17 +0000 (17:15 +0000)]
Eliminate the isStringCompatible function, using ConstantArray::isString.
It's not clear why the code was looking for signed chars < 0, but it can't
matter to the assembler anyway, so the check goes away.  This also fixes
compatibility with arrays of [us]byte that have constantexprs in them.

Also slightly restructure some code to be cleaner.

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

20 years agoEliminate the isStringCompatible function, using ConstantArray::isString.
Chris Lattner [Wed, 14 Jan 2004 17:14:42 +0000 (17:14 +0000)]
Eliminate the isStringCompatible function, using ConstantArray::isString.
It's not clear why the code was looking for signed chars < 0, but it can't
matter to the assembler anyway, so the check goes away.

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

20 years agoUse new method
Chris Lattner [Wed, 14 Jan 2004 17:07:46 +0000 (17:07 +0000)]
Use new method

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

20 years agoImplement ConstantArray::isString
Chris Lattner [Wed, 14 Jan 2004 17:06:38 +0000 (17:06 +0000)]
Implement ConstantArray::isString

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

20 years agoAdd new ConstantArray::isString(), as the conditions for using getString()
Chris Lattner [Wed, 14 Jan 2004 17:06:21 +0000 (17:06 +0000)]
Add new ConstantArray::isString(), as the conditions for using getString()
are complex enough to check that it should be a seperate method.

While I'm here, improve ConstantArray::getNullValue a bit, though the
FIXME is still quite valid.

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

20 years agoOk, I can't handle it. This is a temporary checkin of a ton of statistics that
Chris Lattner [Wed, 14 Jan 2004 16:54:21 +0000 (16:54 +0000)]
Ok, I can't handle it.  This is a temporary checkin of a ton of statistics that
i'm using in my work to reduce the bytecode file sizes.  These will eventually
be removed.

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

20 years agoRemove support for the pre-1.0 bytecode version #1. This will become
Chris Lattner [Wed, 14 Jan 2004 16:44:44 +0000 (16:44 +0000)]
Remove support for the pre-1.0 bytecode version #1.  This will become
the bytecode revision generated by LLVM 1.2.

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

20 years agoProperly update #intervals statistic.
Alkis Evlogimenos [Wed, 14 Jan 2004 10:44:29 +0000 (10:44 +0000)]
Properly update #intervals statistic.

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

20 years agoFix InstCombine/2004-01-13-InstCombineInvokePHI.ll, which also fixes lots
Chris Lattner [Wed, 14 Jan 2004 06:06:08 +0000 (06:06 +0000)]
Fix InstCombine/2004-01-13-InstCombineInvokePHI.ll, which also fixes lots
of C++ programs in Shootout-C++, including lists1 and moments, etc

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

20 years agoDon't pass anything to the IntrinsicLowering class that is not_intrinsic,
Brian Gaeke [Wed, 14 Jan 2004 06:02:53 +0000 (06:02 +0000)]
Don't pass anything to the IntrinsicLowering class that is not_intrinsic,
because that makes it abort. Also, fix a typo in a comment.

This checkin brought to you by the "It only takes about 30 seconds to run
ENABLE_LLI tests on Shootout on zion, even if they all dump core" fund.

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

20 years agonew testcase
Chris Lattner [Wed, 14 Jan 2004 05:53:11 +0000 (05:53 +0000)]
new testcase

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

20 years agoFix check. PHI nodes must be handled specially, of course.
Chris Lattner [Wed, 14 Jan 2004 05:42:52 +0000 (05:42 +0000)]
Fix check.  PHI nodes must be handled specially, of course.

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

20 years agoTighten up verifier checks. The result of an invoke instruction only
Chris Lattner [Wed, 14 Jan 2004 04:25:59 +0000 (04:25 +0000)]
Tighten up verifier checks.  The result of an invoke instruction only
dominates the normal destination, not the exceptional dest (ie, the result
of a call is undefined on an exception)

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

20 years agoMake sure to verify the result before writing out the bytecode file. Not doing
Chris Lattner [Wed, 14 Jan 2004 03:39:46 +0000 (03:39 +0000)]
Make sure to verify the result before writing out the bytecode file.  Not doing
so can cause obscure errors downstream.

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

20 years agofinegrainify namespacification
Chris Lattner [Wed, 14 Jan 2004 03:38:37 +0000 (03:38 +0000)]
finegrainify namespacification

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

20 years agoToggle sense of flag
Chris Lattner [Wed, 14 Jan 2004 02:50:16 +0000 (02:50 +0000)]
Toggle sense of flag

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

20 years agoThe only clients of the slot calculator are now the asmwriter and bcwriter.
Chris Lattner [Wed, 14 Jan 2004 02:49:34 +0000 (02:49 +0000)]
The only clients of the slot calculator are now the asmwriter and bcwriter.
Since this really only makes sense for these two, change hte instance variable
to reflect whether we are writing a bytecode file or not.  This makes it
reasonable to add bcwriter specific stuff to it as necessary.

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

20 years agoFix bug in LiveIntervals::Interval::overlaps and
Alkis Evlogimenos [Wed, 14 Jan 2004 00:20:09 +0000 (00:20 +0000)]
Fix bug in LiveIntervals::Interval::overlaps and
LiveIntervals::Interval::liveAt. Both were considering the live ranges
closed in the end, when they are actually open.

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

20 years agoImprove debugging output.
Alkis Evlogimenos [Wed, 14 Jan 2004 00:09:36 +0000 (00:09 +0000)]
Improve debugging output.

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

20 years agoFix miscomputation of live intervals. The catch is that registers can
Alkis Evlogimenos [Tue, 13 Jan 2004 22:26:14 +0000 (22:26 +0000)]
Fix miscomputation of live intervals. The catch is that registers can
be dead at the defining instruction but can only be killed in
subsequent ones.

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

20 years agoYou know you like Makefiles with fewer variables. Next up on the victim list
Brian Gaeke [Tue, 13 Jan 2004 22:22:19 +0000 (22:22 +0000)]
You know you like Makefiles with fewer variables. Next up on the victim list
is TOOLS, which is how you say LLVMTOOLCURRENT in Oldspeak.

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

20 years agoRemove allocatable registers vector. It is already provided by
Alkis Evlogimenos [Tue, 13 Jan 2004 22:10:43 +0000 (22:10 +0000)]
Remove allocatable registers vector. It is already provided by
LiveVariables.

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

20 years agoGet rid of dead defns of LCC, LCXX, LAS, as per FIXME.
Brian Gaeke [Tue, 13 Jan 2004 22:10:06 +0000 (22:10 +0000)]
Get rid of dead defns of LCC, LCXX, LAS, as per FIXME.

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

20 years agoFix overzealous fixme fixing
Brian Gaeke [Tue, 13 Jan 2004 21:59:51 +0000 (21:59 +0000)]
Fix overzealous fixme fixing

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

20 years agoRemove dead definitions of NATGCC and CP, and dead .tll, .tbc rules.
Brian Gaeke [Tue, 13 Jan 2004 21:56:30 +0000 (21:56 +0000)]
Remove dead definitions of NATGCC and CP, and dead .tll, .tbc rules.

Make should continue even if compilation cmds fail, for the sake of
the nightly tester, so use minuses on them.

Use LLVMAS, LLVMGCC, LLVMGXX instead of LAS, LCC, LCXX (as per FIXME).

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

20 years agoCleanup debugging output.
Alkis Evlogimenos [Tue, 13 Jan 2004 21:53:20 +0000 (21:53 +0000)]
Cleanup debugging output.

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

20 years agoFinegrainify namespacification
Chris Lattner [Tue, 13 Jan 2004 21:27:59 +0000 (21:27 +0000)]
Finegrainify namespacification
Using the SlotCalculator is total overkill for this file, a simple map
will suffice.  Why doesn't this use the NameMangler interface?

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

20 years agoFix output of live intervals to show correctly its closed, open
Alkis Evlogimenos [Tue, 13 Jan 2004 21:17:47 +0000 (21:17 +0000)]
Fix output of live intervals to show correctly its closed, open
ranges, i.e. [a,b)

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

20 years agoRemove unneeded check (with the recent change in live variables a use
Alkis Evlogimenos [Tue, 13 Jan 2004 21:16:25 +0000 (21:16 +0000)]
Remove unneeded check (with the recent change in live variables a use
of a physical register is always dominated by a def).

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

20 years agoIndentation and whitespace cleanups.
Alkis Evlogimenos [Tue, 13 Jan 2004 20:42:08 +0000 (20:42 +0000)]
Indentation and whitespace cleanups.

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

20 years agoFix bug introduced by previous commit: check if fixed intervals
Alkis Evlogimenos [Tue, 13 Jan 2004 20:37:01 +0000 (20:37 +0000)]
Fix bug introduced by previous commit: check if fixed intervals
overlap before adding their spill weight.

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