Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Add a MapVector class. It provides a regular set iteration, but | Rafael Espindola | 2012-09-18 | 1 | -0/+153 | |
| | | | | | | also provides a insertion order iteration over the values. llvm-svn: 164157 | |||||
* | Fix the isLocalCall() by checking for linker weakness as well. | Roman Divacky | 2012-09-18 | 1 | -1/+2 | |
| | | | | llvm-svn: 164155 | |||||
* | TargetSchedule: cleanup computeOperandLatency logic & diagnostics. | Andrew Trick | 2012-09-18 | 1 | -6/+16 | |
| | | | | llvm-svn: 164154 | |||||
* | misched: Make ScheduleDAGInstrs use the TargetSchedule interface. | Andrew Trick | 2012-09-18 | 1 | -16/+14 | |
| | | | | llvm-svn: 164153 | |||||
* | Revert r164051. | Akira Hatanaka | 2012-09-18 | 1 | -4/+0 | |
| | | | | llvm-svn: 164150 | |||||
* | LSR critical edge splitting fix for PR13756. | Andrew Trick | 2012-09-18 | 2 | -14/+56 | |
| | | | | llvm-svn: 164147 | |||||
* | Fix getCommonType in a different way from the way I fixed it when | Chandler Carruth | 2012-09-18 | 2 | -3/+3 | |
| | | | | | | | | | | | | working on FCA splitting. Instead of refusing to form a common type when there are uses of a subsection of the alloca as well as a use of the entire alloca, just skip the subsection uses and continue looking for a whole-alloca use with a type that we can use. This produces slightly prettier IR I think, and also fixes the other failure in the test. llvm-svn: 164146 | |||||
* | Fix build for compilers that don't understand injected class names properly. | Benjamin Kramer | 2012-09-18 | 1 | -2/+2 | |
| | | | | llvm-svn: 164142 | |||||
* | Avoid symbol name clash when filling TOC. | Roman Divacky | 2012-09-18 | 4 | -3/+42 | |
| | | | | | | Patch by Adhemerval Zanella. llvm-svn: 164141 | |||||
* | SROA: Use CRTP for OpSplitter to get rid of virtual dispatch and the ↵ | Benjamin Kramer | 2012-09-18 | 1 | -8/+7 | |
| | | | | | | virtual-dtor warnings that come with it. llvm-svn: 164140 | |||||
* | On PPC64 emit the environment pointer. Patch by Adhemerval Zanella. | Roman Divacky | 2012-09-18 | 3 | -0/+4 | |
| | | | | llvm-svn: 164139 | |||||
* | Optimize local func calls to not emit nop for TOC restoration. | Roman Divacky | 2012-09-18 | 2 | -2/+59 | |
| | | | | | | Patch by Adhemerval Zanella. llvm-svn: 164138 | |||||
* | Add PowerPC64 relocation definitions. Patch by Adhemerval Zanella! | Roman Divacky | 2012-09-18 | 1 | -0/+15 | |
| | | | | llvm-svn: 164137 | |||||
* | SROA: Replace the member function template contraption for recursively ↵ | Benjamin Kramer | 2012-09-18 | 1 | -97/+105 | |
| | | | | | | | | splitting aggregates into a real class. No intended functionality change. llvm-svn: 164135 | |||||
* | Add test for r164132. | Roman Divacky | 2012-09-18 | 1 | -0/+7 | |
| | | | | llvm-svn: 164134 | |||||
* | When creating MCAsmBackend pass the CPU string as well. In X86AsmBackend | Roman Divacky | 2012-09-18 | 13 | -50/+71 | |
| | | | | | | | | | store this and use it to not emit long nops when the CPU is geode which doesnt support them. Fixes PR11212. llvm-svn: 164132 | |||||
* | SROA.cpp: Appease msvc. | NAKAMURA Takumi | 2012-09-18 | 1 | -1/+1 | |
| | | | | | | ...I don't know why this could appease msvc...baad. llvm-svn: 164130 | |||||
* | llvm/test/DebugInfo: Move two tests, 2010-04-13-PubType.ll and ↵ | NAKAMURA Takumi | 2012-09-18 | 2 | -0/+0 | |
| | | | | | | linkage-name.ll to X86. llvm-svn: 164129 | |||||
* | XFAIL SROA test until Chandler can get to it. | Benjamin Kramer | 2012-09-18 | 1 | -0/+1 | |
| | | | | llvm-svn: 164128 | |||||
* | Coding standards: fix typo: '= deleted' -> '= delete'. | Dmitri Gribenko | 2012-09-18 | 1 | -2/+2 | |
| | | | | llvm-svn: 164126 | |||||
* | Make MachinePostDominatorTree::DT private | Tom Stellard | 2012-09-18 | 1 | -2/+4 | |
| | | | | llvm-svn: 164125 | |||||
* | LNT builders have picked up new SROA, disable it to get the remaining ↵ | Benjamin Kramer | 2012-09-18 | 1 | -1/+1 | |
| | | | | | | builders green again. llvm-svn: 164124 | |||||
* | Fix a warning in release builds and a test case I forgot to update with | Chandler Carruth | 2012-09-18 | 2 | -1/+2 | |
| | | | | | | a fix to getCommonType in the previous patch. llvm-svn: 164120 | |||||
* | Add a major missing piece to the new SROA pass: aggressive splitting of | Chandler Carruth | 2012-09-18 | 3 | -8/+270 | |
| | | | | | | | | | | | | | | | | | | | | | | | FCAs. This is essential in order to promote allocas that are used in struct returns by frontends like Clang. The FCA load would block the rest of the pass from firing, resulting is significant regressions with the bullet benchmark in the nightly test suite. Thanks to Duncan for repeated discussions about how best to do this, and to both him and Benjamin for review. This appears to have blocked many places where the pass tries to fire, and so I'm expect somewhat different results with this fix added. As with the last big patch, I'm including a change to enable the SROA by default *temporarily*. Ben is going to remove this as soon as the LNT bots pick up the patch. I'm just trying to get a round of LNT numbers from the stable machines in the lab. NOTE: Four clang tests are expected to fail in the brief window where this is enabled. Sorry for the noise! llvm-svn: 164119 | |||||
* | Fix instcombine to obey requested alignment when merging allocas. | Richard Osborne | 2012-09-18 | 2 | -3/+31 | |
| | | | | llvm-svn: 164117 | |||||
* | More domain conversion; convert VFP VMOVS to NEON instructions in more cases ↵ | James Molloy | 2012-09-18 | 2 | -15/+74 | |
| | | | | | | - when we may clobber the other S-lane by converting an S to a D instruction, make an effort to work out if the S lane is clobberable or not. llvm-svn: 164114 | |||||
* | Make custom operand parsing mnemonic indices use the same mnemonic table as ↵ | Craig Topper | 2012-09-18 | 1 | -34/+39 | |
| | | | | | | the match table. Reorder fields in OperandMatchEntry to provide the least amount of padding for in tree targets. llvm-svn: 164109 | |||||
* | Use variable type for index into mnemonic table. Shrinks size of index field ↵ | Craig Topper | 2012-09-18 | 1 | -5/+14 | |
| | | | | | | on in tree targets. Saving static data space. llvm-svn: 164108 | |||||
* | Replaced ReInitMCSubtargetInfo with InitMCProcessor. | Andrew Trick | 2012-09-18 | 3 | -18/+20 | |
| | | | | | | | | Now where we used to call ReInitMCSubtargetInfo, we actually recompute the same information as InitMCSubtargetInfo instead of only setting the feature bits. llvm-svn: 164105 | |||||
* | Add LLVM_DELETED_FUNCTION to coding standards. | Craig Topper | 2012-09-18 | 1 | -0/+28 | |
| | | | | llvm-svn: 164101 | |||||
* | Fix a typo. No functional change. | Craig Topper | 2012-09-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 164100 | |||||
* | Let NULL slip through again. | Andrew Trick | 2012-09-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 164099 | |||||
* | TargetSchedModel API. Implement latency lookup, disabled. | Andrew Trick | 2012-09-18 | 7 | -22/+178 | |
| | | | | llvm-svn: 164098 | |||||
* | comment typo | Andrew Trick | 2012-09-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 164097 | |||||
* | TableGen subtarget emitter. Use getSchedClassIdx. | Andrew Trick | 2012-09-18 | 2 | -11/+1 | |
| | | | | llvm-svn: 164096 | |||||
* | TableGen subtarget emitter. Generate resolveSchedClass generated hook for ↵ | Andrew Trick | 2012-09-18 | 1 | -0/+84 | |
| | | | | | | resolving instruction variants. llvm-svn: 164095 | |||||
* | TableGen subtarget emitter. Remove unnecessary header dependence. | Andrew Trick | 2012-09-18 | 2 | -8/+10 | |
| | | | | llvm-svn: 164094 | |||||
* | Mark unimplemented operator new as LLVM_DELETED_FUNCTION. | Craig Topper | 2012-09-18 | 1 | -10/+10 | |
| | | | | llvm-svn: 164093 | |||||
* | TableGen subtarget emitter. Initialize MCSubtargetInfo with the new machine ↵ | Andrew Trick | 2012-09-18 | 6 | -13/+65 | |
| | | | | | | model. llvm-svn: 164092 | |||||
* | Mark constructors, destructors, and operator new commented as 'do not ↵ | Craig Topper | 2012-09-18 | 5 | -43/+43 | |
| | | | | | | implement' with LLVM_DELETED_FUNCTION instead. llvm-svn: 164091 | |||||
* | Mark unimplemented copy constructors and copy assignment operators as ↵ | Craig Topper | 2012-09-18 | 8 | -21/+20 | |
| | | | | | | LLVM_DELETED_FUNCTION. llvm-svn: 164090 | |||||
* | Use vld1 / vst2 for unaligned v2f64 load / store. e.g. Use vld1.16 for 2-byte | Evan Cheng | 2012-09-18 | 11 | -53/+593 | |
| | | | | | | | | | aligned address. Based on patch by David Peixotto. Also use vld1.64 / vst1.64 with 128-bit alignment to take advantage of alignment hints. rdar://12090772, rdar://12238782 llvm-svn: 164089 | |||||
* | Mark asm matcher conversion table as const. | Craig Topper | 2012-09-18 | 1 | -5/+5 | |
| | | | | llvm-svn: 164088 | |||||
* | Fix some funky indentation. | Evan Cheng | 2012-09-18 | 1 | -18/+17 | |
| | | | | llvm-svn: 164087 | |||||
* | Fix typo in comment. No functional change. | Craig Topper | 2012-09-18 | 1 | -1/+1 | |
| | | | | llvm-svn: 164086 | |||||
* | PGO: preserve branch-weight metadata when simplifying Switch to a sub, an icmp | Manman Ren | 2012-09-18 | 2 | -2/+85 | |
| | | | | | | and a conditional branch; also when removing dead cases from a switch. llvm-svn: 164084 | |||||
* | Backout the wrong subtarget emitter fix | Andrew Trick | 2012-09-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 164078 | |||||
* | PGO: preserve branch-weight metadata when simplifying Switch | Manman Ren | 2012-09-17 | 2 | -1/+51 | |
| | | | | | | | Hanlde the case when we split the default edge if the default target has "icmp" and unconditinal branch. llvm-svn: 164076 | |||||
* | Fix release build after reverting | Andrew Trick | 2012-09-17 | 1 | -2/+1 | |
| | | | | llvm-svn: 164075 | |||||
* | Merge into undefined lanes under -new-coalescer. | Jakob Stoklund Olesen | 2012-09-17 | 4 | -3/+189 | |
| | | | | | | | | | | | | | | | | | Add LIS::pruneValue() and extendToIndices(). These two functions are used by the register coalescer when merging two live ranges requires more than a trivial value mapping as supported by LiveInterval::join(). The pruneValue() function can remove the part of a value number that is going to conflict in join(). Afterwards, extendToIndices can restore the live range, using any new dominating value numbers and updating the SSA form. Use this complex value mapping to support merging a register into a vector lane that has a conflicting value, but the clobbered lane is undef. llvm-svn: 164074 |