Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | 64-bit fp loads can come straight out of the constant pool, not as | Eric Christopher | 2010-09-09 | 1 | -10/+18 | |
| | | | | | | bad as I'd thought. llvm-svn: 113561 | |||||
* | Discard metadata produced by LLVM 2.7. The value enumeration it used | Dan Gohman | 2010-09-09 | 2 | -15/+45 | |
| | | | | | | | | | | | | | is different from what the code now uses in a two ways: NamedMDNodes were considered Values and included in the numbering, and the function-local metadata counter wasn't reset between functions. The later problem breaks lazy deserialization, so instead of trying to emulate the old numbering, just drop the old metadata. The only in-tree use case is debug info with LTO, where the QOI loss is considered acceptable. llvm-svn: 113557 | |||||
* | llvm-mc: Don't crash when using -n and we see a directive before the initial ↵ | Daniel Dunbar | 2010-09-09 | 1 | -0/+30 | |
| | | | | | | | | section. - This is annoying, because we have to scatter this check everywhere that could emit real data, but I see no better solution. llvm-svn: 113552 | |||||
* | llvm-mc: Make sure we exit != 0 if any errors are encountered. | Daniel Dunbar | 2010-09-09 | 1 | -8/+10 | |
| | | | | llvm-svn: 113551 | |||||
* | SIToFP and FPToSI conversions work only on fp-reg to fp-reg. Move | Eric Christopher | 2010-09-09 | 1 | -7/+33 | |
| | | | | | | some data around and implement a couple of move routines to do this. llvm-svn: 113546 | |||||
* | MDNodes are not Constants. | Dan Gohman | 2010-09-09 | 1 | -5/+0 | |
| | | | | llvm-svn: 113539 | |||||
* | Print invalid metadata references as <badref>, for consistency with | Dan Gohman | 2010-09-09 | 1 | -2/+10 | |
| | | | | | | regular value references. llvm-svn: 113538 | |||||
* | New "move to fp reg" routine. Use it. | Eric Christopher | 2010-09-09 | 1 | -5/+12 | |
| | | | | llvm-svn: 113537 | |||||
* | "Strike that, reverse it." -- Mr. Wonka. | Eric Christopher | 2010-09-09 | 1 | -2/+2 | |
| | | | | | | Truncate when truncating, extend when extending. llvm-svn: 113536 | |||||
* | What the loop unroller cares about, rather than just not unrolling loops ↵ | Owen Anderson | 2010-09-09 | 2 | -5/+11 | |
| | | | | | | | | | | | with calls, is not unrolling loops that contain calls that would be better off getting inlined. This mostly comes up when an interleaved devirtualization pass has devirtualized a call which the inliner will inline on a future pass. Thus, rather than blocking all loops containing calls, add a metric for "inline candidate calls" and block loops containing those instead. llvm-svn: 113535 | |||||
* | Add FPTrunc, fix some bugs where I forgot to update the value map. | Eric Christopher | 2010-09-09 | 1 | -2/+28 | |
| | | | | llvm-svn: 113533 | |||||
* | Revert r113439, which relaxed the requirement that loops containing calls ↵ | Owen Anderson | 2010-09-09 | 1 | -4/+2 | |
| | | | | | | | | cannot be unrolled. After some discussion, there seems to be a better way to achieve the same effect. llvm-svn: 113528 | |||||
* | r113526 introduced an unintended change to the loop unrolling threshold. ↵ | Owen Anderson | 2010-09-09 | 1 | -1/+1 | |
| | | | | | | Revert it. llvm-svn: 113527 | |||||
* | Fix typo in code to cap the loop code size reduction calculation. | Owen Anderson | 2010-09-09 | 1 | -2/+2 | |
| | | | | llvm-svn: 113526 | |||||
* | Use code-size reduction metrics to estimate the amount of savings we'll get ↵ | Owen Anderson | 2010-09-09 | 1 | -1/+24 | |
| | | | | | | | | when we unroll a loop. Next step is to recalculate the threshold values given this new heuristic. llvm-svn: 113525 | |||||
* | Basic FP->Int, Int->FP conversions. | Eric Christopher | 2010-09-09 | 1 | -0/+55 | |
| | | | | llvm-svn: 113523 | |||||
* | Add one more pattern to fallback movddup | Bruno Cardoso Lopes | 2010-09-09 | 1 | -0/+2 | |
| | | | | llvm-svn: 113522 | |||||
* | Extend the getDependence query with support for PHI translation. | Dan Gohman | 2010-09-09 | 2 | -13/+57 | |
| | | | | llvm-svn: 113521 | |||||
* | For each instruction itinerary class, specify the number of micro-ops each | Evan Cheng | 2010-09-09 | 6 | -8/+97 | |
| | | | | | | | | | | instruction in the class would be decoded to. Or zero if the number of uOPs must be determined dynamically. This will be used to determine the cost-effectiveness of predicating a micro-coded instruction. llvm-svn: 113513 | |||||
* | MCELF: Write relocation fragments in the right endian. | Benjamin Kramer | 2010-09-09 | 1 | -5/+26 | |
| | | | | | | - This code is gross, but does the job for now. llvm-svn: 113509 | |||||
* | Make ELF OS ABI dependent on the OS from target triple. | Roman Divacky | 2010-09-09 | 2 | -13/+25 | |
| | | | | llvm-svn: 113508 | |||||
* | Move remaining MMX instructions from SSE to MMX. | Dale Johannesen | 2010-09-09 | 2 | -107/+44 | |
| | | | | llvm-svn: 113501 | |||||
* | Refactor code-size reduction estimation methods out of InlineCostAnalyzer ↵ | Owen Anderson | 2010-09-09 | 1 | -92/+90 | |
| | | | | | | | | | | | and into CodeMetrics. They don't use any InlineCostAnalyzer state, and are useful for other clients who don't necessarily want to use all of InlineCostAnalyzer's logic, some of which is fairly inlining-specific. No intended functionality change. llvm-svn: 113499 | |||||
* | MC: Give a (lame) hard error if a .org directive would create an unreasonably | Daniel Dunbar | 2010-09-09 | 1 | -1/+1 | |
| | | | | | | large object file (> 1GB). llvm-svn: 113494 | |||||
* | lib/System/Host.cpp: 7bit-ize. Eliminate "TM" and "(R)" in comments. | NAKAMURA Takumi | 2010-09-09 | 1 | -16/+16 | |
| | | | | llvm-svn: 113486 | |||||
* | Silence compiler warning. | Kalle Raiskila | 2010-09-09 | 1 | -1/+1 | |
| | | | | llvm-svn: 113478 | |||||
* | Fix NEON VLD pseudo instruction itineraries that were incorrectly copied from | Bob Wilson | 2010-09-09 | 1 | -5/+5 | |
| | | | | | | | the VST pseudos. The VLD/VST scheduling still needs work (see pr6722), but at least we shouldn't confuse the loads with the stores. llvm-svn: 113473 | |||||
* | Nuke whitespace and fix some indenting. | Eric Christopher | 2010-09-09 | 1 | -60/+60 | |
| | | | | llvm-svn: 113463 | |||||
* | Move most MMX instructions (defined as anything that | Dale Johannesen | 2010-09-09 | 2 | -121/+136 | |
| | | | | | | | uses MMX, even if it also uses other things) from InstrSSE into InstrMMX. No (intended) functional change. llvm-svn: 113462 | |||||
* | Handle 64-bit floating point binops as well. | Eric Christopher | 2010-09-09 | 1 | -10/+12 | |
| | | | | llvm-svn: 113461 | |||||
* | Basic 32-bit FP operations. | Eric Christopher | 2010-09-09 | 1 | -0/+45 | |
| | | | | llvm-svn: 113459 | |||||
* | For double-spaced VLD3/VLD4 instructions, copy the explicit super-register use | Bob Wilson | 2010-09-09 | 1 | -5/+9 | |
| | | | | | | | operand from the pseudo instruction to the new instruction as an implicit use. This will preserve any other flags (e.g., kill) on the operand. llvm-svn: 113456 | |||||
* | Handle float->double extension. | Eric Christopher | 2010-09-09 | 1 | -0/+23 | |
| | | | | llvm-svn: 113455 | |||||
* | Rewrite TargetMaterializeConstant splitting it out into two functions | Eric Christopher | 2010-09-09 | 1 | -21/+45 | |
| | | | | | | | for integer and fp constants. Implement todo to use vfp3 instructions to materialize easy constants if we can. llvm-svn: 113453 | |||||
* | Simplify copying over operands from pseudo NEON load/store instructions. | Bob Wilson | 2010-09-09 | 1 | -30/+19 | |
| | | | | | | | | For VLD3/VLD4 with double-spaced registers, add the implicit use of the super register for both the instruction loading the even registers and the instruction loading the odd registers. llvm-svn: 113452 | |||||
* | Clean up a comment. | Bob Wilson | 2010-09-08 | 1 | -2/+2 | |
| | | | | llvm-svn: 113442 | |||||
* | Very basic compare support. | Eric Christopher | 2010-09-08 | 1 | -0/+48 | |
| | | | | llvm-svn: 113440 | |||||
* | Relax the "don't unroll loops containing calls" rule. Instead, when a loop ↵ | Owen Anderson | 2010-09-08 | 1 | -2/+4 | |
| | | | | | | | | | contains a call, lower the unrolling threshold to the optimize-for-size threshold. Basically, for loops containing calls, unrolling can still be profitable as long as the loop is REALLY small. llvm-svn: 113439 | |||||
* | Delete dead code. | Eric Christopher | 2010-09-08 | 1 | -1/+0 | |
| | | | | llvm-svn: 113436 | |||||
* | Fix LDM_RET schedule itinery. | Evan Cheng | 2010-09-08 | 5 | -2/+19 | |
| | | | | llvm-svn: 113435 | |||||
* | fix rdar://8407548, I missed the commuted form of xchg/test without a suffix. | Chris Lattner | 2010-09-08 | 1 | -2/+4 | |
| | | | | llvm-svn: 113427 | |||||
* | fix wonky formatting. | Chris Lattner | 2010-09-08 | 1 | -1/+1 | |
| | | | | llvm-svn: 113426 | |||||
* | Generalize instcombine's support for combining multiple bit checks into a ↵ | Owen Anderson | 2010-09-08 | 1 | -32/+278 | |
| | | | | | | single test. Patch by Dirk Steinke! llvm-svn: 113423 | |||||
* | fix bugs in push/pop segment support, rdar://8407242 | Chris Lattner | 2010-09-08 | 2 | -5/+36 | |
| | | | | llvm-svn: 113422 | |||||
* | Add intrinsic-based patterns for MMX PINSRW and PEXTRW. | Dale Johannesen | 2010-09-08 | 1 | -0/+19 | |
| | | | | llvm-svn: 113420 | |||||
* | Make the loads/stores match the type we really want to store. | Eric Christopher | 2010-09-08 | 1 | -12/+12 | |
| | | | | llvm-svn: 113417 | |||||
* | Check in forgotten file. Should fix build. | Dale Johannesen | 2010-09-08 | 1 | -1/+1 | |
| | | | | llvm-svn: 113409 | |||||
* | Slight cleanup, use only one form of MMXI_binop_rm_int. | Dale Johannesen | 2010-09-08 | 1 | -53/+37 | |
| | | | | llvm-svn: 113406 | |||||
* | Re-enable usage of the ARM base pointer. r113394 fixed the known failures. | Jim Grosbach | 2010-09-08 | 1 | -1/+1 | |
| | | | | | | Re-running some nightly testers w/ it enabled to verify. llvm-svn: 113399 | |||||
* | Fix errant fall-throughs causing the base pointer to be used when the frame | Jim Grosbach | 2010-09-08 | 1 | -3/+3 | |
| | | | | | | pointer was intended. rdar://8401980 llvm-svn: 113394 |