aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* LLVMContext-ification.Owen Anderson2009-07-074-31/+44
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74973 91177308-0d34-0410-b5e6-96231b3b80d8
* Statically encode bit 25 to indicate immediate form of data processing ↵Evan Cheng2009-07-072-14/+37
| | | | | | instructions. Patch by Sean Callanan. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74972 91177308-0d34-0410-b5e6-96231b3b80d8
* --- 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74970 91177308-0d34-0410-b5e6-96231b3b80d8
* SelectionDAG::SignBitIsZero doesn't work right for vectors,Chris Lattner2009-07-071-0/+4
| | | | | | | | for now, conservatively return false. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74969 91177308-0d34-0410-b5e6-96231b3b80d8
* Commit the file I actually changed as part of lastDale Johannesen2009-07-071-10/+24
| | | | | | | | patch, instead of one I didn't. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74968 91177308-0d34-0410-b5e6-96231b3b80d8
* 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 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74967 91177308-0d34-0410-b5e6-96231b3b80d8
* 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) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74964 91177308-0d34-0410-b5e6-96231b3b80d8
* add a trivial test that vector compares work.Chris Lattner2009-07-071-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74963 91177308-0d34-0410-b5e6-96231b3b80d8
* random code cleanups.Chris Lattner2009-07-071-27/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74962 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74961 91177308-0d34-0410-b5e6-96231b3b80d8
* lower vector icmp/fcmp to ICMP/FCMP nodes with the right resultChris Lattner2009-07-071-2/+5
| | | | | | | (vector of bool). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74960 91177308-0d34-0410-b5e6-96231b3b80d8
* ScalarizeVecRes_ShiftOp and ScalarizeVecRes_BinOp are the same,Chris Lattner2009-07-072-12/+1
| | | | | | | eliminate the former. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74959 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74958 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for vector legalizing of *_EXTEND.Chris Lattner2009-07-071-15/+50
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74957 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix http://llvm.org/PR4481: Make llvm-config print the right include paths whenJeffrey Yasskin2009-07-071-3/+6
| | | | | | | srcdir!=objdir. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74956 91177308-0d34-0410-b5e6-96231b3b80d8
* Disable loop index split for now and let nightly tester verify its usefulness.Devang Patel2009-07-071-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74955 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74954 91177308-0d34-0410-b5e6-96231b3b80d8
* Accidently dropped this while removing dead code in previous commit.Devang Patel2009-07-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74953 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74952 91177308-0d34-0410-b5e6-96231b3b80d8
* LLVMContext-ifiy the implementation of the C API.Owen Anderson2009-07-071-59/+102
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74950 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead code.Devang Patel2009-07-072-32/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74949 91177308-0d34-0410-b5e6-96231b3b80d8
* LLVM Context-ification.Owen Anderson2009-07-071-22/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74948 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo and a grammaro in a comment.Dan Gohman2009-07-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74947 91177308-0d34-0410-b5e6-96231b3b80d8
* Add Thumb2 movcc instructions.Evan Cheng2009-07-074-35/+153
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74946 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing tests.Evan Cheng2009-07-072-0/+48
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74945 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement parsing support for the .comm directive. Patch byChris Lattner2009-07-075-0/+90
| | | | | | | Kevin Enderby! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74944 91177308-0d34-0410-b5e6-96231b3b80d8
* LLVMContext-ify the bitcode reader.Owen Anderson2009-07-072-57/+65
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74942 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a paragraph about the Add->FAdd API change.Dan Gohman2009-07-071-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74941 91177308-0d34-0410-b5e6-96231b3b80d8
* Add BX and BXr9 encodings. Patch by Sean Callanan.Evan Cheng2009-07-071-2/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74938 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix build.Mike Stump2009-07-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74936 91177308-0d34-0410-b5e6-96231b3b80d8
* Use LLVMContext in the LLLexer.Owen Anderson2009-07-073-5/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74934 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a bug in post-order iterators with external storage, patch byChris Lattner2009-07-071-2/+2
| | | | | | | Olaf Krzikalla! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74933 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74932 91177308-0d34-0410-b5e6-96231b3b80d8
* Have scoped mutexes take referenes instead of pointers.Owen Anderson2009-07-0718-78/+76
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74931 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix lli to print an error and exit when EE returns null but no string. PatchChris Lattner2009-07-071-2/+5
| | | | | | | by Eric Rannaud! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74930 91177308-0d34-0410-b5e6-96231b3b80d8
* "BinaryObject.h was implicitly converting between uint{16,32,64}_t toChris Lattner2009-07-071-58/+58
| | | | | | | | | | | | uint8_t (via 'foo & 255'), i replaced this with an explicit (uint8_t) cast which is equivalent, faster and more correct (silences type-related warnings). Also, following coding standards I replaced post-increment with pre-increment." Patch by Ryan Flynn! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74929 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unused parameter.Bill Wendling2009-07-071-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74928 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate the static constructors and locks from DynamicLibrary.cpp.Chris Lattner2009-07-072-26/+42
| | | | | | | | | | | | | | | | | | | | This fixes PR4512 and eliminating static ctors is always good. Losing thread safety is unfortunate, but the code is just incredibly poorly designed. If someone is interested, the "right" solution is to split DynamicLibrary.cpp into two separate pieces: a stateless piece in libsystem, and a simple support file in libsupport that has the "state" (e.g. AddSymbol) in managed static objects. Doing this would both fix memory leaks we already have, as well as make the code thread safe again. it would also make sense to move all the unix specific code in System/DynamicLibrary.cpp into System/Unix/DynamicLibrary.inc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74927 91177308-0d34-0410-b5e6-96231b3b80d8
* remove dead code, noone creates instances of "DynamicLibrary", so the ctor ↵Chris Lattner2009-07-072-67/+31
| | | | | | and dtor are dead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74926 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert 74898. It broke several tests.Evan Cheng2009-07-071-9/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74925 91177308-0d34-0410-b5e6-96231b3b80d8
* we don't use libtool anymore, update comments.Chris Lattner2009-07-071-12/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74924 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix braces.Edwin Török2009-07-071-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74923 91177308-0d34-0410-b5e6-96231b3b80d8
* Introduce new error handling API.Edwin Török2009-07-075-7/+118
| | | | | | | | | This will replace exit()/abort() style error handling with an API that allows clients to register custom error handling hooks. The default is to call exit(1) when no error handler is provided. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74922 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-LLVMContext-ize DebugInfo, now with less breakage.Owen Anderson2009-07-072-58/+75
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74920 91177308-0d34-0410-b5e6-96231b3b80d8
* Change all SCEV* to SCEV *.Dan Gohman2009-07-0712-511/+514
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74918 91177308-0d34-0410-b5e6-96231b3b80d8
* This parameter should default to true, not false.Owen Anderson2009-07-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74915 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Mikhail Glushenkov2009-07-071-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74914 91177308-0d34-0410-b5e6-96231b3b80d8
* Documentation update.Mikhail Glushenkov2009-07-071-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74913 91177308-0d34-0410-b5e6-96231b3b80d8
* Show how to modify built-in options.Mikhail Glushenkov2009-07-071-2/+19
| | | | | | | Sanjiv complained about the need to maintain local changes to lib/CompilerDriver. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74912 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert part of r74873 that broke Clang's debug info generation.Owen Anderson2009-07-071-81/+57
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74910 91177308-0d34-0410-b5e6-96231b3b80d8