summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* MC/COFF: Correctly emit the size of an empty string table.Michael J. Spencer2011-11-081-0/+1
| | | | llvm-svn: 144111
* LICM pass now understands invariant load metadata. Nothing generates this ↵Pete Cooper2011-11-082-0/+41
| | | | | | yet so it will currently never get used in real tests llvm-svn: 144107
* Add the base ObjC method name to the names lookup table as well.Eric Christopher2011-11-081-0/+6
| | | | llvm-svn: 144105
* Adding test for machine-licm operating on invariant load instructionsPete Cooper2011-11-081-0/+29
| | | | llvm-svn: 144104
* Lower mem-ops to unaligned i32/i16 load/stores on ARM where supported.Lang Hames2011-11-083-6/+26
| | | | | | | | Add support for trimming constants to GetDemandedBits. This fixes some funky constant generation that occurs when stores are expanded for targets that don't support unaligned stores natively. llvm-svn: 144102
* Added invariant field to the DAG.getLoad method and changed all calls.Pete Cooper2011-11-0826-202/+253
| | | | | | When this field is true it means that the load is from constant (runt-time or compile-time) and so can be hoisted from loops or moved around other memory accesses llvm-svn: 144100
* A few more places where we can avoid multiple size queries.Eric Christopher2011-11-081-7/+7
| | | | llvm-svn: 144099
* Don't evaluate Data.size() on every iteration.Eric Christopher2011-11-081-1/+1
| | | | llvm-svn: 144095
* This patch handles unaligned loads and stores in Mips JIT. Mips backendBruno Cardoso Lopes2011-11-082-6/+148
| | | | | | | | | | | | implements unaligned loads and stores with assembler macro-instructions ulw, usw, ulh, ulhu, ush, and this patch emits corresponding instructions instead of these macros. Since each unaligned load/store is expanded into two corresponding loads/stores where offset for second load/store is modified by +3 (for words) or +1 (for halfwords). Patch by Petar Jovanovic and Sasa Stankovic. llvm-svn: 144081
* PathProfiling.c: Get rid of using "inline". We may expect compiler shall ↵NAKAMURA Takumi2011-11-081-7/+2
| | | | | | optimize out "static" scope w/o "inline". llvm-svn: 144080
* Fix the printing of constants. Patch by Stepan Dyatkovskiy!John McCall2011-11-082-1/+5
| | | | llvm-svn: 144079
* Add Eero to the list of external projects.Bill Wendling2011-11-081-0/+16
| | | | llvm-svn: 144076
* PPCInstrInfo.cpp: Fix one "unused" warning.NAKAMURA Takumi2011-11-081-0/+1
| | | | llvm-svn: 144071
* runtime/libprofile/PathProfiling.c: Use __inline__ to appease clang ↵NAKAMURA Takumi2011-11-081-3/+3
| | | | | | | -std=gnu89 -pedantic. FIXME: Should configure detect one? llvm-svn: 144070
* test/CodeGen/X86/vec_shuffle-39.ll: Add explicit -mtriple=x86_64-linux. ↵NAKAMURA Takumi2011-11-081-1/+1
| | | | | | Passing packed value is not compatible on Win32 x64. llvm-svn: 144068
* test/CodeGen/X86/vec_shuffle-38.ll: Relax expression for Win32 x64.NAKAMURA Takumi2011-11-081-1/+1
| | | | llvm-svn: 144067
* test/CodeGen/X86/vec_shuffle.ll: Add explicit -mtriple=i686-linux. We may ↵NAKAMURA Takumi2011-11-081-1/+1
| | | | | | see some suboptimal frame (%ebp) emission on certain hosts. Possible [PR11031] llvm-svn: 144066
* Make sure to mark vector extload's as expand on ARM. Fixes PR11319.Eli Friedman2011-11-082-9/+26
| | | | llvm-svn: 144057
* Add a bunch of calls to RemoveDeadNode in LegalizeDAG, so legalization ↵Eli Friedman2011-11-083-3/+39
| | | | | | | | doesn't get confused by CSE later on. Fixes PR11318. Re-commit of r144034, with an extra fix so that RemoveDeadNode doesn't blow up. llvm-svn: 144055
* Cleanup the formatting.Bill Wendling2011-11-081-22/+37
| | | | llvm-svn: 144053
* Add x86 isel logic and patterns to match movlps from clang generated IR for ↵Evan Cheng2011-11-084-8/+63
| | | | | | _mm_loadl_pi(). rdar://10134392, rdar://10050222 llvm-svn: 144052
* Convert to the new EH model.Bill Wendling2011-11-082-20/+15
| | | | llvm-svn: 144050
* Convert to the new EH model.Bill Wendling2011-11-083-28/+20
| | | | llvm-svn: 144049
* Convert tests to the new EH model.Bill Wendling2011-11-086-51/+29
| | | | llvm-svn: 144048
* Enable support for returning i1, i8, and i16. Nothing special todo as it's theChad Rosier2011-11-083-1/+24
| | | | | | | | callee's responsibility to sign or zero-extend the return value. The additional test case just checks to make sure the calls are selected (i.e., -fast-isel-abort doesn't assert). llvm-svn: 144047
* Added missing newlinePete Cooper2011-11-081-1/+1
| | | | llvm-svn: 144046
* Revert r144034 while I try to track down a crash.Eli Friedman2011-11-072-33/+3
| | | | llvm-svn: 144044
* This code is dead, what with the new EH model and the auto-upgraders in place.Bill Wendling2011-11-071-639/+12
| | | | | | Delete! llvm-svn: 144043
* Fix test for Windows as well.Jakob Stoklund Olesen2011-11-071-1/+0
| | | | llvm-svn: 144038
* Kill and collapse outstanding DomainValues.Jakob Stoklund Olesen2011-11-078-28/+58
| | | | | | | | | | | | DomainValues that are only used by "don't care" instructions are now collapsed to the first possible execution domain after all basic blocks have been processed. This typically means the PS domain on x86. For example, the vsel_i64 and vsel_double functions in sse2-blend.ll are completely collapsed to the PS domain instead of containing a mix of execution domains created by isel. llvm-svn: 144037
* InstCombine now optimizes vector udiv by power of 2 to shiftsPete Cooper2011-11-072-5/+24
| | | | | | Fixes r8429 llvm-svn: 144036
* Add a bunch of calls to RemoveDeadNode in LegalizeDAG, so legalization ↵Eli Friedman2011-11-072-3/+33
| | | | | | doesn't get confused by CSE later on. Fixes PR11318. llvm-svn: 144034
* Add all completed and named types to the dwarf type accelerator tables.Eric Christopher2011-11-072-2/+7
| | | | llvm-svn: 144027
* Add ISPC to the external projects list.Bill Wendling2011-11-071-0/+16
| | | | llvm-svn: 144026
* Use a reverse post order instead of a DFS order.Jakob Stoklund Olesen2011-11-071-6/+5
| | | | | | | | The enterBasicBlock() function is combining live-out values from predecessor blocks. The RPO traversal means that more predecessors have been visited when that happens, only back-edges are missing. llvm-svn: 144025
* Move the hash function to using and taking a StringRef.Eric Christopher2011-11-071-4/+4
| | | | llvm-svn: 144024
* Simple destructor to delete the hash data we created earlier.Eric Christopher2011-11-072-0/+6
| | | | llvm-svn: 144023
* Allow i1 to be promoted to i32 for ARM AAPCS and AAPCS-VFP calling ↵Chad Rosier2011-11-071-1/+1
| | | | | | convention as well. llvm-svn: 144021
* Extract two methods. No functional change.Jakob Stoklund Olesen2011-11-071-18/+26
| | | | llvm-svn: 144020
* Various Mips64 floating point instruction patterns.Akira Hatanaka2011-11-071-3/+18
| | | | llvm-svn: 144019
* Add definition of the base class for floating point comparison instructionsAkira Hatanaka2011-11-071-8/+8
| | | | | | and add Mips64's version too. llvm-svn: 144018
* Add code needed for copying between 64-bit integer and floating pointerAkira Hatanaka2011-11-071-0/+6
| | | | | | registers. llvm-svn: 144017
* Add definitions of 64-bit instructions which move data between integer andAkira Hatanaka2011-11-071-0/+8
| | | | | | floating pointer registers. llvm-svn: 144016
* MBB doesn't need to be a class member.Jakob Stoklund Olesen2011-11-071-6/+4
| | | | llvm-svn: 144015
* Fix pass name after the source was moved.Jakob Stoklund Olesen2011-11-071-1/+1
| | | | llvm-svn: 144014
* Simplify some uses of utohexstr.Benjamin Kramer2011-11-0711-58/+56
| | | | | | As a side effect hex is printed lowercase instead of uppercase now. llvm-svn: 144013
* Simplify code. No functionality change.Benjamin Kramer2011-11-071-155/+91
| | | | llvm-svn: 144012
* Fix test for Linux.Jakob Stoklund Olesen2011-11-071-1/+1
| | | | llvm-svn: 144003
* Make sure we don't insert instructions before a landingpad instruction.Bill Wendling2011-11-071-2/+2
| | | | | | <rdar://problem/10405911> llvm-svn: 144000
* Expand V_SET0 to xorps by default.Jakob Stoklund Olesen2011-11-078-11/+32
| | | | | | | | | The xorps instruction is smaller than pxor, so prefer that encoding. The ExecutionDepsFix pass will switch the encoding to pxor and xorpd when appropriate. llvm-svn: 143996
OpenPOWER on IntegriCloud