summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Make this work on systems where size_t == unsigned and where they are notTanya Lattner2005-01-291-6/+6
| | | | | | the same. llvm-svn: 19929
* Make this work on systems where size_t is not the same as unsigned.Tanya Lattner2005-01-291-0/+8
| | | | llvm-svn: 19928
* Unbreak the build :(Chris Lattner2005-01-291-1/+0
| | | | llvm-svn: 19926
* adjust to ilist changes.Chris Lattner2005-01-292-5/+4
| | | | llvm-svn: 19924
* Adjust to ilist changes.Chris Lattner2005-01-293-5/+5
| | | | llvm-svn: 19923
* This file was schizophrenic when it came to representing sizes. In someChris Lattner2005-01-291-44/+45
| | | | | | | | | | cases it represented them as 'unsigned's, which are not enough for 64-bit hosts. In other cases, it represented them as uint64_t's, which are inefficient for 32-bit hosts. This patch unifies all of the sizes to use size_t instead. llvm-svn: 19918
* After reading in a bc file, trim the resultant buffer down to what weChris Lattner2005-01-291-2/+12
| | | | | | really need. This reduces 4M of memory consumption reading 176.gcc. llvm-svn: 19916
* Finegrainify namespacificationChris Lattner2005-01-291-12/+14
| | | | llvm-svn: 19915
* first step towards a correct and complete stack. also add some forms for ↵Andrew Lenharth2005-01-294-12/+78
| | | | | | things that were getting stuck in the nightly tester. llvm-svn: 19914
* Due to previous simplifications, we can simplify the data structures beingChris Lattner2005-01-291-35/+36
| | | | | | used here. llvm-svn: 19913
* Properly handle volatile.Chris Lattner2005-01-291-9/+11
| | | | llvm-svn: 19912
* Remove some useless map operations. Loads/stores that are in the sameChris Lattner2005-01-291-10/+0
| | | | | | BB as the load are not included in the Cand* sets at all. llvm-svn: 19911
* Before doing expensive global analysis, check to make sure the pointer isChris Lattner2005-01-291-46/+50
| | | | | | | not invalidated on entry and on exit of the block. This fixes some N^2 behavior in common cases, and speeds up gcc another 5% to 22.35s. llvm-svn: 19910
* Minor simplification/speedup. Replaces a set lookup with a pointer comparison.Chris Lattner2005-01-291-4/+3
| | | | | | This speeds up 176.gcc from 25.73s to 23.48s, which is 9.5% llvm-svn: 19907
* Eliminate generality that is not buying us anything. In particular, thisChris Lattner2005-01-291-32/+13
| | | | | | | | | | | | | | | | | | | will cause us to miss cases where the input pointer to a load could be value numbered to another load. Something like this: %X = load int* %P1 %Y = load int* %P2 Those are obviously the same if P1/P2 are the same. The code this patch removes attempts to handle that. However, since GCSE iterates, this doesn't actually buy us anything: GCSE will first replace P1 or P2 with the other one, then the load can be value numbered as equal. Removing this code speeds up gcse a lot. On 176.gcc in debug mode, this speeds up gcse from 29.08s -> 25.73s, a 13% savings. llvm-svn: 19906
* If we see:Chris Lattner2005-01-291-4/+3
| | | | | | | | | %A = alloca int %V = load int* %A value number %V to undef, not 0. llvm-svn: 19905
* Memory used is a delta between memuse at the start of the time and theChris Lattner2005-01-291-3/+2
| | | | | | memuse at the end, thus it is signed. llvm-svn: 19904
* Make sure that we always grow a multiple of 2 operands.Chris Lattner2005-01-291-2/+3
| | | | llvm-svn: 19902
* Adjust to changes in instruction interfaces.Chris Lattner2005-01-293-10/+11
| | | | llvm-svn: 19900
* Switchinst takes a hint for the number of cases it will have.Chris Lattner2005-01-291-1/+1
| | | | llvm-svn: 19899
* switchinst ctor now takes a hint for the number of cases that it will have.Chris Lattner2005-01-292-3/+3
| | | | llvm-svn: 19898
* Adjust Valuehandle to hold its operand directly in it.Chris Lattner2005-01-292-7/+7
| | | | llvm-svn: 19897
* Finegrainify namespacification.Chris Lattner2005-01-292-24/+27
| | | | | | Adjust TmpInstruction to work with the new User model. llvm-svn: 19896
* add namespace qualifierChris Lattner2005-01-291-1/+2
| | | | llvm-svn: 19895
* Adjust to changes in User class and minor changes in instruction ctors.Chris Lattner2005-01-292-21/+25
| | | | llvm-svn: 19894
* Adjust to slight changes in instruction interfaces.Chris Lattner2005-01-291-3/+3
| | | | llvm-svn: 19893
* Adjust to changes in User class.Chris Lattner2005-01-294-18/+18
| | | | llvm-svn: 19892
* Merge InstrTypes.cpp into this fileChris Lattner2005-01-291-193/+424
| | | | | | | | Adjust to changes in the User class, operand handling is very different. PHI node and switch statements must handle explicit resizing of operand lists. llvm-svn: 19891
* Adjust to changes in User class. Aggregate constants now must explicitlyChris Lattner2005-01-291-46/+81
| | | | | | manage their operands. llvm-svn: 19890
* This file is now merged into Instructions.cppChris Lattner2005-01-291-64/+0
| | | | llvm-svn: 19889
* fix ExprMap, partially teach about add longAndrew Lenharth2005-01-281-32/+85
| | | | llvm-svn: 19882
* Fix a nasty thinko in my previous commit.Chris Lattner2005-01-281-1/+1
| | | | llvm-svn: 19881
* Alpha doesn't have a native f32 extload instruction.Chris Lattner2005-01-281-1/+5
| | | | llvm-svn: 19880
* implement legalization of truncates whose results and sources need to beChris Lattner2005-01-281-2/+5
| | | | | | truncated, e.g. (truncate:i8 something:i16) on a 32 or 64-bit RISC. llvm-svn: 19879
* Get alpha working with memset/memcpy/memmoveChris Lattner2005-01-281-5/+29
| | | | llvm-svn: 19878
* * add some DEBUG statementsChris Lattner2005-01-281-3/+10
| | | | | | | | | | | | | | | | * Properly compile this: struct a {}; int test() { struct a b[2]; if (&b[0] != &b[1]) abort (); return 0; } to 'return 0', not abort(). llvm-svn: 19875
* Fix ConstProp/2005-01-28-SetCCGEP.ll: indexing over zero sized elements doesChris Lattner2005-01-281-5/+36
| | | | | | not change the address. llvm-svn: 19874
* fix ExprMap and constant check in setccAndrew Lenharth2005-01-281-4/+5
| | | | llvm-svn: 19870
* move FP into it's own selectAndrew Lenharth2005-01-281-191/+167
| | | | llvm-svn: 19867
* CopyFromReg produces two values. Make sure that we remember that both areChris Lattner2005-01-281-1/+8
| | | | | | legalized, and actually return the correct result when we legalize the chain first. llvm-svn: 19866
* Remove this code as it is currently completely broken and unmaintained.Chris Lattner2005-01-289-2681/+0
| | | | | | | | | | If needed, this can be resurrected from CVS. Note that several of the interfaces (e.g. the IPModRef ones) are supersumed by generic AliasAnalysis interfaces that have been written since this code was developed (and they are not DSA specific). llvm-svn: 19864
* Properly close mapped files.Jeff Cohen2005-01-282-3/+3
| | | | llvm-svn: 19863
* stack frame fix and zero FP reg fixAndrew Lenharth2005-01-272-12/+19
| | | | llvm-svn: 19857
* Floating point instructions like Floating point registersAndrew Lenharth2005-01-271-1/+1
| | | | llvm-svn: 19856
* int to float conversion and another setccAndrew Lenharth2005-01-272-32/+54
| | | | llvm-svn: 19855
* Fix grammarMisha Brukman2005-01-272-2/+2
| | | | llvm-svn: 19854
* teach isel about comparison with constants and zero extending bitsAndrew Lenharth2005-01-272-112/+136
| | | | llvm-svn: 19853
* Fix some Path bugsJeff Cohen2005-01-271-11/+24
| | | | llvm-svn: 19852
* perhaps this will let me have calls againAndrew Lenharth2005-01-271-5/+9
| | | | llvm-svn: 19851
* minor bug fixAndrew Lenharth2005-01-271-1/+1
| | | | llvm-svn: 19850
OpenPOWER on IntegriCloud