Brian Gaeke
cb7a76283b
Update list of failing benchmarks.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18384 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:15:44 +00:00
Brian Gaeke
9e0b9028c7
If we're about to emit something like:
...
%f0 = fmovs %f0
%f1 = fmovs %f1
then just delete the FpMOVD pseudo-instruction instead. Also, add
statistics and debug printouts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18383 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:15:15 +00:00
Reid Spencer
0fcb9410b9
Add a check for the tclsh program needed by dejagnu. This can have weird
...
names that have version numbers in it so this macro, DJ_AC_PATH_TCLSH will
make the necessary checks. The makefile variable TCLSH is set to the path
found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18382 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 08:11:54 +00:00
Chris Lattner
0f535c6fa8
Squelch warning
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18381 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:47:34 +00:00
Chris Lattner
7d66434023
This passes on darwin now
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18380 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:38:41 +00:00
Chris Lattner
0284628e8e
Fix several bugs in 'op x, imm' handling. Foremost is that we now emit
...
addi r3, r3, -1
instead of
addi r3, r3, 1
for 'sub int X, 1'.
Secondarily, this fixes several cases where we could crash given an unsigned
constant. And fixes a couple of minor missed optimization cases, such as
xor X, ~0U -> not X
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18379 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:30:20 +00:00
Reid Spencer
a7a5cc889c
Up the compression threshold to 64K so we avoid it for all but the largest
...
bytecode files. This should help linking substantially.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18378 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:13:34 +00:00
Chris Lattner
5a85d9c664
Fix test/Regression/Transforms/LICM/2004-09-14-AliasAnalysisInvalidate.llx
...
This only fails on darwin or on X86 under valgrind.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18377 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 07:01:15 +00:00
Chris Lattner
35f2bbe8c6
Fix CodeGen/PowerPC/2004-11-30-shr-var-crash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18376 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:40:04 +00:00
Chris Lattner
aac2d44bc3
New testcase that crashes the PPC BE
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18375 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:39:45 +00:00
Chris Lattner
e74ed0d53b
Fix test/Regression/CodeGen/PowerPC/2004-11-29-ShrCrash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18374 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:36:11 +00:00
Chris Lattner
d510293e24
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18373 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:35:52 +00:00
Tanya Lattner
b761433e81
Adding timeout for a test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18372 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:29:45 +00:00
Chris Lattner
7747040410
Fix test/Regression/CodeGen/PowerPC/2004-11-30-shift-crash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18371 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:29:10 +00:00
Chris Lattner
93e6d8329c
New testcase that crashes the PPC backend
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18370 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 06:28:53 +00:00
Chris Lattner
6f9e571529
Alkis noticed that this variable is dead. Thanks!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18369 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 04:01:44 +00:00
Chris Lattner
38f1455393
Add method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18368 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 02:51:53 +00:00
Chris Lattner
8cca1a7cbc
New testcase for simplifycfg
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18367 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 00:31:16 +00:00
Chris Lattner
37dc938bbe
If we have something like this:
...
if (x) {
code
...
} else {
code
...
}
Turn it into:
code
if (x) {
...
} else {
...
}
This reduces code size and in some common cases allows us to completely
eliminate the conditional. This turns several if/then/else blocks in loops
into straightline code in 179.art, turning the loops into single basic blocks
(good for modsched even!).
Maybe now brg will leave me alone ;-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18366 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 00:29:14 +00:00
Chris Lattner
ee8c9ad8d2
Remove extraneous namespacification. In particular, don't define llvm::llvm::createInternalGlobalMapperPass
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18365 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-30 00:22:59 +00:00
John Criswell
6e35eda519
Fix a typo.
...
Corrected a potential grammary issue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18364 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 21:46:29 +00:00
Chris Lattner
8a9193927a
Allow hoisting loads of globals and alloca's in conditionals.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18363 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 21:26:12 +00:00
Chris Lattner
478b3b42e2
Make built bytecode libraries depend on gccas/gccld as appropriate. This
...
should fix the stale runtime libraries problem.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18361 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 19:47:58 +00:00
Reid Spencer
5507eabec5
Fix two bugs:
...
1. Nothing should happen on "make all". Doc generation is quick, but we
don't want to do it unless we're installing.
2. Correct a dependency for the *.ps files .. didn't notice this before
because of cruft in my directory. It failed on a clean build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18359 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 14:46:29 +00:00
Reid Spencer
e934219e77
Functionality moved to portable lib/System/DynamicLibrary.cpp
...
implementation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18358 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 14:11:41 +00:00
Reid Spencer
df5a37efc9
Use System/DynamicLibrary instead of Support/DynamicLinker
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18357 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 14:11:29 +00:00
Reid Spencer
737459df79
Use System/DynamicLibrary instead of Support/DynamicLinker to implement.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18356 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 14:07:46 +00:00
Reid Spencer
19cd4a9e6b
Implement two new functions: LoadLibraryPermanently and
...
SearchForAddressOfSymbol.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18355 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 13:33:28 +00:00
Reid Spencer
b0b0ea07bb
Add in some methods for use by the JIT. LoadLibraryPermanently brings the
...
library into the address space permanently. SearchForAddressOfSymbol looks
in all previously permanently loaded libraries and any currently open
libraries for a symbol, instead of just one library like GetAddressOfSymbol
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18354 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 13:27:56 +00:00
Reid Spencer
a564845f83
Shared library extension is now in LTDL_SHLIB_EXT
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18353 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:40:21 +00:00
Reid Spencer
29ae1777c1
We just use ltdl's implementation for this abstraction now. Its portable to
...
more platforms than LLVM supports.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18352 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:39:10 +00:00
Reid Spencer
7d277000af
Allow reconfig from any directory, not just the top build directory, by
...
changing directory first. Also make sure that we don't attempt to run
config.status if the recheck didn't work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18351 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:37:44 +00:00
Reid Spencer
8c8af327b8
Changes resulting from AC_LIB_LTDL usage.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18350 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:36:16 +00:00
Reid Spencer
2bc7bd5c88
* Implement embedding libltdl into LLVM which required some rearranging.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18349 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:29:58 +00:00
Reid Spencer
8baa775d00
* Update instructions about upgrading libtool
...
* Add instructions about upgrading autoconf
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18348 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:28:47 +00:00
Reid Spencer
6ab9b4cb1d
Don't include ltdl.h any more. Its nested in lib/System now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18347 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:12:11 +00:00
Reid Spencer
58c8ee1537
Mods for compilation with llvm.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18346 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:04:27 +00:00
Reid Spencer
9c16ed5aea
Original version of ltdl.h from libtool 1.5.10
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18345 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:02:48 +00:00
Reid Spencer
535af2be27
Original version of ltdl.c from libtool 1.5.10
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18344 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 12:02:25 +00:00
Reid Spencer
5252d95695
Converted with autoupdate for autoconf 2.50 -> 2.59 differences.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18343 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 11:27:12 +00:00
Reid Spencer
2197262119
This file contains macros that allow us to incorporate the ltdl source into
...
our own library so that it is magically hidden and we don't have to depend
on linking with -lltdl option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18342 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 10:56:45 +00:00
Reid Spencer
441cc2ab01
Implement the default constructor which causes the current program to be
...
opened as if it was a dynamic library so its symbols can be searched too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18341 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 10:39:46 +00:00
Reid Spencer
7a9369065d
Make the default constructor cause the program's symbols to be loaded as
...
if it was a dynamic library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18340 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 10:38:54 +00:00
Reid Spencer
6f14a5b486
Make it HTML 4.01 Strict compliant.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18339 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 07:47:16 +00:00
Reid Spencer
31ce7fb6e1
* Document how to turn on doxygen documentation generation
...
* Document the new "LLVMLIBS=JIT" feature to make building JIT programs
super easy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18338 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 07:44:51 +00:00
Reid Spencer
aadc41860d
No longer necessary, moved Makefile.rules
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18337 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 07:17:31 +00:00
Reid Spencer
8f631784f7
Use LLVMLIBS=JIT to get JIT libraries
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18333 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 07:17:18 +00:00
Reid Spencer
7c787c9355
Incorporate tools/Makefile.JIT
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18332 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 07:17:07 +00:00
Reid Spencer
f00b54058b
Make sure the program's symbols can be dlsym'd as well.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18331 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 06:23:19 +00:00
Chris Lattner
928b47ae2e
Revamp long/ulong comparisons to use a much more efficient sequence (thanks
...
to Brian and the Sun compiler for pointing out that the obvious works :)
This also enables folding all long comparisons into setcc and branch
instructions: before we could only do == and !=
For example, for:
void test(unsigned long long A, unsigned long long B) {
if (A < B) foo();
}
We now generate:
test:
subl $4, %esp
movl %esi, (%esp)
movl 8(%esp), %eax
movl 12(%esp), %ecx
movl 16(%esp), %edx
movl 20(%esp), %esi
subl %edx, %eax
sbbl %esi, %ecx
jae .LBBtest_2 # UnifiedReturnBlock
.LBBtest_1: # then
call foo
movl (%esp), %esi
addl $4, %esp
ret
.LBBtest_2: # UnifiedReturnBlock
movl (%esp), %esi
addl $4, %esp
ret
Instead of:
test:
subl $12, %esp
movl %esi, 8(%esp)
movl %ebx, 4(%esp)
movl 16(%esp), %eax
movl 20(%esp), %ecx
movl 24(%esp), %edx
movl 28(%esp), %esi
cmpl %edx, %eax
setb %al
cmpl %esi, %ecx
setb %bl
cmove %ax, %bx
testb %bl, %bl
je .LBBtest_2 # UnifiedReturnBlock
.LBBtest_1: # then
call foo
movl 4(%esp), %ebx
movl 8(%esp), %esi
addl $12, %esp
ret
.LBBtest_2: # UnifiedReturnBlock
movl 4(%esp), %ebx
movl 8(%esp), %esi
addl $12, %esp
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18330 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 05:55:24 +00:00