summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* reimplement vector comparisons as [fi]cmp+sext instead of using v[if]cmp.Chris Lattner2009-07-084-36/+13
| | | | | | | Also, enable them in sema so that they are tested, and now that the x86 backend has stablized. llvm-svn: 74983
* remove two methods that no longer exist.Chris Lattner2009-07-081-24/+0
| | | | llvm-svn: 74982
* more getting windows to build.Chris Lattner2009-07-081-14/+7
| | | | llvm-svn: 74981
* eliminate the v[if]cmp versions of these tests, now that [if]cmp+sext works.Chris Lattner2009-07-083-42/+1
| | | | llvm-svn: 74980
* Change these tests to use [fi]cmp+sext instead of v[fi]cmp. NoChris Lattner2009-07-086-128/+191
| | | | | | functionality change. llvm-svn: 74979
* dag combine sext(setcc) -> vsetcc before legalize. To make this safe,Chris Lattner2009-07-083-8/+25
| | | | | | | | | VSETCC must define all bits, which is different than it was documented to before. Since all targets that implement VSETCC already have this behavior, and we don't optimize based on this, just change the documentation. We now get nice code for vec_compare.ll llvm-svn: 74978
* hopefully fix the build on windows.Chris Lattner2009-07-081-0/+1
| | | | llvm-svn: 74977
* Add a todo.Evan Cheng2009-07-082-1/+9
| | | | llvm-svn: 74976
* The canonical type of typeof or decltype with a dependent type is itself,Douglas Gregor2009-07-083-10/+16
| | | | | | not Context.DependentTy. I'll let Anders check in the test case for this one... llvm-svn: 74975
* Also statically set bit 25 for BR_JT instructions.Evan Cheng2009-07-071-3/+3
| | | | llvm-svn: 74974
* LLVMContext-ification.Owen Anderson2009-07-074-31/+44
| | | | llvm-svn: 74973
* Statically encode bit 25 to indicate immediate form of data processing ↵Evan Cheng2009-07-072-14/+37
| | | | | | instructions. Patch by Sean Callanan. llvm-svn: 74972
* Overload resolution prefers non-templates to templatesDouglas Gregor2009-07-072-8/+34
| | | | llvm-svn: 74971
* --- Reverse-merging (from foreign repository) r74952 into '.':Bill Wendling2009-07-072-77/+71
| | | | | | | | | U lib/Target/X86/X86RegisterInfo.cpp U lib/Target/X86/X86RegisterInfo.h Temporarily revert. This was causing an infinite loop in the linker on Leopard. llvm-svn: 74970
* SelectionDAG::SignBitIsZero doesn't work right for vectors,Chris Lattner2009-07-071-0/+4
| | | | | | for now, conservatively return false. llvm-svn: 74969
* Commit the file I actually changed as part of lastDale Johannesen2009-07-071-10/+24
| | | | | | patch, instead of one I didn't. llvm-svn: 74968
* Operand of asm("call") (the callee function) is representedDale Johannesen2009-07-071-3/+16
| | | | | | | | | | as "X" constraint and "P" modifier on x86. Make this work. (Change may not be sufficient to fix it for non-Darwin, but I'm pretty sure it won't break anything.) gcc.apple/asm-block-32.c gcc.apple/asm-block-33.c llvm-svn: 74967
* Template argument deduction from a call has improved a bitDouglas Gregor2009-07-072-2/+2
| | | | llvm-svn: 74966
* Improve template argument deduction from a call. In particular,Douglas Gregor2009-07-073-79/+200
| | | | | | | | implement C++ [temp.deduct.call]p3b3, which allows a template-id parameter to match a derived class of the argument, while deducing template arguments. llvm-svn: 74965
* add support for legalizing an icmp where the result is illegal (4xi1) butChris Lattner2009-07-072-7/+37
| | | | | | the input is legal (4 x i32) llvm-svn: 74964
* add a trivial test that vector compares work.Chris Lattner2009-07-071-0/+7
| | | | llvm-svn: 74963
* random code cleanups.Chris Lattner2009-07-071-27/+28
| | | | llvm-svn: 74962
* implement support for spliting and scalarizing vector setcc's. ThisChris Lattner2009-07-073-9/+52
| | | | | | | finishes off enough support for vector compares to get the icmp/fcmp version of 2008-07-23-VSetCC.ll passing. llvm-svn: 74961
* lower vector icmp/fcmp to ICMP/FCMP nodes with the right resultChris Lattner2009-07-071-2/+5
| | | | | | (vector of bool). llvm-svn: 74960
* ScalarizeVecRes_ShiftOp and ScalarizeVecRes_BinOp are the same,Chris Lattner2009-07-072-12/+1
| | | | | | eliminate the former. llvm-svn: 74959
* Change NEON vldN/vstN intrinsics to specify "N" as an immediate operandBob Wilson2009-07-071-20/+12
| | | | | | instead of having a separate intrinsic for each value. llvm-svn: 74958
* add support for vector legalizing of *_EXTEND.Chris Lattner2009-07-071-15/+50
| | | | llvm-svn: 74957
* Fix http://llvm.org/PR4481: Make llvm-config print the right include paths whenJeffrey Yasskin2009-07-071-3/+6
| | | | | | srcdir!=objdir. llvm-svn: 74956
* Disable loop index split for now and let nightly tester verify its usefulness.Devang Patel2009-07-071-1/+0
| | | | llvm-svn: 74955
* verify that the fcmp version of this works just as well as theChris Lattner2009-07-071-0/+12
| | | | | | vfcmp version. We actually get better code for this silly testcase. llvm-svn: 74954
* Accidently dropped this while removing dead code in previous commit.Devang Patel2009-07-071-0/+1
| | | | llvm-svn: 74953
* DWARF requires frame moves be specified at specific times. If you have aBill Wendling2009-07-072-71/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | prologue like this: __Z3fooi: Leh_func_begin1: LBB1_0: ## entry pushl %ebp Llabel1: movl %esp, %ebp Llabel2: pushl %esi Llabel3: subl $20, %esp call "L1$pb" "L1$pb": popl %esi The "pushl %ebp" needs a table entry specifying the offset. The "movl %esp, %ebp" makes %ebp the new stack frame register, so that needs to be specified in DWARF. And "pushl %esi" saves the callee-saved %esi register, which also needs to be specified in DWARF. Before, all of this logic was in one method. This didn't work too well, because as you can see there are multiple FDE line entries that need to be created. This fix creates the "MachineMove" objects directly when they're needed; instead of waiting until the end, and losing information. llvm-svn: 74952
* Extra vector element initializers in OpenCL is an error, not a warning.Nate Begeman2009-07-071-0/+4
| | | | llvm-svn: 74951
* LLVMContext-ifiy the implementation of the C API.Owen Anderson2009-07-071-59/+102
| | | | llvm-svn: 74950
* Remove dead code.Devang Patel2009-07-072-32/+2
| | | | llvm-svn: 74949
* LLVM Context-ification.Owen Anderson2009-07-071-22/+42
| | | | llvm-svn: 74948
* Fix a typo and a grammaro in a comment.Dan Gohman2009-07-071-1/+1
| | | | llvm-svn: 74947
* Add Thumb2 movcc instructions.Evan Cheng2009-07-074-35/+153
| | | | llvm-svn: 74946
* Add missing tests.Evan Cheng2009-07-072-0/+48
| | | | llvm-svn: 74945
* Implement parsing support for the .comm directive. Patch byChris Lattner2009-07-075-0/+90
| | | | | | Kevin Enderby! llvm-svn: 74944
* Implement checking of exception spec compatibility for overriding virtual ↵Sebastian Redl2009-07-076-6/+169
| | | | | | functions. llvm-svn: 74943
* LLVMContext-ify the bitcode reader.Owen Anderson2009-07-072-57/+65
| | | | llvm-svn: 74942
* Add a paragraph about the Add->FAdd API change.Dan Gohman2009-07-071-0/+8
| | | | llvm-svn: 74941
* Add BX and BXr9 encodings. Patch by Sean Callanan.Evan Cheng2009-07-071-2/+10
| | | | llvm-svn: 74938
* Some (most) type trait expressions require that the argument passed in is a ↵Anders Carlsson2009-07-073-7/+23
| | | | | | complete type. llvm-svn: 74937
* Fix build.Mike Stump2009-07-071-0/+1
| | | | llvm-svn: 74936
* Diagnose, and not crash, when taking address of property expression.Fariborz Jahanian2009-07-072-0/+23
| | | | llvm-svn: 74935
* Use LLVMContext in the LLLexer.Owen Anderson2009-07-073-5/+10
| | | | llvm-svn: 74934
* fix a bug in post-order iterators with external storage, patch byChris Lattner2009-07-071-2/+2
| | | | | | Olaf Krzikalla! llvm-svn: 74933
* fix some type confusion in ReadVBR64: "Piece" should be only 32 bits,Chris Lattner2009-07-071-5/+8
| | | | | | | | not 64, because we read at most 32 bits at a time. OTOH, "Result" must be 64-bits and insertion into it must be 64-bit clean. Thanks to Ivan Sorokin for bringing this up. llvm-svn: 74932
OpenPOWER on IntegriCloud