summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Add a NextPowerOf2 function to calculate the next power of two greater than ↵Owen Anderson2008-06-271-0/+12
| | | | | | a given integer. llvm-svn: 52839
* implement some fixme's by making "autorenaming" in the value symbol table notChris Lattner2008-06-272-32/+11
| | | | | | thrash the heap with string stuff (e.g. utostr). llvm-svn: 52838
* simplify some code to avoid string thrashing.Chris Lattner2008-06-271-3/+5
| | | | llvm-svn: 52837
* Use StringSet instead of std::set<std::string>Anton Korobeynikov2008-06-273-26/+25
| | | | llvm-svn: 52836
* add a helper.Chris Lattner2008-06-271-0/+2
| | | | llvm-svn: 52835
* Add a new version of Module::getFunction that takes a const char* insteadChris Lattner2008-06-274-0/+15
| | | | | | | of a std::string. This avoids copying the string to the heap in common cases. Patch by Pratik Solanki! llvm-svn: 52834
* Tweak IRBuilder to explicitly call the setName(const char*) method on ValueChris Lattner2008-06-271-48/+51
| | | | | | | | | | instead of passing the name into the instruction ctors. Since most instruction ctors take their name as an std::string, this avoids copying the string to the heap and a malloc and free. Patch by Pratik Solanki! llvm-svn: 52832
* Add an include file needed for VS.Cedric Venet2008-06-272-0/+9
| | | | | | | Add two new file to codegen project (VS). This unbreak the build for VS. llvm-svn: 52831
* Add dominator info printer pass.Devang Patel2008-06-271-0/+31
| | | | llvm-svn: 52829
* Provide correct encoding for PPC LWARX instructions.Anton Korobeynikov2008-06-271-2/+2
| | | | | | Patch by Gary Benson! llvm-svn: 52828
* Since we are using GCC to assemble the program, make sure the assembly ↵Argyrios Kyrtzidis2008-06-271-0/+3
| | | | | | syntax is AT&T. llvm-svn: 52827
* Regression test for PR2443.Duncan Sands2008-06-273-1/+25
| | | | llvm-svn: 52826
* Use the c modifier to tell llvm-ar not to issue aDuncan Sands2008-06-271-2/+2
| | | | | | | warning when creating the archive (the warning causes the test to fail). llvm-svn: 52824
* Reduce number of times .size() is called on a vector. Rename some variables toBill Wendling2008-06-271-16/+22
| | | | | | match normal naming scheme. llvm-svn: 52820
* Use a SmallSet when we can to reduce memory allocations.Owen Anderson2008-06-271-1/+2
| | | | | | This speeds up a particular testcase from 0.0302s to 0.0222s in LiveVariables. llvm-svn: 52819
* Cache subregister relationships in a set in TargetRegisterInfo to allow ↵Owen Anderson2008-06-272-3/+13
| | | | | | | | faster lookups. This speeds up LiveVariables from 0.6279s to 0.6165s on kimwitu++. llvm-svn: 52818
* fix the regressions from Eric's patch by making GetConstantStringInfoChris Lattner2008-06-272-30/+35
| | | | | | | tolerate a non-nul-terminated string, and handling a direct global reference. llvm-svn: 52813
* simplify this check, GetConstantStringInfo validates that aChris Lattner2008-06-271-5/+3
| | | | | | global is constant already. No functionality change. llvm-svn: 52812
* test doesn't need eh infoChris Lattner2008-06-271-2/+2
| | | | llvm-svn: 52811
* when linking globals, make sure to preserve the address space of the global.Chris Lattner2008-06-272-4/+17
| | | | llvm-svn: 52810
* More cruft from revert...Bill Wendling2008-06-271-2/+2
| | | | llvm-svn: 52809
* Cruft left from patch revert...sorry. :-(Bill Wendling2008-06-271-3/+6
| | | | llvm-svn: 52808
* Reverting broken patch r52803.Bill Wendling2008-06-273-91/+60
| | | | llvm-svn: 52806
* Don't perform expensive queries checking for super and sub registers when we ↵Owen Anderson2008-06-271-1/+2
| | | | | | | | know that there aren't any. This speed up LiveVariables on instcombine at -O0 -g from 0.3855s to 0.3503s. Look for more improvements in this area soon! llvm-svn: 52804
* - Remove a use of std::vector.Bill Wendling2008-06-273-35/+49
| | | | | | | - Make sure that we're not recalculating the size of a vector that never changes. llvm-svn: 52803
* Refactor the DebugInfoDesc stuff out of the MachineModuleInfo file. Clean upBill Wendling2008-06-277-1493/+1351
| | | | | | some uses of std::vector, where it's return std::vector by value. Yuck! llvm-svn: 52800
* Add a note for Thunderbird users to the Developer Policy.Gordon Henriksen2008-06-261-0/+9
| | | | llvm-svn: 52797
* allow updating the MPM, so that you can use one FunctionPAssManager withChris Lattner2008-06-261-0/+6
| | | | | | multiple ModuleProviders, e.g. with the JIT. llvm-svn: 52796
* XFAIL for now.Evan Cheng2008-06-261-0/+1
| | | | llvm-svn: 52795
* Remove warnings about shadowed and unused variables.Bill Wendling2008-06-263-9/+9
| | | | llvm-svn: 52791
* Update VS project files. The clang executable now depends on the LLVM ↵Ted Kremenek2008-06-262-165/+6
| | | | | | Analysis library. llvm-svn: 52789
* Use a DenseMap instead of an std::map for mangled name lookup. This is Owen Anderson2008-06-261-1/+2
| | | | | | improves AsmPrinter runtime on instcombine from 0.3920s to 0.3836s. llvm-svn: 52787
* duncan points out that isOperationLegal includes a check forChris Lattner2008-06-261-2/+2
| | | | | | type legality. Thanks Duncan! llvm-svn: 52786
* Don't create a whole new string just to copy the elements into it.Owen Anderson2008-06-261-5/+3
| | | | llvm-svn: 52785
* Use the -enable-pre flag so this test doesn't fail.Owen Anderson2008-06-261-1/+1
| | | | llvm-svn: 52784
* Make LLVM compile on DragonFly BSD (PR2499).Matthijs Kooijman2008-06-265-27/+37
| | | | | | Patch by Hasso Tepper! llvm-svn: 52781
* Add missing semicolumn in my last commit.Matthijs Kooijman2008-06-261-1/+1
| | | | llvm-svn: 52780
* Improve comments wrt createInternalize.Matthijs Kooijman2008-06-261-2/+7
| | | | llvm-svn: 52779
* Cleanup for unitialized types. Patch by Jean-Daniel Dupas!Bill Wendling2008-06-261-4/+4
| | | | llvm-svn: 52775
* "An improved Mach-O file type detection for sys::IdentifyFileType()Chris Lattner2008-06-261-18/+32
| | | | | | | | | | This patch add supports for single architecture mach-o files (the current implementation only support Universal Binary), and solve the signature conflict between java class and Universal Binary magics. Note that this function will always returned dynamic library for Universal Binaries (like the current implementation) because the binary type is not include in the file header." Patch by Jean-Daniel Dupas! llvm-svn: 52766
* Reserve the size we'll need in advance.Owen Anderson2008-06-261-0/+1
| | | | llvm-svn: 52763
* Allow for rounding up of stack frame.Dale Johannesen2008-06-261-1/+1
| | | | llvm-svn: 52751
* Fixes the last x86-64 test failure in compat.exp:Dale Johannesen2008-06-264-7/+18
| | | | | | | | | | | | | <16 x float> is 64-byte aligned (for some reason), which gets us into the stack realignment code. The computation changing FP-relative offsets to SP-relative was broken, assiging a spill temp to a location also used for parameter passing. This fixes it by rounding up the stack frame to a multiple of the largest alignment (I concluded it wasn't fixable without doing this, but I'm not very sure.) llvm-svn: 52750
* Remove unused function.Eric Christopher2008-06-261-82/+1
| | | | llvm-svn: 52749
* Move GetConstantStringInfo to lib/Analysis. RemoveEric Christopher2008-06-2610-64/+120
| | | | | | | | | string output routine from Constant. Update all callers. Change debug intrinsic api slightly to accomodate move of routine, these now return values instead of strings. llvm-svn: 52748
* when we know the signbit of an input to uint_to_fp is zero,Chris Lattner2008-06-262-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | change it to sint_to_fp on targets where that is cheaper (and visaversa of course). This allows us to compile uint_to_fp to: _test: movl 4(%esp), %eax shrl $23, %eax cvtsi2ss %eax, %xmm0 movl 8(%esp), %eax movss %xmm0, (%eax) ret instead of: .align 3 LCPI1_0: ## double .long 0 ## double least significant word 4.5036e+15 .long 1127219200 ## double most significant word 4.5036e+15 .text .align 4,0x90 .globl _test _test: subl $12, %esp movl 16(%esp), %eax shrl $23, %eax movl %eax, (%esp) movl $1127219200, 4(%esp) movsd (%esp), %xmm0 subsd LCPI1_0, %xmm0 cvtsd2ss %xmm0, %xmm0 movl 20(%esp), %eax movss %xmm0, (%eax) addl $12, %esp ret llvm-svn: 52747
* Remember which MachineOperand we were processing, so we don't have to scan ↵Owen Anderson2008-06-252-14/+18
| | | | | | | | the list to find it again later. This speeds up live intervals from 0.37s to 0.30s on instcombine. llvm-svn: 52745
* Fix the text in an assert string.Dan Gohman2008-06-251-1/+1
| | | | llvm-svn: 52744
* - Fix a x86 vector isel bug: illegal transformation of a vector_shuffle into aEvan Cheng2008-06-254-15/+54
| | | | | | | | shift. - Add a readme entry for a missing vector_shuffle optimization that results in awful codegen. llvm-svn: 52740
* Add support for expanding PPC 128 bit floats.Duncan Sands2008-06-256-13/+221
| | | | | | | | | | | | | | | | | | | | For this it is convenient to permit floats to be used with EXTRACT_ELEMENT, so I tweaked things to allow that. I also added libcalls for ppcf128 to i32 forms of FP_TO_XINT, since they exist in libgcc and this case can certainly occur (and does occur in the testsuite) - before the i64 libcall was being used. Also, the XINT_TO_FP result seemed to be wrong when the argument is an i128: the wrong fudge factor was added (the i32 and i64 cases were handled directly, but the i128 code fell through to some generic softening code which seemed to think it was i64 to f32!). So I fixed it by adding a fudge factor that I found in my breakfast cereal. llvm-svn: 52739
OpenPOWER on IntegriCloud