oota-llvm.git
19 years agoChanges due to code review and new implementation:
Reid Spencer [Mon, 25 Apr 2005 21:20:38 +0000 (21:20 +0000)]
Changes due to code review and new implementation:
* Don't use std::string for the function names, const char* will suffice
* Allow each CallOptimizer to validate the function signature before
  doing anything
* Repeatedly loop over the functions until an iteration produces
  no more optimizations. This allows one optimization to insert a
  call that is optimized by another optimization.
* Implement the ConstantArray portion of the StrCatOptimization
* Provide a template for the MemCpyOptimization
* Make ExitInMainOptimization split the block, not delete everything
  after the return instruction.
(This covers revision 1.3 and 1.4, as the 1.3 comments were botched)

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

19 years agoimplement some more logical compares with constants, so that:
Chris Lattner [Mon, 25 Apr 2005 21:20:28 +0000 (21:20 +0000)]
implement some more logical compares with constants, so that:

int foo1(int x, int y) {
  int t1 = x >= 0;
  int t2 = y >= 0;
  return t1 & t2;
}
int foo2(int x, int y) {
  int t1 = x == -1;
  int t2 = y == -1;
  return t1 & t2;
}

produces:

_foo1:
        or r2, r4, r3
        srwi r2, r2, 31
        xori r3, r2, 1
        blr
_foo2:
        and r2, r4, r3
        addic r2, r2, 1
        li r2, 0
        addze r3, r2
        blr

instead of:

_foo1:
        srwi r2, r4, 31
        xori r2, r2, 1
        srwi r3, r3, 31
        xori r3, r3, 1
        and r3, r2, r3
        blr
_foo2:
        addic r2, r4, 1
        li r2, 0
        addze r2, r2
        addic r3, r3, 1
        li r3, 0
        addze r3, r3
        and r3, r2, r3
        blr

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

19 years agoLots of changes based on review and new functionality:
Reid Spencer [Mon, 25 Apr 2005 21:11:48 +0000 (21:11 +0000)]
Lots of changes based on review and new functionality:
* Use a \1a

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

19 years agoUpdate the test case to handle a few more (degenerate) cases and remove
Reid Spencer [Mon, 25 Apr 2005 21:08:34 +0000 (21:08 +0000)]
Update the test case to handle a few more (degenerate) cases and remove
the restriction that it is an XFAIL because it now passes.

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

19 years agoCodegen x < 0 | y < 0 as (x|y) < 0. This allows us to compile this to:
Chris Lattner [Mon, 25 Apr 2005 21:03:25 +0000 (21:03 +0000)]
Codegen x < 0 | y < 0 as (x|y) < 0.  This allows us to compile this to:

_foo:
        or r2, r4, r3
        srwi r3, r2, 31
        blr

instead of:

_foo:
        srwi r2, r4, 31
        srwi r3, r3, 31
        or r3, r2, r3
        blr

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

19 years agoMake dominates(A,B) work with post dominators. Patch contributed by
Chris Lattner [Mon, 25 Apr 2005 20:50:33 +0000 (20:50 +0000)]
Make dominates(A,B) work with post dominators.  Patch contributed by
Naveen Neelakantam, thanks!

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

19 years agoAdded question about turning off all optimizations. I think this has been asked once...
Tanya Lattner [Mon, 25 Apr 2005 20:36:56 +0000 (20:36 +0000)]
Added question about turning off all optimizations. I think this has been asked once or twice.

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

19 years agoimplement getelementptr.ll:test10
Chris Lattner [Mon, 25 Apr 2005 20:17:30 +0000 (20:17 +0000)]
implement getelementptr.ll:test10

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

19 years agorename fn
Chris Lattner [Mon, 25 Apr 2005 20:17:16 +0000 (20:17 +0000)]
rename fn

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

19 years agonew testcase
Chris Lattner [Mon, 25 Apr 2005 20:17:00 +0000 (20:17 +0000)]
new testcase

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

19 years agoCorrectly handle global-argument aliases induced in main
Chris Lattner [Mon, 25 Apr 2005 19:16:31 +0000 (19:16 +0000)]
Correctly handle global-argument aliases induced in main

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

19 years agoDon't mess up SCC traversal when a node has null edges out of it.
Chris Lattner [Mon, 25 Apr 2005 19:16:17 +0000 (19:16 +0000)]
Don't mess up SCC traversal when a node has null edges out of it.

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

19 years agodocument 'opaque' types
Chris Lattner [Mon, 25 Apr 2005 17:34:15 +0000 (17:34 +0000)]
document 'opaque' types

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

19 years agoAdd feedback from Vikram
Chris Lattner [Mon, 25 Apr 2005 15:47:57 +0000 (15:47 +0000)]
Add feedback from Vikram

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

19 years agoMake sure the target buffer is null terminated so we don't blow up
Reid Spencer [Mon, 25 Apr 2005 15:40:35 +0000 (15:40 +0000)]
Make sure the target buffer is null terminated so we don't blow up
strcat when its called.

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

19 years agoA test case for testing the StrCatOptimizer, currently XFAILed everywhere.
Reid Spencer [Mon, 25 Apr 2005 07:29:30 +0000 (07:29 +0000)]
A test case for testing the StrCatOptimizer, currently XFAILed everywhere.

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

19 years agoPost-Review Cleanup:
Reid Spencer [Mon, 25 Apr 2005 03:59:26 +0000 (03:59 +0000)]
Post-Review Cleanup:
* Fix comments at top of file
* Change algorithm for running the call optimizations from n*n to something
  closer to n.
* Use a hash_map to store and lookup the optimizations since there will
  eventually (or potentially) be a large number of them. This gets lookup
  based on the name of the function to O(1). Each CallOptimizer now has a
  std::string member named func_name that tracks the name of the function
  that it applies to. It is this string that is entered into the hash_map
  for fast comparison against the function names encountered in the module.
* Cleanup some style issues pertaining to iterator invalidation
* Don't pass the Function pointer to the OptimizeCall function because if
  the optimization needs it, it can get it from the CallInst passed in.
* Add the skeleton for a new CallOptimizer, StrCatOptimizer which will
  eventually replace strcat's of constant strings with direct copies.

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

19 years agoUse the %name rather than the "name" format so those familiar with the
Reid Spencer [Mon, 25 Apr 2005 03:18:19 +0000 (03:18 +0000)]
Use the %name rather than the "name" format so those familiar with the
llvm-dis output don't go blind.

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

19 years agoShut GCC 4.0 up about classes that have virtual functions but a non-virtual
Reid Spencer [Mon, 25 Apr 2005 02:55:55 +0000 (02:55 +0000)]
Shut GCC 4.0 up about classes that have virtual functions but a non-virtual
destructor. Just add the do-nothing virtual destructor.

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

19 years agoDeclare a function to create the SimplifyLibCalls pass.
Reid Spencer [Mon, 25 Apr 2005 02:54:00 +0000 (02:54 +0000)]
Declare a function to create the SimplifyLibCalls pass.

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

19 years agoA new pass to provide specific optimizations for certain well-known library
Reid Spencer [Mon, 25 Apr 2005 02:53:12 +0000 (02:53 +0000)]
A new pass to provide specific optimizations for certain well-known library
calls. The pass visits all external functions in the module and determines
if such function calls can be optimized. The optimizations are specific to
the library calls involved. This initial version only optimizes calls to
exit(3) when they occur in main(): it changes them to ret instructions.

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

19 years agoA test case for the the ExitInMain libcall simplification.
Reid Spencer [Mon, 25 Apr 2005 02:50:08 +0000 (02:50 +0000)]
A test case for the the ExitInMain libcall simplification.

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

19 years agoOlder compilers won't like the inline virtual destructor in the header file
Reid Spencer [Mon, 25 Apr 2005 01:01:35 +0000 (01:01 +0000)]
Older compilers won't like the inline virtual destructor in the header file
so we put the destructor in Pass.cpp and make it non-inline.

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

19 years agofix some bugs
Chris Lattner [Mon, 25 Apr 2005 00:38:52 +0000 (00:38 +0000)]
fix some bugs

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

19 years agoFix a thinko in the documentation of the splitBasicBlock method. The branch
Reid Spencer [Mon, 25 Apr 2005 00:31:53 +0000 (00:31 +0000)]
Fix a thinko in the documentation of the splitBasicBlock method. The branch
instruction is added to the original block, not the new block.

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

19 years agoShut GCC 4.0 up about classes with virtual functions but no virtual
Reid Spencer [Sun, 24 Apr 2005 22:27:20 +0000 (22:27 +0000)]
Shut GCC 4.0 up about classes with virtual functions but no virtual
destructor.

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

19 years agoShut GCC 4.0 up when it complains about classes with virtual functions that
Reid Spencer [Sun, 24 Apr 2005 22:20:32 +0000 (22:20 +0000)]
Shut GCC 4.0 up when it complains about classes with virtual functions that
don't have virtual destructors.

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

19 years agoMake this readable for newbies and those who can only understand one set of
Reid Spencer [Sun, 24 Apr 2005 20:56:18 +0000 (20:56 +0000)]
Make this readable for newbies and those who can only understand one set of
grammar rules for the English language.

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

19 years agoextract has been renamed to llvm-extract to avoid conflicting with another tool
Misha Brukman [Sun, 24 Apr 2005 17:46:58 +0000 (17:46 +0000)]
extract has been renamed to llvm-extract to avoid conflicting with another tool

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

19 years agoEliminate cases where we could << by 64, which is undefined in C.
Chris Lattner [Sun, 24 Apr 2005 17:46:05 +0000 (17:46 +0000)]
Eliminate cases where we could << by 64, which is undefined in C.

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

19 years agoThere are still uses for spaces in Makefiles -- to make text line up together,
Misha Brukman [Sun, 24 Apr 2005 17:43:41 +0000 (17:43 +0000)]
There are still uses for spaces in Makefiles -- to make text line up together,
regardless of the tab size/stop settings on the developer side

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

19 years agoextract has been renamed to llvm-extract to avoid conflicting with another tool
Misha Brukman [Sun, 24 Apr 2005 17:36:05 +0000 (17:36 +0000)]
extract has been renamed to llvm-extract to avoid conflicting with another tool

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

19 years agoelisp code to help with LLVM code standards compliance
Misha Brukman [Sun, 24 Apr 2005 17:09:19 +0000 (17:09 +0000)]
elisp code to help with LLVM code standards compliance

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

19 years ago.vimrc file to aid in LLVM coding standards conformance
Misha Brukman [Sun, 24 Apr 2005 17:05:04 +0000 (17:05 +0000)]
.vimrc file to aid in LLVM coding standards conformance

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

19 years agoImplement xor.ll:test21: select (not C), A, B -> select C, B, A
Chris Lattner [Sun, 24 Apr 2005 07:30:14 +0000 (07:30 +0000)]
Implement xor.ll:test21:  select (not C), A, B -> select C, B, A

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

19 years agoTest that xor/select are folded into a select with inverted operands.
Chris Lattner [Sun, 24 Apr 2005 07:28:53 +0000 (07:28 +0000)]
Test that xor/select are folded into a select with inverted operands.

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

19 years agoAllow these methods to take a generic Value* to simplify clients. Use
Chris Lattner [Sun, 24 Apr 2005 07:28:37 +0000 (07:28 +0000)]
Allow these methods to take a generic Value* to simplify clients.  Use
const_cast instead of c casts.

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

19 years agoallow these to take a generic Value*
Chris Lattner [Sun, 24 Apr 2005 07:28:04 +0000 (07:28 +0000)]
allow these to take a generic Value*

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

19 years agoUse getPrimitiveSizeInBits() instead of getPrimitiveSize()*8
Chris Lattner [Sun, 24 Apr 2005 06:59:08 +0000 (06:59 +0000)]
Use getPrimitiveSizeInBits() instead of getPrimitiveSize()*8

Completely rework the 'setcc (cast x to larger), y' code.  This code has
the advantage of implementing setcc.ll:test19 (being more general than
the previous code) and being correct in all cases.

This allows us to unxfail 2004-11-27-SetCCForCastLargerAndConstant.ll,
and close PR454.

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

19 years agounxfail this.
Chris Lattner [Sun, 24 Apr 2005 06:55:40 +0000 (06:55 +0000)]
unxfail this.

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

19 years agoadd a new testcase which occurs in 181.mcf
Chris Lattner [Sun, 24 Apr 2005 06:55:33 +0000 (06:55 +0000)]
add a new testcase which occurs in 181.mcf

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

19 years ago* The aesthetic police is on patrol!!...
Misha Brukman [Sat, 23 Apr 2005 22:35:26 +0000 (22:35 +0000)]
* The aesthetic police is on patrol!!...
* ... but it wasn't so busy as to not smell the roses and doxygenify comments

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

19 years agoAdd a helper method
Chris Lattner [Sat, 23 Apr 2005 22:20:22 +0000 (22:20 +0000)]
Add a helper method

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

19 years agoFix a bug in my previous checkin
Chris Lattner [Sat, 23 Apr 2005 22:01:39 +0000 (22:01 +0000)]
Fix a bug in my previous checkin

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

19 years agoThis file is never referenced
Chris Lattner [Sat, 23 Apr 2005 22:00:26 +0000 (22:00 +0000)]
This file is never referenced

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

19 years agoAdd a method, remove last use of Type.def
Chris Lattner [Sat, 23 Apr 2005 22:00:09 +0000 (22:00 +0000)]
Add a method, remove last use of Type.def

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

19 years agoadd a method, remove a dead #include
Chris Lattner [Sat, 23 Apr 2005 21:59:42 +0000 (21:59 +0000)]
add a method, remove a dead #include

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

19 years agoTypes.def is going away
Chris Lattner [Sat, 23 Apr 2005 21:59:11 +0000 (21:59 +0000)]
Types.def is going away

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

19 years agoEliminate tabs and trailing spaces
Jeff Cohen [Sat, 23 Apr 2005 21:38:35 +0000 (21:38 +0000)]
Eliminate tabs and trailing spaces

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

19 years agoEliminate tabs and trailing spaces
Jeff Cohen [Sat, 23 Apr 2005 21:26:11 +0000 (21:26 +0000)]
Eliminate tabs and trailing spaces

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

19 years agoPropagate eq sets through the bu graphs to the cbu and eq graphs, fixing
Chris Lattner [Sat, 23 Apr 2005 21:11:05 +0000 (21:11 +0000)]
Propagate eq sets through the bu graphs to the cbu and eq graphs, fixing
a crash of the sfv on 188.ammp

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

19 years agoadd a bunch of documentation about the LLVM type resolution machinery
Chris Lattner [Sat, 23 Apr 2005 17:27:36 +0000 (17:27 +0000)]
add a bunch of documentation about the LLVM type resolution machinery

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

19 years agoMake the CBackend actually get included in llc by using USEDLIBS instead of
Reid Spencer [Sat, 23 Apr 2005 17:24:33 +0000 (17:24 +0000)]
Make the CBackend actually get included in llc by using USEDLIBS instead of
USEDLIB as the variable to which "CBackend" is appended. The surrounding
if clause is safe because currently the configure script ensures that the
CBackend target is always added to TARGETS_TO_BUILD. By using a non-hard
coded construct in the makefile, we gain uniformity and the ability to
change the default set of targets by only changing the configure script.

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

19 years agomake an advanced topics section, move symtab to it
Chris Lattner [Sat, 23 Apr 2005 16:10:52 +0000 (16:10 +0000)]
make an advanced topics section, move symtab to it

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

19 years agoThis is not needed
Chris Lattner [Sat, 23 Apr 2005 16:00:27 +0000 (16:00 +0000)]
This is not needed

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

19 years agoadd a search box for the documentation
Chris Lattner [Sat, 23 Apr 2005 15:55:18 +0000 (15:55 +0000)]
add a search box for the documentation

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

19 years agoGeneralize the setcc -> PHI and Select folding optimizations to work with
Chris Lattner [Sat, 23 Apr 2005 15:31:55 +0000 (15:31 +0000)]
Generalize the setcc -> PHI and Select  folding optimizations to work with
any constant RHS, not just a constant integer RHS.  This implements
select.ll:test17

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

19 years agoadd a new testcase
Chris Lattner [Sat, 23 Apr 2005 15:31:03 +0000 (15:31 +0000)]
add a new testcase

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

19 years agoAlways enable the C backend. This fixes a *vast* number of failures on the
Chris Lattner [Sat, 23 Apr 2005 14:36:22 +0000 (14:36 +0000)]
Always enable the C backend.  This fixes a *vast* number of failures on the
testers last night, as llc was not getting the cbe linked in.

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

19 years agoAdd method to return the type this type will be promoted to if it is
Alkis Evlogimenos [Sat, 23 Apr 2005 00:11:21 +0000 (00:11 +0000)]
Add method to return the type this type will be promoted to if it is
passed through a variable argument function.

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

19 years agoMention the --enable-targets= option to configure.
Reid Spencer [Fri, 22 Apr 2005 20:27:33 +0000 (20:27 +0000)]
Mention the --enable-targets= option to configure.

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

19 years ago* Order #includes as per style guide
Misha Brukman [Fri, 22 Apr 2005 19:13:22 +0000 (19:13 +0000)]
* Order #includes as per style guide
* Combine multiple ``std::cerr <<'' statements into one for simplicity

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 18:06:01 +0000 (18:06 +0000)]
Convert tabs to spaces

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

19 years agoHyphenate the adjective `n-bit' when used to describe values and processors
Misha Brukman [Fri, 22 Apr 2005 18:02:52 +0000 (18:02 +0000)]
Hyphenate the adjective `n-bit' when used to describe values and processors

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

19 years agoBuild the `Skeleton' target when building "all" targets
Misha Brukman [Fri, 22 Apr 2005 18:00:34 +0000 (18:00 +0000)]
Build the `Skeleton' target when building "all" targets

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

19 years agoDocument the --enable-targets= feature of the configure script.
Reid Spencer [Fri, 22 Apr 2005 17:58:03 +0000 (17:58 +0000)]
Document the --enable-targets= feature of the configure script.

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

19 years agoSilence gcc-4.0.0 warnings.
Alkis Evlogimenos [Fri, 22 Apr 2005 17:56:01 +0000 (17:56 +0000)]
Silence gcc-4.0.0 warnings.

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 17:54:37 +0000 (17:54 +0000)]
Convert tabs to spaces

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

19 years agoDon't always build CBackend and Skeleton. Make use of the TARGETS_TO_BUILD
Reid Spencer [Fri, 22 Apr 2005 17:32:05 +0000 (17:32 +0000)]
Don't always build CBackend and Skeleton. Make use of the TARGETS_TO_BUILD
parameter instead which will correctly list the set of targets to be built.

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

19 years agoImplement the --enable-targets= feature of the configure script. The make
Reid Spencer [Fri, 22 Apr 2005 17:20:11 +0000 (17:20 +0000)]
Implement the --enable-targets= feature of the configure script. The make
variable TARGETS_TO_BUILD is used to determine which targets in lib/Target
are built and which libraries are linked into llc. This effectively
implements the feature. One item remains: disabling targets in the dejagnu
test suite.

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

19 years agoTwo changes:
Reid Spencer [Fri, 22 Apr 2005 17:14:14 +0000 (17:14 +0000)]
Two changes:
1. Get rid of TOOLLINKOPTS as it is a hold over from llvm-test and only
   used to communicate additional libraries to the linker. The *standard*
   way to do that is with the LIBS variable which this change supports.

2. Allow the TARGETS_TO_BUILD variable to be set from the configuration
   substitution. This is the result of the --enable-target= parameter to
   the configure script.

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

19 years agoMake sure the CBackend is always a target that is built.
Reid Spencer [Fri, 22 Apr 2005 17:06:18 +0000 (17:06 +0000)]
Make sure the CBackend is always a target that is built.

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

19 years agoConsolidate the target selection options into a single option,
Reid Spencer [Fri, 22 Apr 2005 17:02:18 +0000 (17:02 +0000)]
Consolidate the target selection options into a single option,
--enable-target which can take values "all", "host-only" or a comma
separated list of target names (alpha,ia64,powerpc,skeleton,sparc,x86)

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

19 years agokeep track of max depth stats
Andrew Lenharth [Fri, 22 Apr 2005 13:35:18 +0000 (13:35 +0000)]
keep track of max depth stats

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

19 years agoFirst step in avoiding compilation/usage of non-relevant targets. New
Reid Spencer [Fri, 22 Apr 2005 07:27:28 +0000 (07:27 +0000)]
First step in avoiding compilation/usage of non-relevant targets. New
options have been added to the configure script that control which targets
will be used. The options are:

--enable-target-this (default=disabled)
  This will specify that the target corresponding to the build host is
  the target that will be compiled/used. You can't use this with any of
  the other options (they'll be ignored). This is what most people want.

--disable-target-x86 (default=enabled)
  This will prevent the X86 target(s) from being compiled/used.

--disable-target-sparc (default=enabled)
  This will prevent both SparcV8 and SparcV9 from being compiled/used.

--disable-target-powerpc (default=enabled)
  This will prevent the PowerPC target from being compiled/used.

--disable-target-alpha (default=enabled)
  This will prevent the Alpha target from being compiled/used.

--disable-target-ia64 (default=enabled)
  This will prevent the IA64 target from being compiled/used.

Note that without any of these options, the default behavior is to build
all targets, as is the current practice.

All these options do is set up the substititution variable TARGETS_TO_BUILD
which contains the targets that should be compiled/used. The variable is
intended to be used in the makefiles. Those changes will come later.

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

19 years agoUpdated dependence analyzer. Fixed numerous bugs. Same stage scheduling, etc.
Tanya Lattner [Fri, 22 Apr 2005 06:32:48 +0000 (06:32 +0000)]
Updated dependence analyzer. Fixed numerous bugs. Same stage scheduling, etc.

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

19 years agoMalloc/Free have mod/ref effects. Do not allow CSE of function calls that
Chris Lattner [Fri, 22 Apr 2005 05:36:59 +0000 (05:36 +0000)]
Malloc/Free have mod/ref effects.  Do not allow CSE of function calls that
call malloc/free.  This fixes PR555.

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

19 years agoremove 'another common example', which doesn't work with VC++, and indent
Chris Lattner [Fri, 22 Apr 2005 04:49:59 +0000 (04:49 +0000)]
remove 'another common example', which doesn't work with VC++, and indent
another example properly

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

19 years agoEliminate tabs and trailing spaces
Jeff Cohen [Fri, 22 Apr 2005 04:13:13 +0000 (04:13 +0000)]
Eliminate tabs and trailing spaces

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 04:08:30 +0000 (04:08 +0000)]
Convert tabs to spaces

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 04:01:18 +0000 (04:01 +0000)]
Convert tabs to spaces

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 03:46:24 +0000 (03:46 +0000)]
Convert tabs to spaces

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 03:35:49 +0000 (03:35 +0000)]
Convert tabs to spaces

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 03:27:20 +0000 (03:27 +0000)]
Convert tabs to spaces

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

19 years agoConvert tabs to spaces
Misha Brukman [Fri, 22 Apr 2005 03:18:56 +0000 (03:18 +0000)]
Convert tabs to spaces

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

19 years agoAdd the RUN: prefix to the start of the run line so this test doesn't fail.
Reid Spencer [Fri, 22 Apr 2005 02:49:25 +0000 (02:49 +0000)]
Add the RUN: prefix to the start of the run line so this test doesn't fail.
BTW .. isn't the date on this funky? We haven't reachec 2005-05-09 yet???

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

19 years agoChange some old-style casts to C++ style casts to avoid warnings in XPS
Reid Spencer [Fri, 22 Apr 2005 02:31:56 +0000 (02:31 +0000)]
Change some old-style casts to C++ style casts to avoid warnings in XPS
compilation. This change has been waiting in the wings for a long time but
since Misha just did a global change, I figured now was the time to commit
it.

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

19 years agoThere is no =head3. Convert to =head2.
Reid Spencer [Fri, 22 Apr 2005 02:16:19 +0000 (02:16 +0000)]
There is no =head3. Convert to =head2.

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

19 years agoCorrect the documentation to match the program.
Reid Spencer [Fri, 22 Apr 2005 02:12:41 +0000 (02:12 +0000)]
Correct the documentation to match the program.

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

19 years agoRemove trailing whitespace
Misha Brukman [Fri, 22 Apr 2005 00:00:37 +0000 (00:00 +0000)]
Remove trailing whitespace

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 23:48:37 +0000 (23:48 +0000)]
Remove trailing whitespace

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

19 years ago* Remove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 23:38:14 +0000 (23:38 +0000)]
* Remove trailing whitespace
* Convert tabs to spaces

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 23:30:14 +0000 (23:30 +0000)]
Remove trailing whitespace

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 23:13:11 +0000 (23:13 +0000)]
Remove trailing whitespace

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 22:55:34 +0000 (22:55 +0000)]
Remove trailing whitespace

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

19 years ago* Remove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 22:43:08 +0000 (22:43 +0000)]
* Remove trailing whitespace
* Convert tabs to spaces

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 22:36:52 +0000 (22:36 +0000)]
Remove trailing whitespace

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

19 years ago* Remove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 21:48:46 +0000 (21:48 +0000)]
* Remove trailing whitespace
* Convert tabs to spaces

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 21:44:41 +0000 (21:44 +0000)]
Remove trailing whitespace

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

19 years agoRemove trailing whitespace
Misha Brukman [Thu, 21 Apr 2005 21:13:18 +0000 (21:13 +0000)]
Remove trailing whitespace

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