summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix encoding of predicate bits on ARM BX_pred.Jim Grosbach2011-07-131-3/+2
| | | | llvm-svn: 135076
* Move the InterferenceCache cursor into the GlobalSplitCand struct.Jakob Stoklund Olesen2011-07-132-20/+23
| | | | | | | This is in preparation of supporting multiple global split candidates in a single live range split operation. llvm-svn: 135074
* Range checking for 16-bit immediates in ARM assembly.Jim Grosbach2011-07-132-1/+17
| | | | llvm-svn: 135071
* Revert r135042. As Chris pointed out, it had no effect, and was based onJay Foad2011-07-131-5/+0
| | | | | | a complete misunderstanding of the code. llvm-svn: 135070
* Fix up TargetLoweringObjectFile ctors to properly initialize fields.Evan Cheng2011-07-132-26/+67
| | | | llvm-svn: 135068
* Give the ARM BKPT instruction the right operand type.Jim Grosbach2011-07-131-5/+4
| | | | | | The immediate is of limited range and the operand type should reflect that. llvm-svn: 135066
* Add tests for ARM parsing of 'BKPT' instruction.Jim Grosbach2011-07-131-2/+1
| | | | llvm-svn: 135063
* It's not safe to fold (fptrunc (sqrt (fpext x))) to (sqrtf x) if there is ↵Evan Cheng2011-07-131-1/+2
| | | | | | another use of sqrt. rdar://9763193 llvm-svn: 135058
* Improve ARM assembly parsing diagnostics a bit.Jim Grosbach2011-07-131-21/+33
| | | | | | | | | Catch potential cascading errors on a malformed so_reg operand and bail after the first error. Add some tests for the diagnostics we do want. llvm-svn: 135055
* Destination register operand is optional for ADC and SBC ARM.Jim Grosbach2011-07-131-5/+24
| | | | llvm-svn: 135052
* Flesh out ARM Parser support for shifted-register operands.Jim Grosbach2011-07-133-8/+105
| | | | | | | Now works for parsing register shifted register and register shifted immediate arithmetic instructions, including the 'rrx' rotate with extend. llvm-svn: 135049
* 80 columns.Jim Grosbach2011-07-131-4/+5
| | | | llvm-svn: 135047
* Update MCParsedAsmOperand debug methods.Jim Grosbach2011-07-135-7/+11
| | | | | | | | | | | Update the debug output interface for MCParsedAsmOperand to have a print() method which takes an output stream argument, an << operator which invokes the print method using the given stream, and a dump() method which prints the operand to the dbgs() stream. This makes the interface more consistent with the rest of LLVM, and more convenient to use at the debugger command line. llvm-svn: 135043
* Really cache function types and anonymous struct types.Jay Foad2011-07-131-0/+5
| | | | llvm-svn: 135042
* Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.Jay Foad2011-07-1317-195/+117
| | | | llvm-svn: 135040
* Add to RuntimeDyld support different object formatsDanil Malyshev2011-07-134-599/+693
| | | | llvm-svn: 135037
* stop leaking all named struct types with an empty name. ThanksChris Lattner2011-07-133-8/+18
| | | | | | to Benjamin Kramer for steering me in the right direction here. llvm-svn: 135031
* Add an entry.Evan Cheng2011-07-131-0/+18
| | | | llvm-svn: 135024
* AVX Codegen support for 256-bit versions of vandps, vandpd, vorps, vorpd, ↵Bruno Cardoso Lopes2011-07-132-8/+27
| | | | | | vxorps, vxorpd llvm-svn: 135023
* Don't emit the FDE end label if the last thing emitted was a compact unwind andBill Wendling2011-07-132-8/+18
| | | | | | not the FDE llvm-svn: 135020
* Add an assert (which should never trigger) that triggers on a testcase I'm ↵Eli Friedman2011-07-131-1/+3
| | | | | | looking at. llvm-svn: 135018
* Improve codegen for select's:Evan Cheng2011-07-132-1/+67
| | | | | | | | | | | | | | | | | | | | if (x != 0) x = 1 if (x == 1) x = 1 Previous codegen looks like this: mov r1, r0 cmp r1, #1 mov r0, #0 moveq r0, #1 The naive lowering select between two different values. It should recognize the test is equality test so it's more a conditional move rather than a select: cmp r0, #1 movne r0, #0 rdar://9758317 llvm-svn: 135017
* Assign variable before we test it.Bill Wendling2011-07-131-2/+1
| | | | llvm-svn: 135015
* Fix obvious think-o.Bill Wendling2011-07-131-1/+1
| | | | llvm-svn: 135014
* Clean up the handling of an EBP/RBP unwind frame pointer. In particular, don'tBill Wendling2011-07-131-23/+26
| | | | | | | | assert when the frame pointer is -1 (i.e., the function is "frameless"). Still to do: "frameless" unwind information. llvm-svn: 135013
* There is a cyclic dependency between MC and Target if this method is ↵Bill Wendling2011-07-121-6/+0
| | | | | | out-of-line. llvm-svn: 135006
* Second attempt at de-constifying LLVM Types in FunctionType::get(),Jay Foad2011-07-1227-96/+78
| | | | | | StructType::get() and TargetData::getIntPtrType(). llvm-svn: 134982
* Remove IntegerType constness from TargetDataTobias Grosser2011-07-121-1/+1
| | | | llvm-svn: 134978
* simplify assertions to not be completely redundant.Chris Lattner2011-07-121-15/+2
| | | | llvm-svn: 134968
* make the IRBuilder type methods return non-const types.Chris Lattner2011-07-121-1/+1
| | | | llvm-svn: 134959
* Revert r134893 and r134888 (and related patches in other trees). It was causingBill Wendling2011-07-1228-79/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | an assert on Darwin llvm-gcc builds. Assertion failed: (castIsValid(op, S, Ty) && "Invalid cast!"), function Create, file /Users/buildslave/zorg/buildbot/smooshlab/slave-0.8/build.llvm-gcc-i386-darwin9-RA/llvm.src/lib/VMCore/Instructions.cpp, li\ ne 2067. etc. http://smooshlab.apple.com:8013/builders/llvm-gcc-i386-darwin9-RA/builds/2354 --- Reverse-merging r134893 into '.': U include/llvm/Target/TargetData.h U include/llvm/DerivedTypes.h U tools/bugpoint/ExtractFunction.cpp U unittests/Support/TypeBuilderTest.cpp U lib/Target/ARM/ARMGlobalMerge.cpp U lib/Target/TargetData.cpp U lib/VMCore/Constants.cpp U lib/VMCore/Type.cpp U lib/VMCore/Core.cpp U lib/Transforms/Utils/CodeExtractor.cpp U lib/Transforms/Instrumentation/ProfilingUtils.cpp U lib/Transforms/IPO/DeadArgumentElimination.cpp U lib/CodeGen/SjLjEHPrepare.cpp --- Reverse-merging r134888 into '.': G include/llvm/DerivedTypes.h U include/llvm/Support/TypeBuilder.h U include/llvm/Intrinsics.h U unittests/Analysis/ScalarEvolutionTest.cpp U unittests/ExecutionEngine/JIT/JITTest.cpp U unittests/ExecutionEngine/JIT/JITMemoryManagerTest.cpp U unittests/VMCore/PassManagerTest.cpp G unittests/Support/TypeBuilderTest.cpp U lib/Target/MBlaze/MBlazeIntrinsicInfo.cpp U lib/Target/Blackfin/BlackfinIntrinsicInfo.cpp U lib/VMCore/IRBuilder.cpp G lib/VMCore/Type.cpp U lib/VMCore/Function.cpp G lib/VMCore/Core.cpp U lib/VMCore/Module.cpp U lib/AsmParser/LLParser.cpp U lib/Transforms/Utils/CloneFunction.cpp G lib/Transforms/Utils/CodeExtractor.cpp U lib/Transforms/Utils/InlineFunction.cpp U lib/Transforms/Instrumentation/GCOVProfiling.cpp U lib/Transforms/Scalar/ObjCARC.cpp U lib/Transforms/Scalar/SimplifyLibCalls.cpp U lib/Transforms/Scalar/MemCpyOptimizer.cpp G lib/Transforms/IPO/DeadArgumentElimination.cpp U lib/Transforms/IPO/ArgumentPromotion.cpp U lib/Transforms/InstCombine/InstCombineCompares.cpp U lib/Transforms/InstCombine/InstCombineAndOrXor.cpp U lib/Transforms/InstCombine/InstCombineCalls.cpp U lib/CodeGen/DwarfEHPrepare.cpp U lib/CodeGen/IntrinsicLowering.cpp U lib/Bitcode/Reader/BitcodeReader.cpp llvm-svn: 134949
* TypeMap had a destructor that destroyed the types it held. DenseMap did not, soNick Lewycky2011-07-121-14/+18
| | | | | | destroy those types in ~LLVMContext. llvm-svn: 134945
* indvars: Code reorganization in preparation forAndrew Trick2011-07-121-589/+624
| | | | | | | | | | | | | | | | | LinearFunctionTestReplace rewrite. No functionality. I've been wanting to group the indvar subphases into sections and order them by their logical sequence. My next checkin adds functions related to LFTR, and doing the reorg now should help reviewers. Since, most of the code in IndVarSimplify.cpp has recently been replaced or will be replaced soon, obscuring blame should not be an issue. This seems like an ideal time to shuffle the code around. I'm happy to take more suggestions for cleaning up the code. Or if you've been wanting to cleanup anything in this file yourself, now is a good time. llvm-svn: 134941
* Most MCCodeEmitter's don't meed MCContext.Evan Cheng2011-07-113-7/+3
| | | | llvm-svn: 134922
* Resynchronize EDInfo.h and EDEmitter.cpp.Shantonu Sen2011-07-112-11/+29
| | | | | | | | | | | | The enum names as well as order (i.e. value) had skewed, which means that consumers of the tablegen-ed table would see different values than intended. Make both files have a superset of enums, and add classification as needed for numMCOperands. Reviewed by Owen Anderson llvm-svn: 134905
* Fix recognition of ARM 'adcs' mnemonic.Jim Grosbach2011-07-111-23/+26
| | | | | | The 'CS' is not a predication suffix in this case. llvm-svn: 134903
* Simplify printing of ARM shifted immediates.Jim Grosbach2011-07-113-35/+0
| | | | | | | | | Print shifted immediate values directly rather than as a payload+shifter value pair. This makes for more readable output assembly code, simplifies the instruction printer, and is consistent with how Thumb immediates are displayed. llvm-svn: 134902
* De-constify Types in StructType::get() and TargetData::getIntPtrType().Jay Foad2011-07-119-22/+14
| | | | llvm-svn: 134893
* De-constify Types in FunctionType::get().Jay Foad2011-07-1123-75/+65
| | | | llvm-svn: 134888
* Remove mentions of type planes.Jay Foad2011-07-111-4/+4
| | | | llvm-svn: 134887
* - Eliminate MCCodeEmitter's dependency on TargetMachine. It now uses MCInstrInfoEvan Cheng2011-07-1139-142/+341
| | | | | | | | | | | | and MCSubtargetInfo. - Added methods to update subtarget features (used when targets automatically detect subtarget features or switch modes). - Teach X86Subtarget to update MCSubtargetInfo features bits since the MCSubtargetInfo layer can be shared with other modules. - These fixes .code 16 / .code 32 support since mode switch is updated in MCSubtargetInfo so MC code emitter can do the right thing. llvm-svn: 134884
* Don't duplicate the work done by a gep into a "bitcast" if the gep hasRafael Espindola2011-07-111-0/+8
| | | | | | | | more than one use. Fixes PR10322. llvm-svn: 134883
* Fix <rdar://problem/9751331>.Cameron Zwarich2011-07-111-3/+3
| | | | llvm-svn: 134882
* Silence -Wunused-variable in release builds.Chandler Carruth2011-07-101-0/+2
| | | | llvm-svn: 134868
* Use BranchProbability instead of floating points in IfConverter.Jakub Staszak2011-07-103-49/+56
| | | | llvm-svn: 134858
* Don't analyze block if it's not considered for ifcvt anymore.Jakub Staszak2011-07-101-2/+3
| | | | llvm-svn: 134856
* the various ConstantExpr::get*Ty methods existed to work with issues aroundChris Lattner2011-07-091-145/+90
| | | | | | type refinement. Zap them now that type refinement is toast. llvm-svn: 134837
* don't load element before checking to see if it is valid.Chris Lattner2011-07-091-2/+2
| | | | llvm-svn: 134836
* Eliminate the WriteTypeSymbolic function. Now that types knowChris Lattner2011-07-091-5/+0
| | | | | | their names, we don't need a module around to print them. llvm-svn: 134835
* stop using WriteTypeSymbolic.Chris Lattner2011-07-091-3/+1
| | | | llvm-svn: 134833
OpenPOWER on IntegriCloud