aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Make getNumBackEdges more efficientChris Lattner2003-10-121-7/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9063 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename loop preheaders pass to loop simplifyChris Lattner2003-10-124-5/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9061 91177308-0d34-0410-b5e6-96231b3b80d8
* File is renamed to LoopSimplify.cppChris Lattner2003-10-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9059 91177308-0d34-0410-b5e6-96231b3b80d8
* First step in renaming the preheaders pass to loopsimplifyChris Lattner2003-10-121-16/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9058 91177308-0d34-0410-b5e6-96231b3b80d8
* The preheader insertion pass only depends on the CFG. Mark it as such, whichChris Lattner2003-10-121-1/+2
| | | | | | | allows GCCAS to only run it once. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9056 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename methodChris Lattner2003-10-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9055 91177308-0d34-0410-b5e6-96231b3b80d8
* * Spell "necessary" correctlyChris Lattner2003-10-122-6/+48
| | | | | | | | | | | | * Print floating point values using C99 hexadecimal style FP if possible. This increases the number of floating point constants that may be emitted inline, and improves precision for global variable initializers which can not be emitted in integer form. This fixes the Olden/Power benchmark with the CBE!!!! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9052 91177308-0d34-0410-b5e6-96231b3b80d8
* * Be TBAA safeChris Lattner2003-10-122-64/+118
| | | | | | | | | | | * Fix isFPCSafeToPrint to find more constants safe to print, which it was failing because ftostr was padding with leading space characters. * Scan the entire module for global constants instead of each function at a time. This has the advantage of allowing us to emit constants at global scope instead of function scope. This speeds FP programs quite a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9048 91177308-0d34-0410-b5e6-96231b3b80d8
* Make mmap's fd for anonymous memory acquisition default to -1, except onBrian Gaeke2003-10-111-2/+7
| | | | | | | | Linux. This is consistent with what FreeBSD and Solaris both want. This makes the JIT work on FreeBSD 5.1-RELEASE. Whee. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9045 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't include "Config/stdlib.h".Brian Gaeke2003-10-102-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9037 91177308-0d34-0410-b5e6-96231b3b80d8
* Include <cctype> and <cstdlib> instead of <ctype.h> and "Config/stdlib.h".Brian Gaeke2003-10-101-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9036 91177308-0d34-0410-b5e6-96231b3b80d8
* Include <cstdio> instead of <stdio.h>.Brian Gaeke2003-10-102-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9032 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't include Config/stdio.h or <stdio.h>.Brian Gaeke2003-10-105-6/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9031 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling.Misha Brukman2003-10-1034-72/+73
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9027 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling/grammar.Misha Brukman2003-10-107-17/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9023 91177308-0d34-0410-b5e6-96231b3b80d8
* * Tabs to spacesMisha Brukman2003-10-101-8/+16
| | | | | | | | * Doxygenified function comments * Added FIXMEs to solicit documentation for other functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9022 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling.Misha Brukman2003-10-102-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9021 91177308-0d34-0410-b5e6-96231b3b80d8
* * Doxygenified commentsMisha Brukman2003-10-102-16/+16
| | | | | | | | * Wrap code at 80 columns * Ordered includes according to LLVM style guide git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9020 91177308-0d34-0410-b5e6-96231b3b80d8
* Never set any signal handlers.Brian Gaeke2003-10-101-37/+2
| | | | | | | Never call setjmp(), longjmp() or strsignal(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9014 91177308-0d34-0410-b5e6-96231b3b80d8
* Rewrite head-of-file comment.Brian Gaeke2003-10-101-14/+16
| | | | | | | | | | In lookupFunction(): Change to use "F" for Function argument instead of ancient "M". Remove commented-out code. Change to use GetAddressOfSymbol instead of dlsym. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9013 91177308-0d34-0410-b5e6-96231b3b80d8
* Change to use GetAddressOfSymbol instead of dlsym.Brian Gaeke2003-10-102-18/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9012 91177308-0d34-0410-b5e6-96231b3b80d8
* Change to use LinkDynamicObject instead of dlopen.Brian Gaeke2003-10-101-3/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9011 91177308-0d34-0410-b5e6-96231b3b80d8
* Change to use strtoul instead of strtoll.Brian Gaeke2003-10-101-2/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9010 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixing the spelling of this filename.Misha Brukman2003-10-101-669/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9009 91177308-0d34-0410-b5e6-96231b3b80d8
* Add my abstracted dynamic linker support files.Brian Gaeke2003-10-101-0/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9008 91177308-0d34-0410-b5e6-96231b3b80d8
* Reserve space for PHI operandsChris Lattner2003-10-101-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9007 91177308-0d34-0410-b5e6-96231b3b80d8
* Ok, the "fix" for this is to do a real associative container. Symbol tablesChris Lattner2003-10-101-15/+11
| | | | | | | | are ordered by name, not by slot, so the previous solution wasn't any good. On a large testcase, this reduces time to parse from 2.17s to 1.58s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9002 91177308-0d34-0410-b5e6-96231b3b80d8
* Accept 'weak' as a linkage type. For now, just turn it into linkonce linkageChris Lattner2003-10-102-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8998 91177308-0d34-0410-b5e6-96231b3b80d8
* Add better checkingChris Lattner2003-10-101-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8996 91177308-0d34-0410-b5e6-96231b3b80d8
* Another 10% performance improvement by not using replaceAllUsesWithChris Lattner2003-10-091-13/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8994 91177308-0d34-0410-b5e6-96231b3b80d8
* Reserve space for PHI nodes when we read them in. This provides a VERYChris Lattner2003-10-091-0/+1
| | | | | | | tasty 15% speedup on the testcase from Bill. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8993 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the version of getValue that takes the type plane instead of the typeChris Lattner2003-10-092-17/+18
| | | | | | | if possible. This provides a consistent 8.5% speedup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8991 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass a vector around to reduce dynamic allocationChris Lattner2003-10-093-13/+17
| | | | | | | Throw the RawInst class in an anon namespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8990 91177308-0d34-0410-b5e6-96231b3b80d8
* Change getConstantValue to throw an exception on error, not return nullChris Lattner2003-10-092-10/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8988 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not read past the end of the contained type listChris Lattner2003-10-091-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8986 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove potentially N^2 algorithm from symbol table reader. No speedupChris Lattner2003-10-091-5/+13
| | | | | | | in practice though git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8985 91177308-0d34-0410-b5e6-96231b3b80d8
* Major refactoring of the bytecode reader. This includes the followingChris Lattner2003-10-094-315/+171
| | | | | | | | | | | | | | | | changes: * BytecodeReader::getType(...) used to return a null pointer on error. This was only checked about half the time. Now we convert it to throw an exception, and delete the half that checked for error. This was checked in before, but psmith crashed and lost the change :( * insertValue no longer returns -1 on error, so callers don't need to check for it. * Substantial rewrite of InstructionReader.cpp, to use more efficient, simpler, data structures. This provides another 5% speedup. This also makes the code much easier to read and understand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8984 91177308-0d34-0410-b5e6-96231b3b80d8
* Significantly clean up parsing of instructions. This exceptionizes andChris Lattner2003-10-093-144/+106
| | | | | | | | simplifies the control flow a bit. This provides a small (~3%) speedup, but it's primarily a cleanup exercise. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8983 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate the instruction placeholder. Simplify a bunch of code.Chris Lattner2003-10-092-15/+1
| | | | | | | This results in no significant speedup, but does provide simpler code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8980 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate the old LateResolveValues data structure, replacing it with aChris Lattner2003-10-092-25/+27
| | | | | | | | | | | | | | new, simpler, ForwardReferences data structure. This is just the first simple replacement, subsequent changes will improve the code more. This simple change improves the performance of loading a file from HDF5 (contributed by Bill) from 2.36s to 1.93s, a 22% improvement. This presumably has to do with the fact that we only create ONE placeholder for a particular forward referenced values, and also may be because the data structure is much simpler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8979 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a dead methodChris Lattner2003-10-092-12/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8978 91177308-0d34-0410-b5e6-96231b3b80d8
* This patch substantially simplifies and cleans up handling of basic blocksChris Lattner2003-10-083-60/+84
| | | | | | | | | | | | | | in the bytecode parser. Before we tried to shoehorn basic blocks into the "getValue" code path with other types of values. For a variety of reasons this was a bad idea, so this patch separates it out into its own data structure. This simplifies the code, makes it fit in 80 columns, and is also much faster. In a testcase provided by Bill, which has lots of PHI nodes, this patch speeds up bytecode parsing from taking 6.9s to taking 2.32s. More speedups to follow later. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8977 91177308-0d34-0410-b5e6-96231b3b80d8
* Inline the postResolveValues method. It was poorly named anywayChris Lattner2003-10-082-34/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8976 91177308-0d34-0410-b5e6-96231b3b80d8
* Various cleanups and simplifications. This speeds up reading a bytecode fileChris Lattner2003-10-083-61/+57
| | | | | | | Bill gave me from 8.69s to 6.90s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8971 91177308-0d34-0410-b5e6-96231b3b80d8
* Destroy allocated resources on exception.Misha Brukman2003-10-081-3/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8969 91177308-0d34-0410-b5e6-96231b3b80d8
* Make more error messages have gccld's name in them.Brian Gaeke2003-10-081-4/+6
| | | | | | | Add a newline after "Cannot find <library>". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8968 91177308-0d34-0410-b5e6-96231b3b80d8
* Update commentChris Lattner2003-10-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8965 91177308-0d34-0410-b5e6-96231b3b80d8
* Use a set to keep track of which edges have been noticed as executable alreadyChris Lattner2003-10-081-15/+27
| | | | | | | | to avoid reprocessing PHI nodes needlessly. This speeds up the big bad PHI testcase 43%: from 104.9826 to 73.5157s git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8964 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor fixes here and thereChris Lattner2003-10-081-22/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8963 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid building data structures we don't really need. This improves the runtimeChris Lattner2003-10-081-10/+39
| | | | | | | | | of a test that Bill Wendling sent me from 228.5s to 105s. Obviously there is more improvement to be had, but this is a nice speedup which should be "felt" by many programs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8962 91177308-0d34-0410-b5e6-96231b3b80d8