summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* remove a confused pattern that is trying to match an addressChris Lattner2010-02-231-7/+0
| | | | | | then use it as an MMX register (!?). llvm-svn: 96901
* reject patterns that have dead named arguments in the input patternChris Lattner2010-02-231-7/+24
| | | | | | this is tidier and can find bugs. llvm-svn: 96900
* remove a bunch of dead named arguments in input patterns,Chris Lattner2010-02-235-46/+46
| | | | | | though some look dubious afaict, these are all ok. llvm-svn: 96899
* reject patterns that mention a name in the destination patternChris Lattner2010-02-231-3/+29
| | | | | | | but not in the input. Previously, this would trigger an abort late in the isel logic. llvm-svn: 96898
* Implement IsOverriderUsed. This can't be tested yet due to some other bugs :)Anders Carlsson2010-02-231-1/+46
| | | | llvm-svn: 96897
* merge some code.Chris Lattner2010-02-232-16/+21
| | | | llvm-svn: 96896
* When comparing two calling conventions after redeclaring a function, compareCharles Davis2010-02-232-1/+6
| | | | | | | the canonical calling conventions instead of comparing the raw calling conventions directly. Fixes PR6361. llvm-svn: 96895
* fix a type mismatch in this pattern, where we were using an i64 imm in a Chris Lattner2010-02-231-1/+7
| | | | | | | | place where an i32 imm was required, the old isel just got lucky. This fixes CodeGen/X86/x86-64-and-mask.ll llvm-svn: 96894
* Move the rest of the unreachable code analysis from libSemaTed Kremenek2010-02-233-217/+270
| | | | | | to libAnalysis (with only the error reporting in libSema). llvm-svn: 96893
* Simplify check for basic block with a CXXTryStmt terminator.Ted Kremenek2010-02-231-3/+2
| | | | llvm-svn: 96892
* more tidying upChris Lattner2010-02-231-15/+15
| | | | llvm-svn: 96891
* Update memdep when load PRE inserts a new load, and add some debug output.Bob Wilson2010-02-231-0/+2
| | | | | | I don't have a small testcase for this. llvm-svn: 96890
* reduce indentation by eliminating 'else after return'Chris Lattner2010-02-231-23/+33
| | | | llvm-svn: 96889
* reapply my cellspu changes with a fix to not break the old isel.Chris Lattner2010-02-231-42/+73
| | | | llvm-svn: 96885
* When a reference to a field of a struct/union/class is passed to theCharles Davis2010-02-232-0/+12
| | | | | | | __alignof__ operator, make sure to take into account the packed alignment of the struct/union/class itself. Matches GCC's behavior and fixes PR6362. llvm-svn: 96884
* Stub out IsOverriderUsed.Anders Carlsson2010-02-231-4/+50
| | | | llvm-svn: 96883
* More fixes. Don't try to emit a virtual base vtable if the virtual base in ↵Anders Carlsson2010-02-232-10/+72
| | | | | | question is a primary virtual base of some other base. llvm-svn: 96881
* Always emit vcall offset for the primary base, not only if it's virtual. ↵Anders Carlsson2010-02-232-5/+60
| | | | | | Remove a debug printf, and add the test case that now passes. llvm-svn: 96880
* Simplify the vcall offset calculation and make it give the correct answers ↵Anders Carlsson2010-02-231-26/+17
| | | | | | :) My test case now has the right values but in the wrong order. llvm-svn: 96877
* Add missing header file.Ted Kremenek2010-02-231-0/+41
| | | | llvm-svn: 96875
* More work on vcall offsets. We now emit the right number of vcall offsets in ↵Anders Carlsson2010-02-231-5/+1
| | | | | | my local test case, but not the right values. llvm-svn: 96874
* Update LangRef to match the code; pointers default to being 64-bit.Dan Gohman2010-02-231-1/+1
| | | | llvm-svn: 96873
* Start moving some of the logic for the unreachable code analysis out of libSemaTed Kremenek2010-02-233-46/+68
| | | | | | and into libAnalysis. llvm-svn: 96872
* Revert 96854, 96852, and 96849, unbreaking test/CodeGen/CellSPU/i64ops.ll.Dan Gohman2010-02-231-71/+42
| | | | llvm-svn: 96871
* X86InstrInfoSSE.td declares PINSRW as having type v8i16,Chris Lattner2010-02-233-7/+19
| | | | | | | don't alis it in the MMX .td file with a different width, split into two X86ISD opcodes. This fixes an x86 testcase. llvm-svn: 96859
* Added versions of VCGE, VCGT, VCLE, and VCLT NEON instructions which compare toJohnny Chen2010-02-231-9/+25
| | | | | | | | (immediate #0) for disassembly only. A8.6.283, A8.6.285, A8.6.287, A8.6.290 llvm-svn: 96856
* Convert use of std::queue to llvm::SmallVector and fix buildbot.Ted Kremenek2010-02-231-30/+33
| | | | llvm-svn: 96855
* fix hte last cellspu failure.Chris Lattner2010-02-231-11/+12
| | | | llvm-svn: 96854
* Move BaseOffset out of the FinalOverriders class.Anders Carlsson2010-02-231-45/+44
| | | | llvm-svn: 96853
* hack around more crimes in instruction selection.Chris Lattner2010-02-231-16/+26
| | | | llvm-svn: 96852
* Convert this test to FileCheck and add a testcase for PR3574.Dan Gohman2010-02-231-3/+15
| | | | llvm-svn: 96851
* More support for ivars in class extension.Fariborz Jahanian2010-02-235-6/+85
| | | | llvm-svn: 96850
* the cell backend is making all sorts of unsafe and incorrect assumptions Chris Lattner2010-02-231-26/+44
| | | | | | | about ownership and update policies. It isn't clear why it is doing all this lowering at isel time instead of in legalize. This fixes fcmp64.ll llvm-svn: 96849
* Use SmallVectorImpl::iterator.Ted Kremenek2010-02-231-4/+2
| | | | llvm-svn: 96848
* Simplify logic for determining values of 'ReturnsVoid' and 'HasNoReturn' flags.Ted Kremenek2010-02-231-9/+7
| | | | | | No functionality change. llvm-svn: 96847
* Correct comment.Zhongxing Xu2010-02-231-1/+0
| | | | llvm-svn: 96846
* really fix an off-by-one errorChris Lattner2010-02-231-1/+1
| | | | llvm-svn: 96845
* fix an off-by-one error.Chris Lattner2010-02-231-1/+1
| | | | llvm-svn: 96844
* switch the value# in OPC_CompleteMatch and OPC_EmitNode to use aChris Lattner2010-02-232-5/+53
| | | | | | VBR encoding for the insanity being perpetrated by the spu backend. llvm-svn: 96843
* Perform two more constructor/destructor code-size optimizations:John McCall2010-02-2314-60/+425
| | | | | | | | | | | | | | | | 1) emit base destructors as aliases to their unique base class destructors under some careful conditions. This is enabled for the same targets that can support complete-to-base aliases, i.e. not darwin. 2) Emit non-variadic complete constructors for classes with no virtual bases as calls to the base constructor. This is enabled on all targets and in theory can trigger in situations that the alias optimization can't (mostly involving virtual bases, mostly not yet supported). These are bundled together because I didn't think it worthwhile to split them, not because they really need to be. llvm-svn: 96842
* Added VCEQ (immediate #0) NEON instruction for disassembly only.Johnny Chen2010-02-231-0/+41
| | | | | | A8.6.281 llvm-svn: 96838
* Dead code eliminationJakob Stoklund Olesen2010-02-232-14/+0
| | | | llvm-svn: 96837
* Implement crazy destructor name lookup semantics differently inDouglas Gregor2010-02-235-15/+134
| | | | | | | | | | C++98/03 and C++0x, since the '0x semantics break valid C++98/03 code. This new mess is tracked by core issue 399, which is still unresolved. Fixes PR6358 and PR6359. llvm-svn: 96836
* Fix viewCFG on Linux.Jeffrey Yasskin2010-02-231-1/+1
| | | | llvm-svn: 96834
* add a new Push2 opcode for targets (like cellspu) which haveChris Lattner2010-02-222-6/+32
| | | | | | | | ridiculously ginormous patterns and need more than one byte of displacement for encodings. This fixes CellSPU/fdiv.ll. SPU is still doing something else ridiculous though. llvm-svn: 96833
* These should not have been committed.Evan Cheng2010-02-224-46/+10
| | | | llvm-svn: 96827
* no need to run llvm-as here.Chris Lattner2010-02-225-5/+5
| | | | llvm-svn: 96826
* Instcombine constant folding can normalize gep with negative index to index ↵Evan Cheng2010-02-226-15/+86
| | | | | | with large offset. When instcombine objsize checking transformation sees these geps where the offset seemingly point out of bound, it should just return "i don't know" rather than asserting. llvm-svn: 96825
* Change ComplexPattern handling to push the node being matched asChris Lattner2010-02-221-21/+13
| | | | | | | | | | well as the operands produced when the pattern is matched. This allows CheckSame to work correctly when matching replicated names involving ComplexPatterns. This fixes a bunch of MSP430 failures, we're down to 13 failures, two of which are due to a sched bug. llvm-svn: 96824
* Rework the CIndex API for displaying diagnostics. Instead of printingDouglas Gregor2010-02-225-38/+56
| | | | | | | the diagnostics to a FILE*, return a CXString containing the formatted diagnostic. llvm-svn: 96823
OpenPOWER on IntegriCloud