Commit Graph

12185 Commits

Author SHA1 Message Date
Chris Lattner 9b38743684 Add another testcase
llvm-svn: 13833
2004-05-27 17:28:55 +00:00
Reid Spencer c8878edc5a Re-introduce the -q option and make opt always return 0, even if the
optimization pasess fail. This is necessary to avoid breaking feature
tests in the tests suite that depend on this behavior. *sigh*

llvm-svn: 13832
2004-05-27 16:28:54 +00:00
Reid Spencer 09fabea814 Added a "RUN:" line so this file can be executed by TestRunner.sh
llvm-svn: 13829
2004-05-27 08:28:42 +00:00
Reid Spencer 7873671463 Removed the -q option and the default message written to stderr. The
output produces confusing results in TestRunner.sh

llvm-svn: 13828
2004-05-27 08:26:22 +00:00
Chris Lattner d4065a6c94 remove bogus test
llvm-svn: 13827
2004-05-27 07:39:51 +00:00
Chris Lattner 076f7493bf Make the test test what it is supposed to
llvm-svn: 13826
2004-05-27 07:37:45 +00:00
Chris Lattner 97462838b2 The -exprs pass is no longer with LLVM. *sniff*
llvm-svn: 13825
2004-05-27 07:36:08 +00:00
Chris Lattner 0ceb07b09e Correct test. use "not grep" instead of "grep -v"
llvm-svn: 13824
2004-05-27 07:32:25 +00:00
Chris Lattner c6e21fbd5c Implement constant folding of fmod, which is used a lot in povray
llvm-svn: 13823
2004-05-27 07:25:00 +00:00
Chris Lattner 5f1a5bb735 Right, globals aren't values yet..
llvm-svn: 13822
2004-05-27 06:43:37 +00:00
Chris Lattner 06158d140c Restructure call constant folding code a bit to make it simpler
Add support for acos/asin/atan.  188.ammp contains three calls to acos with
constant arguments.  Constant folding it allows elimination of those 3 calls
and three FP divisions of the results.

llvm-svn: 13821
2004-05-27 06:26:28 +00:00
Chris Lattner 8082c74e0a Add a simple pass.
llvm-svn: 13820
2004-05-27 06:13:36 +00:00
Chris Lattner 716793336f Continue the exposition
llvm-svn: 13819
2004-05-27 05:52:10 +00:00
Chris Lattner c2ee70db2d Continue the implementation
llvm-svn: 13818
2004-05-27 05:51:31 +00:00
Chris Lattner f74b2868c8 A few more microsteps
llvm-svn: 13817
2004-05-27 05:51:13 +00:00
Chris Lattner d74befe02a gc_init now gets an argument
llvm-svn: 13816
2004-05-27 05:51:00 +00:00
Chris Lattner 5a4d17bb57 Uhh, that doesn't exist.
llvm-svn: 13815
2004-05-27 05:44:22 +00:00
Chris Lattner 0c4fa93d25 Beta-test moving a header from include/Support into the llvm hierarchy:
it seems to work :)

llvm-svn: 13814
2004-05-27 05:42:33 +00:00
Chris Lattner 278f5152d3 Header file moved
llvm-svn: 13813
2004-05-27 05:41:36 +00:00
Chris Lattner 84647525f6 Header moved
llvm-svn: 13812
2004-05-27 05:37:32 +00:00
Chris Lattner ed317b2a29 Signals.h header moved. Eventually this should move into a lib/System library,
but not right now.

llvm-svn: 13811
2004-05-27 05:31:24 +00:00
Chris Lattner 8e6c1d1a9b Moved header from include/Support/ to include/llvm/System
llvm-svn: 13810
2004-05-27 05:30:18 +00:00
Chris Lattner 1760ccd7b0 Changes to make libSupport build on systems that don't have the wait syscall.
llvm-svn: 13806
2004-05-27 01:20:55 +00:00
Alkis Evlogimenos 67150528d4 Add section on the newly added Instruction and subclasses constructor
variant.

llvm-svn: 13802
2004-05-27 00:57:51 +00:00
John Criswell b82cbbfc70 Only give warnings if the user doesn't have mmap(). This is pretty much
a hack that allows users to fight through a build if they don't have mmap().
When I get into the office, I'll make something better.

llvm-svn: 13801
2004-05-27 00:57:50 +00:00
Alkis Evlogimenos e3260007bc Add constructors that take a BasicBlock to append to, to the rest of
the llvm::Instruction hierarchy.

llvm-svn: 13800
2004-05-27 00:15:23 +00:00
Chris Lattner 52a71340c1 Fix a test that was "broken" by new optimizations. The transformation we
are doing is certainly correct, its just that we didn't have the capability
to do it when the testcase was written (no select instr)

llvm-svn: 13799
2004-05-26 23:51:29 +00:00
Alkis Evlogimenos 0eefdcd73f Do not pass a null pointer if this instruction is not prepended or
appended anywhere.

llvm-svn: 13798
2004-05-26 22:50:28 +00:00
Alkis Evlogimenos af494c5f13 Inline trivial constructors.
llvm-svn: 13797
2004-05-26 22:07:18 +00:00
Reid Spencer 56010e4077 Several clean ups suggested by Chris: remove tabs, make SlotMachine do lazy
initialization so we don't scan large Modules/Functions needlessly, tighten
up restrictions on what can be put in SlotMachine (no Constants that aren't
GlobalValues).

llvm-svn: 13796
2004-05-26 21:56:09 +00:00
Reid Spencer 5b4413cb03 Provide the correct patch for bug 345. The solution is to add a setTypeName
function to llvmAsmParser.y and then use it in the one place in the grammar
that needs it. Also had to make Type::setName public because setTypeName
needs it in order to retain compatibility with setValueName.

llvm-svn: 13795
2004-05-26 21:48:31 +00:00
Reid Spencer ebb1569d38 Tighten up checking on SymbolTable interface to make it illegal to pass a
Type* where a Value* is expected.

llvm-svn: 13794
2004-05-26 21:46:18 +00:00
Alkis Evlogimenos 9f0fdf7482 Refactor common initialization code in private init() functions.
This is a first step in supplying append to basic block constructors
for all instruction types.

llvm-svn: 13793
2004-05-26 21:41:09 +00:00
Alkis Evlogimenos 9e84b503f0 Use one destination constructor for the unconditional branch.
llvm-svn: 13792
2004-05-26 21:38:14 +00:00
Misha Brukman 6d6f276813 Fix spelling of doxygen directive.
llvm-svn: 13791
2004-05-26 17:42:51 +00:00
Chris Lattner 83d067a103 Fix PR344: the incorrect remove was being used.
llvm-svn: 13790
2004-05-26 17:20:52 +00:00
Chris Lattner 6eea16e526 Make the test use the %A type
llvm-svn: 13789
2004-05-26 17:14:49 +00:00
Chris Lattner 1f08746f72 A quick and ugly hack to fix PR345. I used TypeTy specifically to make
Reid cringe :)

llvm-svn: 13788
2004-05-26 17:08:25 +00:00
Chris Lattner cc83417e6c Fix a bug in reid's checkin
llvm-svn: 13787
2004-05-26 16:52:55 +00:00
Reid Spencer 9aed59b2c8 Added a section on the SymbolTable class.
llvm-svn: 13786
2004-05-26 08:41:35 +00:00
Reid Spencer 0aff01a239 Part of bug 122:
This change removes the BuildBytecodeInfo flag from the SlotCalculator
class. This flag was needed to distinguish between the Bytecode/Writer
and the AsmWriter. Now that AsmWriter doesn't use SlotCalculator, we can
remove this flag and simplify some code. Also, some minor name changes
to CachedWriter.h needed to be committed (missed in previous commit).

llvm-svn: 13785
2004-05-26 07:37:11 +00:00
Reid Spencer 16f2f7fba0 Part of bug 122. Removed dependency of AsmWriter on SlotCalculator by
incorporating a significantly simpler "SlotMachine" into this file. The
SlotMachine is tailored for use by only the AsmWriter whose requirements
for slot numbers are vastly different than from the Bytecode/Writer. Code
change passes all Feature and Regression tests.

llvm-svn: 13784
2004-05-26 07:18:52 +00:00
Tanya Lattner 642685a400 Adding scheduling class.
llvm-svn: 13783
2004-05-26 06:27:36 +00:00
Tanya Lattner a066df6bd7 Updating my cvs versions. THis is still in progress and much will be changed.
llvm-svn: 13782
2004-05-26 06:27:18 +00:00
Brian Gaeke 230deea60f Add a (not very meaningful) default constructor for AllocInfo objects.
llvm-svn: 13773
2004-05-25 20:43:47 +00:00
Reid Spencer abac0ef0b7 Put SlotTable.h inclusion back at front of list to be coding standards
compliant. Thanks, Chris.

llvm-svn: 13771
2004-05-25 20:09:05 +00:00
Reid Spencer d936d812bc Change the install-includes target to completely ignore the llvm/Internal
directory. Headers located there are not public to LLVM but are shared
between LLVM modules.

llvm-svn: 13769
2004-05-25 20:01:25 +00:00
Reid Spencer 6244bc7831 Make the constructor explicit so we can't implicitly convert bool to
SlotTable.

llvm-svn: 13766
2004-05-25 19:09:25 +00:00
Reid Spencer 37dd30c00a Make some improvements suggested by Chris.
llvm-svn: 13765
2004-05-25 19:03:21 +00:00
Reid Spencer 4feb245a31 Adding the initial implementation of the SlotTable class. This class is
the Abstract Data Type that holds slot number values and associates them
with Type* and Value*. The SlotTable is simply the holder of the slot
numbers and provides a controlled interface for building the table. It does
not enforce any particular idiom or functionality for manipulating the slot
numbers.

This is part of bug_122. The SlotCalculator and SlotMachine classes will
follow.

llvm-svn: 13764
2004-05-25 18:44:51 +00:00