| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | revert 99795, as mentioned, it is disabled anyway. | Chris Lattner | 2010-03-29 | 1 | -123/+2 | |
| | | | | | llvm-svn: 99796 | |||||
| * | Check in a (disabled) failed attempt to improve the ordering of | Chris Lattner | 2010-03-29 | 1 | -2/+123 | |
| | | | | | | | | | | patterns within the generated matcher. This works great except that the sort fails because the relation defined isn't transitive. I have a much simpler solution coming next, but want to archive the code. llvm-svn: 99795 | |||||
| * | print the complexity of the pattern being matched in the | Chris Lattner | 2010-03-29 | 4 | -59/+76 | |
| | | | | | | | comment in the generated table. llvm-svn: 99794 | |||||
| * | Add the thunks needed by this vtable. | Anders Carlsson | 2010-03-29 | 1 | -0/+11 | |
| | | | | | llvm-svn: 99793 | |||||
| * | Make sure to sort the vtable thunks by their vtable index :) With this we ↵ | Anders Carlsson | 2010-03-29 | 1 | -0/+3 | |
| | | | | | | | now pass the test from http://www.codesourcery.com/public/cxx-abi/abi-examples.html#vtable-ctor successfully. llvm-svn: 99792 | |||||
| * | Fix another thinko, so that flags don't depend on previous bases. | Anders Carlsson | 2010-03-29 | 1 | -5/+7 | |
| | | | | | llvm-svn: 99791 | |||||
| * | When generating base ctors/dtors, we need to lookup virtual bases using the ↵ | Anders Carlsson | 2010-03-29 | 1 | -4/+15 | |
| | | | | | | | vtable. llvm-svn: 99790 | |||||
| * | Add NVTBLFrm to represent A8.6.406 VTBL, VTBX Vector Table Lookup Instructions. | Johnny Chen | 2010-03-29 | 2 | -8/+9 | |
| | | | | | | | | | | | | | | These instructions use byte index in a control vector (M:Vm) to lookup byte values in a table and generate a new vector (D:Vd). The table is specified via a list of vectors, which can be: {Dn} {Dn D<n+1>} {Dn D<n+1> D<n+2>} {Dn D<n+1> D<n+2> D<n+3>} llvm-svn: 99789 | |||||
| * | Fix thinko. | Anders Carlsson | 2010-03-29 | 1 | -1/+1 | |
| | | | | | llvm-svn: 99788 | |||||
| * | Use construction vtables when needed. This is currently guarded by ↵ | Anders Carlsson | 2010-03-29 | 1 | -5/+29 | |
| | | | | | | | -fdump-vtable-layouts since it doesn't work 100% yet :) llvm-svn: 99787 | |||||
| * | Two bug fixes, we weren't updating the thunk index when creating the vtable ↵ | Anders Carlsson | 2010-03-29 | 2 | -0/+9 | |
| | | | | | | | initializer and we weren't storing the secondary virtual pointer indices. llvm-svn: 99786 | |||||
| * | Make default arguments to getFunctionNoProtoType an all or nothing option ↵ | Rafael Espindola | 2010-03-28 | 1 | -2/+5 | |
| | | | | | | | (as they already are in practise). llvm-svn: 99785 | |||||
| * | Drop default arguments no one is using. | Rafael Espindola | 2010-03-28 | 1 | -1/+1 | |
| | | | | | llvm-svn: 99783 | |||||
| * | Revert 99772. | Devang Patel | 2010-03-28 | 6 | -46/+50 | |
| | | | | | llvm-svn: 99778 | |||||
| * | Reapply r99775 with a fix for a silly bug - we were setting the vtable ↵ | Anders Carlsson | 2010-03-28 | 2 | -51/+64 | |
| | | | | | | | pointer for all bases, even those without a vtable pointer :) llvm-svn: 99777 | |||||
| * | Looks like I broke self-host again :(. | Anders Carlsson | 2010-03-28 | 2 | -59/+50 | |
| | | | | | llvm-svn: 99776 | |||||
| * | More improvements to setting the vtable pointer. We now no longer set the ↵ | Anders Carlsson | 2010-03-28 | 2 | -50/+59 | |
| | | | | | | | vtable pointer for non-virtual primary bases. We also do a pre-order traversal of the class hierarchy; this is necessary in order to get the right vbase offset offsets in base ctors/dtors. llvm-svn: 99775 | |||||
| * | add a statistic for the # times isel has to backtrack. | Chris Lattner | 2010-03-28 | 1 | -1/+3 | |
| | | | | | llvm-svn: 99774 | |||||
| * | Factor vtable pointer setting code out into a separate function. | Anders Carlsson | 2010-03-28 | 2 | -22/+45 | |
| | | | | | llvm-svn: 99773 | |||||
| * | Refactoring. Push DILocation processing in to DwarfDebug from AsmPrinter. | Devang Patel | 2010-03-28 | 6 | -50/+46 | |
| | | | | | llvm-svn: 99772 | |||||
| * | zap an extra line that Eli noticed! | Chris Lattner | 2010-03-28 | 1 | -1/+0 | |
| | | | | | llvm-svn: 99770 | |||||
| * | Properly quote the quotes :) during cmdline construction on Windows. | Anton Korobeynikov | 2010-03-28 | 1 | -6/+28 | |
| | | | | | | | | | | Otherwise, e.g. in the invocation like clang -DFOO=\"bar\" FOO macro got the bar value, not "bar". Patch by Alexander Esilevich! llvm-svn: 99763 | |||||
| * | Fix use-of-uninitialized value when RWX memory can't be allocated (PR6701). | Torok Edwin | 2010-03-28 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | SELinux doesn't allow 'execmem', returning MAP_FAILED and 'Permission denied' for mmap or RWX memory. In this case AllocateRWX was returning a MemoryBlock with uninitialized fields, which sometimes caused crashes. This patch initializes MemoryBlock fields to 0, so that the RWX-failure check works. It doesn't fix the SELinux 'execmem' issues though (the JIT will not work when SELinux is in enforcing mode). llvm-svn: 99762 | |||||
| * | improve type checking of SDNode operand count. This rejects all cases | Chris Lattner | 2010-03-28 | 2 | -8/+10 | |
| | | | | | | | | where an incorrect number of operands is provided to an sdnode instead of just a few cases. llvm-svn: 99761 | |||||
| * | fix a type contradition: XCoreISD::RETSP has one argument, not zero. | Chris Lattner | 2010-03-28 | 1 | -1/+1 | |
| | | | | | llvm-svn: 99760 | |||||
| * | finally remove the immAllOnesV_bc/immAllZerosV_bc patterns | Chris Lattner | 2010-03-28 | 3 | -9/+1 | |
| | | | | | | | | | | | and those derived from them. These are obnoxious because they were written as: PatLeaf<(bitconvert). Not having an argument was foiling adding better type checking for operand count matching up with what was required (in this case, bitconvert always requires an operand!) llvm-svn: 99759 | |||||
| * | remove a pattern with no testcase that doesn't appear to be | Chris Lattner | 2010-03-28 | 1 | -2/+0 | |
| | | | | | | | matchable: it seems like it would always constant fold. llvm-svn: 99758 | |||||
| * | fix integer negates to use the proper type for the zero vectors, | Chris Lattner | 2010-03-28 | 1 | -11/+14 | |
| | | | | | | | | this also depends on the new "bitconvert dropping" behavior just added to tblgen. llvm-svn: 99757 | |||||
| * | teach tblgen to allow patterns like (add (i32 (bitconvert (i32 GPR))), 4), | Chris Lattner | 2010-03-28 | 2 | -4/+44 | |
| | | | | | | | | | | transforming it into (add (i32 GPR), 4). This allows us to write type generic multi patterns and have tblgen automatically drop the bitconvert in the case when the types align. This allows us to fold an extra load in the changed testcase. llvm-svn: 99756 | |||||
| * | fix a typo, bitconvert from node to itself isn't valid. | Chris Lattner | 2010-03-28 | 1 | -1/+1 | |
| | | | | | llvm-svn: 99755 | |||||
| * | fix vnot matching to explicitly specify the type of the | Chris Lattner | 2010-03-28 | 1 | -10/+16 | |
| | | | | | | | | | | input to be v8i8 or v16i8, which buildvectors get canonicalized to. This allows the patterns that were previously using a bare 'vnot' to match, before they couldn't. llvm-svn: 99754 | |||||
| * | fix up vnot matching, eliminating a dead pattern, correcting a couple of | Chris Lattner | 2010-03-28 | 1 | -6/+11 | |
| | | | | | | | | patterns that would never match because of bitcast, and eliminating use of vnot_conv. llvm-svn: 99753 | |||||
| * | add some nounwinds | Chris Lattner | 2010-03-28 | 1 | -12/+12 | |
| | | | | | llvm-svn: 99752 | |||||
| * | this takes an insane amount of time to run, disable it for now (PR6727) | Chris Lattner | 2010-03-28 | 1 | -1/+3 | |
| | | | | | llvm-svn: 99751 | |||||
| * | stop using vnot_conv | Chris Lattner | 2010-03-28 | 1 | -3/+8 | |
| | | | | | llvm-svn: 99750 | |||||
| * | revert r99743, this is saying that the repmovs instructinos have an | Chris Lattner | 2010-03-28 | 1 | -2/+4 | |
| | | | | | | | *input* of other type, which is the VT. llvm-svn: 99749 | |||||
| * | remove a bunch of dead patterns. | Chris Lattner | 2010-03-28 | 1 | -13/+0 | |
| | | | | | llvm-svn: 99748 | |||||
| * | validate that input sdnodes don't exist in an output pattern. | Chris Lattner | 2010-03-28 | 1 | -8/+23 | |
| | | | | | llvm-svn: 99747 | |||||
| * | eliminate a bunch of code duplication in ParseTreePattern | Chris Lattner | 2010-03-28 | 2 | -100/+68 | |
| | | | | | | | by rotating it. llvm-svn: 99746 | |||||
| * | add some node definitions. | Chris Lattner | 2010-03-28 | 1 | -0/+8 | |
| | | | | | llvm-svn: 99745 | |||||
| * | SDTCisVT<0, isVoid> is not valid, reject it. | Chris Lattner | 2010-03-28 | 1 | -0/+3 | |
| | | | | | llvm-svn: 99744 | |||||
| * | claiming to return other is pointless. | Chris Lattner | 2010-03-28 | 1 | -4/+2 | |
| | | | | | llvm-svn: 99743 | |||||
| * | comply with the wishes of a fixme. | Chris Lattner | 2010-03-28 | 1 | -3/+0 | |
| | | | | | llvm-svn: 99742 | |||||
| * | now that (parallel) is gone and a variety of bugs in targets | Chris Lattner | 2010-03-28 | 1 | -8/+4 | |
| | | | | | | | are cleaned up, we can remove an old fixme. llvm-svn: 99741 | |||||
| * | add an optimized form of OPC_EmitMergeInputChains for the 1, 0 and | Chris Lattner | 2010-03-28 | 3 | -0/+38 | |
| | | | | | | | | 1, 1 cases which are by-far the most frequent. This shrinks the X86 isel table from 77014 -> 74657 bytes. llvm-svn: 99740 | |||||
| * | don't add nodes to the now-dead nodes list multiple times, this | Chris Lattner | 2010-03-28 | 1 | -2/+3 | |
| | | | | | | | | can cause a crash on crazy situations in msp430 when morph-node-to is disabled. llvm-svn: 99739 | |||||
| * | Improve systemz to model cmp and ucmp nodes as returning | Chris Lattner | 2010-03-28 | 2 | -43/+33 | |
| | | | | | | | their flags correctly. llvm-svn: 99738 | |||||
| * | the FPCmp node returns an i32. | Chris Lattner | 2010-03-28 | 1 | -6/+8 | |
| | | | | | llvm-svn: 99737 | |||||
| * | fix some modelling problems exposed by a patch I'm working on. bsr/bsf/ptest | Chris Lattner | 2010-03-28 | 3 | -26/+21 | |
| | | | | | | | nodes all have an EFLAGS result when made by isel lowering. llvm-svn: 99736 | |||||
| * | don't add flag nodes with chain results to the NowDeadNodes | Chris Lattner | 2010-03-28 | 1 | -2/+3 | |
| | | | | | | | list multiple times when MorphNodeTo can't be applied. llvm-svn: 99735 | |||||

