aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-06-09Silence a warningAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73152 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Reversed order of args in EXPECT_EQ() macros to be in the correct order:Misha Brukman
EXPECT_EQ(expected, actual) . This will make error messages understandable as it uses terms such as "expected" and "actual" based on the order of arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73150 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Remove an unused function SafeToDestroyConstant(). Rename an almostJay Foad
identical function ConstantIsDead() to SafeToDestroyConstant(), to emphasise the connection with Constant::destroyConstant(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73149 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Remove empty test (my DejaGNU doesn't like this)Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73148 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Bug fix:Rafael Espindola
string::find returns string::npos if the substring is not found. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73145 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Simplified logic of this if-then statement to reduce nesting. No functionalityBill Wendling
change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73143 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Add the beginnings of an implementatation of lazy liveness analysis, based ↵Owen Anderson
on "Fast Liveness Checking for SSA-form Programs" by Boissinot, et al. This is still very early, hasn't been tested, and is not yet well documented. More to come soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73141 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Remove empty file.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73140 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09I'm going to assume that this was meant to be an assignment instead of aBill Wendling
computation that isn't used. Please correct this if it's wrong! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73139 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Revert 73074 and 73099 because Windows doesn't have POSIXDavid Greene
regular expressions. We will add an OpenBSD implementation and re-apply ASAP. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73138 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Use expandCodeFor instead of expand when the result will beDan Gohman
immediately casted. At present, this is just a minor code simplification. In the future, the expansion code may be able to make better choices if it knows what the desired result type will be. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73137 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09PIC16 emits auto variables as globals. When optimizer removes a function ↵Sanjiv Gupta
entierly by estimating its side effects on globals, those globals(autos) without a function were not being printed by the Asm printer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73135 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-09Change IndexedModeAction representation.David Greene
This changes the IndexedModeAction representation to remove the limitation on the number of value types in MVT. This limitation prevents us from specifying AVX types. Prior to this change IndexedModActions was represented as follows... uint64_t IndexedModeActions[2][ISD::LAST_INDEXED_MODE]; the first dimension was used to represent loads, then stores. This imposed a limitation of 32 on the number of value types that could be handled with this method. The value type was used to shift the two bits into and out of the approprate bits in the uint64_t. With this change the array is now represented as ... uint8_t IndexedModeActions[MVT::LAST_VALUETYPE][2][ISD::LAST_INDEXED_MODE]; Takes more space but removes the limitation on MVT::LAST_VALUETYPE. The first dimension is now the value_type for the reference. The second dimension is the load [0] vs. store[1]. The third dimension represents the various modes for load store. Accesses are now direct, no shifting or masking. There are other limitations that need to be removed, so that MVT::LAST_VALUETYPE can be greater than 32. This is merely the first step towards that goal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73104 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Oops, didn't mean to commit 73102 yet. Revert it.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73103 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Change IndexedModeAction representation.David Greene
This changes the IndexedModeAction representation to remove the limitation on the number of value types in MVT. This limitation prevents us from specifying AVX types. Prior to this change IndexedModActions was represented as follows... uint64_t IndexedModeActions[2][ISD::LAST_INDEXED_MODE]; the first dimension was used to represent loads, then stores. This imposed a limitation of 32 on the number of value types that could be handled with this method. The value type was used to shift the two bits into and out of the approprate bits in the uint64_t. With this change the array is now represented as ... uint8_t IndexedModeActions[MVT::LAST_VALUETYPE][2][ISD::LAST_INDEXED_MODE]; Takes more space but removes the limitation on MVT::LAST_VALUETYPE. The first dimension is now the value_type for the reference. The second dimension is the load [0] vs. store[1]. The third dimension represents the various modes for load store. Accesses are now direct, no shifting or masking. There are other limitations that need to be removed, so that MVT::LAST_VALUETYPE can be greater than 32. This is merely the first step towards that goal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73102 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Add a !patsubst operator. Use on string types.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73099 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08TypoAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73098 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Revert hunk commited by accidentAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73097 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Add testcase for register scanveger assertion fix in r72755Anton Korobeynikov
(double def due to livevars) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73096 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08The attached patches implement most of the ARM AAPCS-VFP hard floatAnton Korobeynikov
ABI. The missing piece is support for putting "homogeneous aggregates" into registers. Patch by Sandeep Patel! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73095 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Update documentation.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Add a more robust !if test.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73091 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Fix DejaGNU run line to escape special characters.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73090 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Document the stack alignment part of target data description.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73089 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Separate V6 from V6T2 since the latter has some extra nice instructionsAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73085 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Allow setting the C runtime to be used with MSVC from cmake.Stefanus Du Toit
Patch by Tareq Siraj. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73084 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Add helper for checking of Thumb1 modeAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73080 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Make IntInits and ListInits typed. This helps deduce types of !if andDavid Greene
other operators. For the rare cases where a list type cannot be deduced, provide a []<type> syntax, where <type> is the list element type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73078 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Make !if short-circuit when possible.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73076 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Revert r72898. It does not solve the problem I want it to solve.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73075 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-08Add a !regmatch operator to do pattern matching in TableGen.David Greene
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73074 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Delete comment and fix typoBruno Cardoso Lopes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73040 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Fix wrong elf class and byte order initializations.Bruno Cardoso Lopes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73039 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Simple ELF32/64 binary files can now be emitted for x86 and x86_64 withoutBruno Cardoso Lopes
relocation sections. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73038 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Fix the run-line for this test to work correctly outside of x86.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73025 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Tweak the expansion code for BIT_CONVERT to generate better code Eli Friedman
converting from an MMX vector to an i64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73024 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Get rid of some unnecessary code.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73017 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Create FunctionType::isValidArgumentType to go along with isValidReturnType.Nick Lewycky
Also create isValidElementType for ArrayType, PointerType, StructType and VectorType. Make LLParser use them. This closes up some holes like an assertion failure on: %x = type {label} but largely doesn't change any semantics. The only thing we accept now which we didn't before is vectors of opaque type such as "<4 x opaque>". The opaque can be resolved to an int or float when linking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73016 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07A basic PIC16 toolchain driver.Mikhail Glushenkov
Nice addition to the examples and also a starting point for Sanjiv to work on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73013 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Slightly generalize the code that handles shuffles of consecutive loads Eli Friedman
on x86 to handle more cases. Fix a bug in said code that would cause it to read past the end of an object. Rewrite the code in SelectionDAGLegalize::ExpandBUILD_VECTOR to be a bit more general. Remove PerformBuildVectorCombine, which is no longer necessary with these changes. In addition to simplifying the code, with this change, we can now catch a few more cases of consecutive loads. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73012 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Remove cyclic MDNode detection. Any attempt to create a cyclic MDNode willNick Lewycky
crash LLVM first. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73011 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Refuse metadata* type for function arguments.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73010 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07PR3628: Add patterns to match SHL/SRL/SRA to the corresponding Altivec Eli Friedman
instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73009 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-07Add option for specifying the path to assembler, "as". This overrides the pathNick Lewycky
to gcc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73008 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06Don't crash on multiple return value with no obvious inserted value.Nick Lewycky
Fixes PR4314. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73007 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06PR4340: Run SimplifyDemandedVectorElts on insertelement instructions; Eli Friedman
sometimes it can find simplifications that won't be found otherwise. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73006 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06Move </pre> to column one to avoid an extra line of spaces in the example.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73003 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06Use cast<> instead of dyn_cast<> for things that are known to beJay Foad
Instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73002 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06Rename UnknownValue to CouldNotCompute, since it holds an instance ofDan Gohman
SCEVCouldNotCompute, and not SCEVUnknown. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72999 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-06Fix the expansion for CONCAT_VECTORS so that it doesn't create illegal Eli Friedman
types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72993 91177308-0d34-0410-b5e6-96231b3b80d8