| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 18368
|
| |
|
|
| |
llvm-svn: 18367
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 ;-)
llvm-svn: 18366
|
| |
|
|
|
|
| |
llvm::llvm::createInternalGlobalMapperPass
llvm-svn: 18365
|
| |
|
|
|
|
| |
Corrected a potential grammary issue.
llvm-svn: 18364
|
| |
|
|
| |
llvm-svn: 18363
|
| |
|
|
|
|
| |
should fix the stale runtime libraries problem.
llvm-svn: 18361
|
| |
|
|
|
|
|
|
|
| |
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.
llvm-svn: 18359
|
| |
|
|
|
|
| |
implementation
llvm-svn: 18358
|
| |
|
|
| |
llvm-svn: 18357
|
| |
|
|
| |
llvm-svn: 18356
|
| |
|
|
|
|
| |
SearchForAddressOfSymbol.
llvm-svn: 18355
|
| |
|
|
|
|
|
|
| |
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
llvm-svn: 18354
|
| |
|
|
| |
llvm-svn: 18353
|
| |
|
|
|
|
| |
more platforms than LLVM supports.
llvm-svn: 18352
|
| |
|
|
|
|
|
| |
changing directory first. Also make sure that we don't attempt to run
config.status if the recheck didn't work.
llvm-svn: 18351
|
| |
|
|
| |
llvm-svn: 18350
|
| |
|
|
| |
llvm-svn: 18349
|
| |
|
|
|
|
| |
* Add instructions about upgrading autoconf
llvm-svn: 18348
|
| |
|
|
| |
llvm-svn: 18347
|
| |
|
|
| |
llvm-svn: 18346
|
| |
|
|
| |
llvm-svn: 18345
|
| |
|
|
| |
llvm-svn: 18344
|
| |
|
|
| |
llvm-svn: 18343
|
| |
|
|
|
|
|
| |
our own library so that it is magically hidden and we don't have to depend
on linking with -lltdl option.
llvm-svn: 18342
|
| |
|
|
|
|
| |
opened as if it was a dynamic library so its symbols can be searched too.
llvm-svn: 18341
|
| |
|
|
|
|
| |
if it was a dynamic library.
llvm-svn: 18340
|
| |
|
|
| |
llvm-svn: 18339
|
| |
|
|
|
|
|
| |
* Document the new "LLVMLIBS=JIT" feature to make building JIT programs
super easy.
llvm-svn: 18338
|
| |
|
|
| |
llvm-svn: 18337
|
| |
|
|
| |
llvm-svn: 18333
|
| |
|
|
| |
llvm-svn: 18332
|
| |
|
|
| |
llvm-svn: 18331
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
llvm-svn: 18330
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Get rid of appending -lbz2 and -lz to ExtraLibs now that we don't need
them any more.
* Fix the dist-check target so that EXTRA_DIST can be defined AFTER the
include of Makefile.common. This is needed because Makefile.common
provides variable definitions that may need to be used in computing the
value of EXTRA_DIST.
* Clean up some "distdir" target output.
llvm-svn: 18329
|
| |
|
|
| |
llvm-svn: 18328
|
| |
|
|
|
|
|
|
|
| |
* organize programs we test for properly
* add new programs needed for documentation generation
* Adjust install paths so llvm stuff doesn't muck up /usr/local or /usr if
$prefix is set to those.
llvm-svn: 18327
|
| |
|
|
|
|
|
| |
* Provide support for ENABLE_DOXYGEN
* New tools that documentation generation requires
llvm-svn: 18326
|
| |
|
|
| |
llvm-svn: 18325
|
| |
|
|
|
|
|
| |
* Implement optional doxygen doc generation
* Implement HTML and doxygen installation
llvm-svn: 18324
|
| |
|
|
| |
llvm-svn: 18323
|
| |
|
|
|
|
| |
branchTO regardless of what type of branch it is.
llvm-svn: 18322
|
| |
|
|
|
|
|
|
| |
* Ensure things installed to same place are all getting there by using a
variable to name that place.
* Make sure missing index.html, images and *.css files get installed.
llvm-svn: 18321
|
| |
|
|
|
|
|
| |
* fix the links to not be in an html subdir as that's not how this gets
installed (anymore).
llvm-svn: 18320
|
| |
|
|
| |
llvm-svn: 18319
|
| |
|
|
|
|
|
| |
* Implement installation of doxygen and html documentation
* Fix it so it works with objdir != srcdir.
llvm-svn: 18318
|
| |
|
|
|
|
| |
* Add an ENVIRONMENT section to describe LLVM_LIB_SEARCH_PATH
llvm-svn: 18317
|
| |
|
|
| |
llvm-svn: 18316
|
| |
|
|
|
|
|
|
| |
This file was originally doxygen.cfg, but it needs to be configured to get
the right srcdir/objdir paths for things. This is needed because building
the doxygen will now be part of the install and dist-check targets.
llvm-svn: 18315
|
| |
|
|
|
|
| |
preserve dependencies in a cycle.
llvm-svn: 18314
|