oota-llvm.git
18 years agoUpgrade in preparation for doxygen 1.4.4. The config file format changed,
Reid Spencer [Mon, 15 May 2006 21:36:13 +0000 (21:36 +0000)]
Upgrade in preparation for doxygen 1.4.4. The config file format changed,
there are new/different css styles to support, and the footer was woefully
out of date.

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

18 years agoImprove comment, patch provided by Vladimir Prus!
Chris Lattner [Mon, 15 May 2006 18:35:02 +0000 (18:35 +0000)]
Improve comment, patch provided by Vladimir Prus!

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

18 years agoUpdate dox, patch by Vladimir Prus!
Chris Lattner [Mon, 15 May 2006 17:26:46 +0000 (17:26 +0000)]
Update dox, patch by Vladimir Prus!

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

18 years agoImprove comments, patch provided by Vladimir Prus!
Chris Lattner [Mon, 15 May 2006 17:25:05 +0000 (17:25 +0000)]
Improve comments, patch provided by Vladimir Prus!

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

18 years agoDoxygenify the comments, bringing the file level comments down to be attached
Reid Spencer [Mon, 15 May 2006 16:12:01 +0000 (16:12 +0000)]
Doxygenify the comments, bringing the file level comments down to be attached
with the class that it documents. Patch suggested by Vladimir Prus.

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

18 years agoRemove some dead code, identified by coverity.
Chris Lattner [Mon, 15 May 2006 05:48:32 +0000 (05:48 +0000)]
Remove some dead code, identified by coverity.

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

18 years agoAdd myself to the credits.
Owen Anderson [Mon, 15 May 2006 05:13:07 +0000 (05:13 +0000)]
Add myself to the credits.

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

18 years agoadded a skeleton of the ARM backend
Rafael Espindola [Sun, 14 May 2006 22:18:28 +0000 (22:18 +0000)]
added a skeleton of the ARM backend

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

18 years agoadded myself to CREDITS.TXT
Rafael Espindola [Sun, 14 May 2006 20:29:25 +0000 (20:29 +0000)]
added myself to CREDITS.TXT

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

18 years agoFree memory allocated by copy_env.
Chris Lattner [Sun, 14 May 2006 19:17:28 +0000 (19:17 +0000)]
Free memory allocated by copy_env.

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

18 years agoprint a nice error if bugpoint gets an error reading inputs. Bug identified
Chris Lattner [Sun, 14 May 2006 19:15:56 +0000 (19:15 +0000)]
print a nice error if bugpoint gets an error reading inputs.  Bug identified
by coverity.

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

18 years agoFix a bug found by inspection.
Chris Lattner [Sun, 14 May 2006 19:11:40 +0000 (19:11 +0000)]
Fix a bug found by inspection.

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

18 years agoimprove comment.
Chris Lattner [Sun, 14 May 2006 19:10:22 +0000 (19:10 +0000)]
improve comment.

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

18 years agoCatch a potentially thrown exception.
Chris Lattner [Sun, 14 May 2006 19:08:39 +0000 (19:08 +0000)]
Catch a potentially thrown exception.

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

18 years agoImprove documentation on throwing, it is not complete still though. :(
Chris Lattner [Sun, 14 May 2006 19:07:07 +0000 (19:07 +0000)]
Improve documentation on throwing, it is not complete still though. :(

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

18 years agoLoadLibraryPermanently can theoretically throw an exception. Do not propagate
Chris Lattner [Sun, 14 May 2006 19:01:55 +0000 (19:01 +0000)]
LoadLibraryPermanently can theoretically throw an exception.  Do not propagate
it out of 'ExecutionEngine::create'.  This fixes a problem reported by coverity.

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

18 years agoBug noticed, by inspection. Filename can be null.
Chris Lattner [Sun, 14 May 2006 19:00:53 +0000 (19:00 +0000)]
Bug noticed, by inspection.  Filename can be null.

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

18 years agoThis function is not documented as throwing an exception and callers don't
Chris Lattner [Sun, 14 May 2006 18:53:09 +0000 (18:53 +0000)]
This function is not documented as throwing an exception and callers don't
handle it.  Just silently fail.

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

18 years agoinverted logic, caught by coverity
Chris Lattner [Sun, 14 May 2006 18:46:52 +0000 (18:46 +0000)]
inverted logic, caught by coverity

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

18 years agoremove some dead code identified by coverity
Chris Lattner [Sun, 14 May 2006 18:45:44 +0000 (18:45 +0000)]
remove some dead code identified by coverity

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

18 years agoDelete memory allocated by CopyEnv
Chris Lattner [Sun, 14 May 2006 18:38:13 +0000 (18:38 +0000)]
Delete memory allocated by CopyEnv

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

18 years agoremove dead var
Chris Lattner [Sun, 14 May 2006 18:34:36 +0000 (18:34 +0000)]
remove dead var

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

18 years agoremove dead variables
Chris Lattner [Sun, 14 May 2006 18:33:57 +0000 (18:33 +0000)]
remove dead variables

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

18 years agoChange token to match asmprinter output
Chris Lattner [Sun, 14 May 2006 18:23:06 +0000 (18:23 +0000)]
Change token to match asmprinter output

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

18 years agoBacking out last check-in for now. It's causing an infinite loop gccas lencode.
Evan Cheng [Sun, 14 May 2006 06:46:03 +0000 (06:46 +0000)]
Backing out last check-in for now. It's causing an infinite loop gccas lencode.

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

18 years agoUpdate comment.
Chris Lattner [Sun, 14 May 2006 02:05:19 +0000 (02:05 +0000)]
Update comment.

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

18 years agoThis is a proper fix for the compiler warning. A termination condition is
Chris Lattner [Sun, 14 May 2006 02:01:22 +0000 (02:01 +0000)]
This is a proper fix for the compiler warning.  A termination condition is
not needed, as it can never be reached: an edge must exist.

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

18 years agoFix an infinite loop bug that Vladimir Prus identified.
Reid Spencer [Sat, 13 May 2006 18:11:32 +0000 (18:11 +0000)]
Fix an infinite loop bug that Vladimir Prus identified.

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

18 years agoAdd a #include <cassert> for situations where Casting.h is used standalone.
Reid Spencer [Sat, 13 May 2006 17:50:38 +0000 (17:50 +0000)]
Add a #include <cassert> for situations where Casting.h is used standalone.
Patch contributed by Vladimir Prus.

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

18 years agoFixing 2006-05-01-SchedCausingSpills.ll; some clean up
Evan Cheng [Sat, 13 May 2006 08:22:24 +0000 (08:22 +0000)]
Fixing 2006-05-01-SchedCausingSpills.ll; some clean up

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

18 years agoRevert an un-intended change
Evan Cheng [Sat, 13 May 2006 05:53:47 +0000 (05:53 +0000)]
Revert an un-intended change

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

18 years agoDon't try to reference uninitialized data. Make sure we can find "nm".
Reid Spencer [Sat, 13 May 2006 02:48:45 +0000 (02:48 +0000)]
Don't try to reference uninitialized data. Make sure we can find "nm".

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

18 years agoFor PR741:
Reid Spencer [Sat, 13 May 2006 02:22:01 +0000 (02:22 +0000)]
For PR741:
Update documentation to reflect current LLVM reality:
  + LLVMAlpha.o, LLVMIA64.o
  - Skeleton, execve, ProfilePaths
Also, regenerate the library dependency information.

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

18 years agoAdd/Sub/Mul are safe to promote here as well. Incrementing a single-bit
Chris Lattner [Sat, 13 May 2006 02:16:08 +0000 (02:16 +0000)]
Add/Sub/Mul are safe to promote here as well.  Incrementing a single-bit
bitfield now gives this code:

_plus:
        lwz r2, 0(r3)
        rlwimi r2, r2, 0, 1, 31
        xoris r2, r2, 32768
        stw r2, 0(r3)
        blr

instead of this:

_plus:
        lwz r2, 0(r3)
        srwi r4, r2, 31
        slwi r4, r4, 31
        addis r4, r4, -32768
        rlwimi r2, r4, 0, 0, 0
        stw r2, 0(r3)
        blr

this can obviously still be improved.

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

18 years agoMerge identical code.
Chris Lattner [Sat, 13 May 2006 02:11:14 +0000 (02:11 +0000)]
Merge identical code.

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

18 years agoImplement simple promotion for cast elimination in instcombine. This is
Chris Lattner [Sat, 13 May 2006 02:06:03 +0000 (02:06 +0000)]
Implement simple promotion for cast elimination in instcombine.  This is
currently very limited, but can be extended in the future.  For example,
we now compile:

uint %test30(uint %c1) {
        %c2 = cast uint %c1 to ubyte
        %c3 = xor ubyte %c2, 1
        %c4 = cast ubyte %c3 to uint
        ret uint %c4
}

to:

_xor:
        movzbl 4(%esp), %eax
        xorl $1, %eax
        ret

instead of:

_xor:
        movb $1, %al
        xorb 4(%esp), %al
        movzbl %al, %eax
        ret

More impressively, we now compile:

struct B { unsigned bit : 1; };
void xor(struct B *b) { b->bit = b->bit ^ 1; }

To (X86/PPC):

_xor:
        movl 4(%esp), %eax
        xorl $-2147483648, (%eax)
        ret
_xor:
        lwz r2, 0(r3)
        xoris r2, r2, 32768
        stw r2, 0(r3)
        blr

instead of (X86/PPC):

_xor:
        movl 4(%esp), %eax
        movl (%eax), %ecx
        movl %ecx, %edx
        shrl $31, %edx
        # TRUNCATE movb %dl, %dl
        xorb $1, %dl
        movzbl %dl, %edx
        andl $2147483647, %ecx
        shll $31, %edx
        orl %ecx, %edx
        movl %edx, (%eax)
        ret

_xor:
        lwz r2, 0(r3)
        srwi r4, r2, 31
        xori r4, r4, 1
        rlwimi r2, r4, 31, 0, 0
        stw r2, 0(r3)
        blr

This implements InstCombine/cast.ll:test30.

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

18 years agoNew testcase for instcombine
Chris Lattner [Sat, 13 May 2006 02:00:07 +0000 (02:00 +0000)]
New testcase for instcombine

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

18 years agoRemove some dead variables.
Chris Lattner [Fri, 12 May 2006 23:35:26 +0000 (23:35 +0000)]
Remove some dead variables.

Fix a nasty bug in the memcmp optimizer where we used the wrong variable!

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

18 years agoRemove dead stuff
Chris Lattner [Fri, 12 May 2006 23:32:01 +0000 (23:32 +0000)]
Remove dead stuff

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

18 years agoFix build breakage :(
Chris Lattner [Fri, 12 May 2006 23:26:11 +0000 (23:26 +0000)]
Fix build breakage :(

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

18 years agoMore coverity fixes
Chris Lattner [Fri, 12 May 2006 21:14:20 +0000 (21:14 +0000)]
More coverity fixes

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

18 years agoDead variable
Chris Lattner [Fri, 12 May 2006 21:12:22 +0000 (21:12 +0000)]
Dead variable

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

18 years agoRemove dead var, fix bad override.
Chris Lattner [Fri, 12 May 2006 21:09:57 +0000 (21:09 +0000)]
Remove dead var, fix bad override.

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

18 years agoDon't use old-style casts. This prevents compiler warnings when CommandLine.h
Reid Spencer [Fri, 12 May 2006 19:20:55 +0000 (19:20 +0000)]
Don't use old-style casts. This prevents compiler warnings when CommandLine.h
is used in projects that have stricter warning control than LLVM. This also
helps us find casts more easily if we ever need to.

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

18 years agoIf the register allocator cannot find a register to spill, try the aliases. If
Evan Cheng [Fri, 12 May 2006 19:07:46 +0000 (19:07 +0000)]
If the register allocator cannot find a register to spill, try the aliases. If
that still fails (because all the register spill weights are inf), just grab
one.

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

18 years agoRemove dead code
Evan Cheng [Fri, 12 May 2006 19:03:56 +0000 (19:03 +0000)]
Remove dead code

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

18 years agoFix accidentally committed patch.
Chris Lattner [Fri, 12 May 2006 18:20:39 +0000 (18:20 +0000)]
Fix accidentally committed patch.

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

18 years agoActually override the right method. :)
Chris Lattner [Fri, 12 May 2006 18:19:25 +0000 (18:19 +0000)]
Actually override the right method. :)

Bug identified by coverity.

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

18 years agoremove dead variable.
Chris Lattner [Fri, 12 May 2006 18:17:25 +0000 (18:17 +0000)]
remove dead variable.

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

18 years agoFix iterator invalidation bug, identified by Coverity.
Chris Lattner [Fri, 12 May 2006 18:13:11 +0000 (18:13 +0000)]
Fix iterator invalidation bug, identified by Coverity.

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

18 years agoFix a hypothetical memory leak, identified by Coverity. In practice, this
Chris Lattner [Fri, 12 May 2006 18:10:12 +0000 (18:10 +0000)]
Fix a hypothetical memory leak, identified by Coverity.  In practice, this
object is never deleted though.

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

18 years agoRemove dead vars
Chris Lattner [Fri, 12 May 2006 18:06:45 +0000 (18:06 +0000)]
Remove dead vars

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

18 years agoremove dead vars
Chris Lattner [Fri, 12 May 2006 18:04:28 +0000 (18:04 +0000)]
remove dead vars

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

18 years agoRemove dead variable
Chris Lattner [Fri, 12 May 2006 18:02:04 +0000 (18:02 +0000)]
Remove dead variable

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

18 years agoComment out dead variables
Chris Lattner [Fri, 12 May 2006 17:57:54 +0000 (17:57 +0000)]
Comment out dead variables

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

18 years agoWhen reading the symbol table, make sure to delete the ArchiveMember
Reid Spencer [Fri, 12 May 2006 17:56:20 +0000 (17:56 +0000)]
When reading the symbol table, make sure to delete the ArchiveMember
created by reading the symbol table.

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

18 years agoRemove dead var
Chris Lattner [Fri, 12 May 2006 17:50:35 +0000 (17:50 +0000)]
Remove dead var

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

18 years agoRemove dead variable
Chris Lattner [Fri, 12 May 2006 17:41:45 +0000 (17:41 +0000)]
Remove dead variable

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

18 years agoremove dead variable.
Chris Lattner [Fri, 12 May 2006 17:33:59 +0000 (17:33 +0000)]
remove dead variable.

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

18 years agoRemove dead variable.
Chris Lattner [Fri, 12 May 2006 17:31:21 +0000 (17:31 +0000)]
Remove dead variable.

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

18 years agoAvoid defining dead result
Chris Lattner [Fri, 12 May 2006 17:29:40 +0000 (17:29 +0000)]
Avoid defining dead result

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

18 years agoRemove dead return value.
Chris Lattner [Fri, 12 May 2006 17:28:36 +0000 (17:28 +0000)]
Remove dead return value.

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

18 years agoCompile:
Chris Lattner [Fri, 12 May 2006 17:03:46 +0000 (17:03 +0000)]
Compile:

        %tmp152 = setgt uint %tmp144, %tmp149           ; <bool> [#uses=1]
        %tmp159 = setlt uint %tmp144, %tmp149           ; <bool> [#uses=1]
        %bothcond2 = or bool %tmp152, %tmp159           ; <bool> [#uses=1]

To setne, not setune, which causes an assertion fault.

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

18 years agoFix PowerPC/2006-05-12-rlwimi-crash.ll
Chris Lattner [Fri, 12 May 2006 16:29:37 +0000 (16:29 +0000)]
Fix PowerPC/2006-05-12-rlwimi-crash.ll

Nate, please verify that if InsertMask is 0, rlwimi shouldn't be used.
This fixes the crash and causes no PPC testsuite regressions.

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

18 years agonew testcase for a recent rlwimi crash.
Chris Lattner [Fri, 12 May 2006 16:28:13 +0000 (16:28 +0000)]
new testcase for a recent rlwimi crash.

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

18 years agoNoop instruction
Evan Cheng [Fri, 12 May 2006 07:47:00 +0000 (07:47 +0000)]
Noop instruction

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

18 years agoUnused instruction
Evan Cheng [Fri, 12 May 2006 07:42:01 +0000 (07:42 +0000)]
Unused instruction

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

18 years agoAdd a method to generate a string representation from a TargetData.
Owen Anderson [Fri, 12 May 2006 07:01:44 +0000 (07:01 +0000)]
Add a method to generate a string representation from a TargetData.

This continues the work on PR 761.

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

18 years agoRefactor a bunch of includes so that TargetMachine.h doesn't have to include
Owen Anderson [Fri, 12 May 2006 06:33:49 +0000 (06:33 +0000)]
Refactor a bunch of includes so that TargetMachine.h doesn't have to include
TargetData.h.  This should make recompiles a bit faster with my current
TargetData tinkering.

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

18 years agoFix some tabbing issues.
Owen Anderson [Fri, 12 May 2006 06:06:55 +0000 (06:06 +0000)]
Fix some tabbing issues.

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

18 years agoBacking out fix for PR770. Need to re-apply it after live range splitting is possible
Evan Cheng [Fri, 12 May 2006 06:06:34 +0000 (06:06 +0000)]
Backing out fix for PR770. Need to re-apply it after live range splitting is possible

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

18 years agoDuh. That could take a long time.
Evan Cheng [Fri, 12 May 2006 06:05:18 +0000 (06:05 +0000)]
Duh. That could take a long time.

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

18 years agoAdd a new constructor to TargetData that builds a TargetData from its
Owen Anderson [Fri, 12 May 2006 05:49:47 +0000 (05:49 +0000)]
Add a new constructor to TargetData that builds a TargetData from its
string representation.

This is part of PR 761.

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

18 years agoTwo simplifications for token factor nodes: simplify tf(x,x) -> x.
Chris Lattner [Fri, 12 May 2006 05:01:37 +0000 (05:01 +0000)]
Two simplifications for token factor nodes: simplify tf(x,x) -> x.
simplify tf(x,y,y,z) -> tf(x,y,z).

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

18 years agoNew scheduling test case.
Evan Cheng [Fri, 12 May 2006 01:59:17 +0000 (01:59 +0000)]
New scheduling test case.

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

18 years agoAdd capability to scheduler to commute nodes for profit.
Evan Cheng [Fri, 12 May 2006 01:58:24 +0000 (01:58 +0000)]
Add capability to scheduler to commute nodes for profit.
If a two-address code whose first operand has uses below, it should be commuted
when possible.

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

18 years agoTypo! How did we commute nodes before?!
Evan Cheng [Fri, 12 May 2006 01:46:26 +0000 (01:46 +0000)]
Typo! How did we commute nodes before?!

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

18 years agoFor extra sanity checking, fill free'd memory with garbage so we know that
Chris Lattner [Fri, 12 May 2006 00:03:12 +0000 (00:03 +0000)]
For extra sanity checking, fill free'd memory with garbage so we know that
people aren't reusing machine code buffers at all.

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

18 years agoFix some bugs in the freelist manipulation code.
Chris Lattner [Thu, 11 May 2006 23:56:57 +0000 (23:56 +0000)]
Fix some bugs in the freelist manipulation code.

Finally, implement ExecutionEngine::freeMachineCodeForFunction.

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

18 years agoRefactor scheduler code. Move register-reduction list scheduler to a
Evan Cheng [Thu, 11 May 2006 23:55:42 +0000 (23:55 +0000)]
Refactor scheduler code. Move register-reduction list scheduler to a
separate file. Added an initial implementation of top-down register pressure
reduction list scheduler.

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

18 years agoSignificantly revamp allocation of machine code to use free lists, real
Chris Lattner [Thu, 11 May 2006 23:08:08 +0000 (23:08 +0000)]
Significantly revamp allocation of machine code to use free lists, real
allocation policies and much more.  All this complexity, and we have no
functionality change, woo! :)

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

18 years agoRefactor some code, making it simpler.
Chris Lattner [Thu, 11 May 2006 17:11:52 +0000 (17:11 +0000)]
Refactor some code, making it simpler.
When doing the initial pass of constant folding, if we get a constantexpr,
simplify the constant expr like we would do if the constant is folded in the
normal loop.

This fixes the missed-optimization regression in
Transforms/InstCombine/getelementptr.ll last night.

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

18 years agoAdd MOV16_rm / MOV32_rm and MOV16_mr / MOV32_mr to isLoadFromStackSlot and isStoreToS...
Evan Cheng [Thu, 11 May 2006 07:33:49 +0000 (07:33 +0000)]
Add MOV16_rm / MOV32_rm and MOV16_mr / MOV32_mr to isLoadFromStackSlot and isStoreToStackSlot

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

18 years agoAlso add super- register class info.
Evan Cheng [Thu, 11 May 2006 07:31:44 +0000 (07:31 +0000)]
Also add super- register class info.

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

18 years agoAlso add super- register classes info.
Evan Cheng [Thu, 11 May 2006 07:30:26 +0000 (07:30 +0000)]
Also add super- register classes info.

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

18 years agoSet weight of zero length intervals to infinite to prevent them from being
Evan Cheng [Thu, 11 May 2006 07:29:24 +0000 (07:29 +0000)]
Set weight of zero length intervals to infinite to prevent them from being
spilled.

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

18 years agoBacking out previous check-in.
Evan Cheng [Thu, 11 May 2006 07:28:16 +0000 (07:28 +0000)]
Backing out previous check-in.

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

18 years agoFix some problems linking stuff in libTarget.
Owen Anderson [Thu, 11 May 2006 03:10:15 +0000 (03:10 +0000)]
Fix some problems linking stuff in libTarget.

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

18 years agoIf the live interval legnth is essentially zero, i.e. in every live range
Evan Cheng [Wed, 10 May 2006 22:30:41 +0000 (22:30 +0000)]
If the live interval legnth is essentially zero, i.e. in every live range
the use follows def immediately, it doesn't make sense to spill it and
hope it will be easier to allocate for this LI.

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

18 years agoUpdate test case
Evan Cheng [Wed, 10 May 2006 19:53:05 +0000 (19:53 +0000)]
Update test case

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

18 years agoTwo changes:
Chris Lattner [Wed, 10 May 2006 19:00:36 +0000 (19:00 +0000)]
Two changes:

1. Implement InstCombine/deadcode.ll by not adding instructions in unreachable
   blocks (due to constants in conditional branches/switches) to the worklist.
   This causes them to be deleted before instcombine starts up, leading to
   better optimization.

2. In the prepass over instructions, do trivial constprop/dce as we go.  This
   has the effect of improving the effectiveness of #1.  In addition, it
   *significantly* speeds up instcombine on test cases with large amounts of
   constant folding code (for example, that produced by code specialization
   or partial evaluation).  In one example, it speeds up instcombine from
   0.0589s to 0.0224s with a release build (a 2.6x speedup).

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

18 years agoNew testcase, check that dead code doesn't pessimize instcombine
Chris Lattner [Wed, 10 May 2006 18:56:04 +0000 (18:56 +0000)]
New testcase, check that dead code doesn't pessimize instcombine

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

18 years agoFix the PowerPC JIT-only failure on UnitTests/Vector/sumarray-dbl, which is
Chris Lattner [Wed, 10 May 2006 06:38:32 +0000 (06:38 +0000)]
Fix the PowerPC JIT-only failure on UnitTests/Vector/sumarray-dbl, which is
really a bad codegen bug that LLC happens to get lucky with. I must chat with
Nate for the proper fix.

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

18 years agoTemplatify RegReductionPriorityQueue
Evan Cheng [Wed, 10 May 2006 06:16:44 +0000 (06:16 +0000)]
Templatify RegReductionPriorityQueue

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

18 years agoAdd alloca/malloc ctors that don't take array sizes.
Chris Lattner [Wed, 10 May 2006 04:38:35 +0000 (04:38 +0000)]
Add alloca/malloc ctors that don't take array sizes.

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

18 years agoAdd an assertion for a common error
Chris Lattner [Wed, 10 May 2006 04:32:43 +0000 (04:32 +0000)]
Add an assertion for a common error

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

18 years agoWatch out for the following case:
Evan Cheng [Wed, 10 May 2006 02:47:57 +0000 (02:47 +0000)]
Watch out for the following case:
1. Use expects a chain output.
2. Node is expanded into multiple target ops.
3. One of the inner node produces a chain, the outer most one doesn't.

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

18 years agoFix a load folding bug. It is exposed by a multi- resulting instructions
Evan Cheng [Wed, 10 May 2006 00:05:46 +0000 (00:05 +0000)]
Fix a load folding bug. It is exposed by a multi- resulting instructions
def : Pat<> pattern.

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

18 years agoFix PR773
Nate Begeman [Tue, 9 May 2006 18:20:51 +0000 (18:20 +0000)]
Fix PR773

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

18 years agoThis method doesn't need to be virtual, thanks to Reid for pointing this out.
Chris Lattner [Tue, 9 May 2006 17:29:17 +0000 (17:29 +0000)]
This method doesn't need to be virtual, thanks to Reid for pointing this out.

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