aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-11-17Memoize results from ScalarEvolution's getUnsignedRange and getSignedRange.Dan Gohman
This fixes some extreme compile times on unrolled sha512 code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119455 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17Fix warnings about missing parents between || and &&.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119454 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17Only avoid the check if we're the last operand before the variableEric Christopher
operands in a variadic instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119446 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17Add binary emission stuff for VLDM/VSTM. This reuses theBill Wendling
"getRegisterListOpValue" logic. If the registers are double or single precision, the value returned is suitable for VLDM/VSTM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119435 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17Fix typo: Exectuable -> ExecutablePeter Collingbourne
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119433 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Use new neon_vector_type and neon_polyvector_type attributes for Neon vectors.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119406 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Change Neon polynomial types to be signed to match GCC.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119405 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Refactor to new GetNumElements function.Bob Wilson
No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119404 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Use the correct variable names so that the encodings will be correct.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119403 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Reapply r118917. With pseudo-instruction expansion moved toDan Gohman
a different pass, the complicated interaction between cmov expansion and fast isel is no longer a concern. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119400 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16update coding standards. Partial specialization is now ok,Chris Lattner
though possibly not a good idea. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119398 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Fix assembling X86CompilationCallback_Win64.asm on VS 10.Oscar Fuentes
Patch by Louis Zhuang! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119394 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Test for llvm-gcc patch 119392.Dale Johannesen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119393 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16libc++ and compiler_rt are now dual licensed under UIUC and MIT license.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119387 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Fix grammaro.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119386 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Add ExpandPseudos.cpp.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119385 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Add .loc methods to the streamer.Rafael Espindola
Next: Add support for the !HasDotLocAndDotFile case to the MCAsmStreamer and then switch codegen to use it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119384 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Split pseudo-instruction expansion into a separate pass, to make itDan Gohman
easier to debug, and to avoid complications when the CFG changes in the middle of the instruction selection process. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119382 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Add const.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119380 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Fix emergency spilling in LiveIntervals::spillPhysRegAroundRegDefsUses.Jakob Stoklund Olesen
Always spill the full representative register at any point where any subregister is live. This fixes PR8620 which caused the old logic to get confused and not spill anything at all. The fundamental problem here is that the coalescer is too aggressive about physical register coalescing. It sometimes makes it impossible to allocate registers without these emergency spills. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119375 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Print out the register class of the current interval.Jakob Stoklund Olesen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119374 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Document -enable-no-infs-fp-math and -enable-no-nans-fp-math command line ↵Peter Collingbourne
options git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119370 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Tidy up some things in <arm_neon.h>.Bob Wilson
Stop defining types with "__neon_" prefixes and then using typedefs without the prefix; there's no reason to do that anymore. Remove types that combine multiple Neon vectors and treat them as a single long vector; they are not used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119369 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Reapply "Stop using struct wrappers for Neon vector types in <arm_neon.h>."Bob Wilson
I've temporarily disabled the failing clang test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119367 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16system_error: More conditional error codes for Darwin.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119365 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Revert "Stop using struct wrappers for Neon vector types in <arm_neon.h>."Bob Wilson
It's breaking buildbots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119363 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Parse and ignore some .cfi_* directives.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119362 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16This is the first step in adding sane error handling support to LLVMSystem.Michael J. Spencer
The system API's will be shifted over to returning an error_code, and returning other return values as out parameters to the function. Code that needs to check error conditions will use the errc enum values which are the same as the posix_errno defines (EBADF, E2BIG, etc...), and are compatable with the error codes in WinError.h due to some magic in system_error. An example would be: if (error_code ec = KillEvil("Java")) { // error_code can be converted to bool. handle_error(ec); } git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119360 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Stop using struct wrappers for Neon vector types in <arm_neon.h>.Bob Wilson
Thanks to Nate Begeman for an earlier version of this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119358 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Revert inadvertant checkin of CMake libdeps.Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119355 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16ARM conditional mov encoding fix.Jim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119354 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Have a few places that want to simplify phi nodes use SimplifyInstructionDuncan Sands
rather than calling hasConstantValue. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119352 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Fix missing includes of "llvm/Analysis/Passes.h" in the tutorials. ThanksDan Gohman
for Arnaud Allard de Grandmaison for preparing a patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119351 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16In which I discover the existence of loops. Threading an operationDuncan Sands
over a phi node by applying it to each operand may be wrong if the operation and the phi node are mutually interdependent (the testcase has a simple example of this). So only do this transform if it would be correct to perform the operation in each predecessor of the block containing the phi, i.e. if the other operands all dominate the phi. This should fix the FFMPEG snow.c regression reported by İsmail Dönmez. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119347 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16A bit more of gnu as compatibility when handling relocations with aliases.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119328 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16L_bit doesn't work here.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119325 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16- Remove dead patterns.Bill Wendling
- Add encodings to the *LDMIA_RET instrs. Probably not needed... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119323 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16vldm and vstm are mnemonics for vldmia and vstmia resp.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119321 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Make the verifier a little quieter on instructions that it's probablyEric Christopher
(and likely) wrong about anyhow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119320 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Fix a bug I introduced in the ppc refactoring, which caused longChris Lattner
branches to be emitted as: bne cr0, 2 instead of: bne cr0, $+8 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119317 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Test encodings for LDM and STM.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119315 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Encode the multi-load/store instructions with their respective modes ('ia',Bill Wendling
'db', 'ib', 'da') instead of having that mode as a separate field in the instruction. It's more convenient for the asm parser and much more readable for humans. <rdar://problem/8654088> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119310 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Object: Get rid of sys::Path, Triple, and cleanup namespace.Michael J. Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119309 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16add copy of comment to the code that will survive the mcjit'izationChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119308 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16relax an assertion a bit, allowing the GPR argument ofChris Lattner
these instructions to be encoded with getMachineOpValue. This unbreaks ExecutionEngine/2003-01-04-ArgumentBug.ll when running on a G5 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119307 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Remember to resize SpillSlotToUsesMap when allocating an emergency spill slot.Jakob Stoklund Olesen
Use amazing new function call technology instead of writing identical code in multiple places. This fixes PR8604. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119306 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Fix PR8612 in the standard spiller, take two.Jakob Stoklund Olesen
The live range of a register defined by an early clobber starts at the use slot, not the def slot. Except when it is an early clobber tied to a use operand. Then it starts at the def slot like a standard def. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119305 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16Add Thumb2 encodings for mov and friends.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119295 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-15Change the 11 byte nop to be a single instruction.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119286 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-15fix a pasto that massively broke the ppc jit while the buildbots happenedChris Lattner
to be broken for other reasons git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119283 91177308-0d34-0410-b5e6-96231b3b80d8