oota-llvm.git
14 years agoConvert more abort() calls to llvm_report_error().
Torok Edwin [Wed, 8 Jul 2009 19:04:27 +0000 (19:04 +0000)]
Convert more abort() calls to llvm_report_error().
Also remove trailing semicolon.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75027 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoSwitch GlobalVariable ctors to a sane API, where *either* a context or a module is...
Owen Anderson [Wed, 8 Jul 2009 19:03:57 +0000 (19:03 +0000)]
Switch GlobalVariable ctors to a sane API, where *either* a context or a module is required.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75025 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd some more check for vector compares.
Chris Lattner [Wed, 8 Jul 2009 18:51:25 +0000 (18:51 +0000)]
add some more check for vector compares.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75024 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoconvert a test to "FileCheck" style.
Chris Lattner [Wed, 8 Jul 2009 18:48:24 +0000 (18:48 +0000)]
convert a test to "FileCheck" style.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75023 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a new little "FileCheck" utility for regression testing.
Chris Lattner [Wed, 8 Jul 2009 18:44:05 +0000 (18:44 +0000)]
Add a new little "FileCheck" utility for regression testing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75022 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPush methods into base class in preparation for sharing.
David Goodwin [Wed, 8 Jul 2009 18:31:39 +0000 (18:31 +0000)]
Push methods into base class in preparation for sharing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75020 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement NEON vld1 instructions.
Bob Wilson [Wed, 8 Jul 2009 18:11:30 +0000 (18:11 +0000)]
Implement NEON vld1 instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75019 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoStart converting to new error handling API.
Torok Edwin [Wed, 8 Jul 2009 18:01:40 +0000 (18:01 +0000)]
Start converting to new error handling API.
cerr+abort -> llvm_report_error
assert(0)+abort -> LLVM_UNREACHABLE (assert(0)+llvm_unreachable-> abort() included)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75018 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoConform...
David Goodwin [Wed, 8 Jul 2009 17:55:48 +0000 (17:55 +0000)]
Conform...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75017 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoStart breaking out common base functionality for register info.
David Goodwin [Wed, 8 Jul 2009 17:28:55 +0000 (17:28 +0000)]
Start breaking out common base functionality for register info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75016 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoconvert comments to doxygen style
Chris Lattner [Wed, 8 Jul 2009 17:09:18 +0000 (17:09 +0000)]
convert comments to doxygen style

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75015 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd rev16 test... xfail for now
David Goodwin [Wed, 8 Jul 2009 16:15:06 +0000 (16:15 +0000)]
Add rev16 test... xfail for now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75012 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd myself to blame file...
David Goodwin [Wed, 8 Jul 2009 16:12:12 +0000 (16:12 +0000)]
Add myself to blame file...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75011 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCheckpoint Thumb2 Instr info work. Generalized base code so that it can be shared...
David Goodwin [Wed, 8 Jul 2009 16:09:28 +0000 (16:09 +0000)]
Checkpoint Thumb2 Instr info work. Generalized base code so that it can be shared between ARM and Thumb2. Not yet activated because register information must be generalized first.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75010 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove trailing whitespace. Reorder some methods
Duncan Sands [Wed, 8 Jul 2009 11:36:39 +0000 (11:36 +0000)]
Remove trailing whitespace.  Reorder some methods
and cases alphabetically.  No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75001 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUpdate the example to show that an archive can contain llvm bitcode.
Rafael Espindola [Wed, 8 Jul 2009 11:13:34 +0000 (11:13 +0000)]
Update the example to show that an archive can contain llvm bitcode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75000 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoTrial first commit
Alisdair Meredith [Wed, 8 Jul 2009 09:04:19 +0000 (09:04 +0000)]
Trial first commit
Fixed build, requires std header before using std::string

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74995 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoMark sublw_cc and subfw_cc as Terminator insns so that they are part of the terminato...
Sanjiv Gupta [Wed, 8 Jul 2009 05:40:05 +0000 (05:40 +0000)]
Mark sublw_cc and subfw_cc as Terminator insns so that they are part of the terminator insns for a basic block alongwith branch insns. This way a copy is not getting inserted between cmp and branch during PHIElimination disturbing the status flags.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74992 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove the vicmp and vfcmp instructions. Because we never had a release with
Nick Lewycky [Wed, 8 Jul 2009 03:04:38 +0000 (03:04 +0000)]
Remove the vicmp and vfcmp instructions. Because we never had a release with
these instructions, no autoupgrade or backwards compatibility support is
provided.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74991 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a Thumb2 instruction flag to that indicates whether the instruction can be transf...
Evan Cheng [Wed, 8 Jul 2009 01:46:35 +0000 (01:46 +0000)]
Add a Thumb2 instruction flag to that indicates whether the instruction can be transformed to 16-bit variant.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74988 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoPush LLVMContext through GlobalVariables and IRBuilder.
Owen Anderson [Wed, 8 Jul 2009 01:26:06 +0000 (01:26 +0000)]
Push LLVMContext through GlobalVariables and IRBuilder.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74985 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoremove two methods that no longer exist.
Chris Lattner [Wed, 8 Jul 2009 01:07:39 +0000 (01:07 +0000)]
remove two methods that no longer exist.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74982 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agomore getting windows to build.
Chris Lattner [Wed, 8 Jul 2009 00:52:12 +0000 (00:52 +0000)]
more getting windows to build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74981 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoeliminate the v[if]cmp versions of these tests, now that [if]cmp+sext works.
Chris Lattner [Wed, 8 Jul 2009 00:49:35 +0000 (00:49 +0000)]
eliminate the v[if]cmp versions of these tests, now that [if]cmp+sext works.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74980 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange these tests to use [fi]cmp+sext instead of v[fi]cmp. No
Chris Lattner [Wed, 8 Jul 2009 00:46:57 +0000 (00:46 +0000)]
Change these tests to use [fi]cmp+sext instead of v[fi]cmp.  No
functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74979 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agodag combine sext(setcc) -> vsetcc before legalize. To make this safe,
Chris Lattner [Wed, 8 Jul 2009 00:31:33 +0000 (00:31 +0000)]
dag combine sext(setcc) -> vsetcc before legalize.  To make this safe,
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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74978 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agohopefully fix the build on windows.
Chris Lattner [Wed, 8 Jul 2009 00:29:32 +0000 (00:29 +0000)]
hopefully fix the build on windows.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74977 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a todo.
Evan Cheng [Wed, 8 Jul 2009 00:05:05 +0000 (00:05 +0000)]
Add a todo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74976 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAlso statically set bit 25 for BR_JT instructions.
Evan Cheng [Tue, 7 Jul 2009 23:45:10 +0000 (23:45 +0000)]
Also statically set bit 25 for BR_JT instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74974 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoLLVMContext-ification.
Owen Anderson [Tue, 7 Jul 2009 23:43:39 +0000 (23:43 +0000)]
LLVMContext-ification.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74973 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoStatically encode bit 25 to indicate immediate form of data processing instructions...
Evan Cheng [Tue, 7 Jul 2009 23:40:25 +0000 (23:40 +0000)]
Statically encode bit 25 to indicate immediate form of data processing instructions. Patch by Sean Callanan.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74972 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago--- Reverse-merging (from foreign repository) r74952 into '.':
Bill Wendling [Tue, 7 Jul 2009 23:37:49 +0000 (23:37 +0000)]
--- Reverse-merging (from foreign repository) r74952 into '.':
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

14 years agoSelectionDAG::SignBitIsZero doesn't work right for vectors,
Chris Lattner [Tue, 7 Jul 2009 23:28:46 +0000 (23:28 +0000)]
SelectionDAG::SignBitIsZero doesn't work right for vectors,
for now, conservatively return false.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74969 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoCommit the file I actually changed as part of last
Dale Johannesen [Tue, 7 Jul 2009 23:28:22 +0000 (23:28 +0000)]
Commit the file I actually changed as part of last
patch, instead of one I didn't.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74968 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoOperand of asm("call") (the callee function) is represented
Dale Johannesen [Tue, 7 Jul 2009 23:26:33 +0000 (23:26 +0000)]
Operand of asm("call") (the callee function) is represented
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

14 years agoadd support for legalizing an icmp where the result is illegal (4xi1) but
Chris Lattner [Tue, 7 Jul 2009 23:03:54 +0000 (23:03 +0000)]
add support for legalizing an icmp where the result is illegal (4xi1) but
the input is legal (4 x i32)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74964 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoadd a trivial test that vector compares work.
Chris Lattner [Tue, 7 Jul 2009 22:51:09 +0000 (22:51 +0000)]
add a trivial test that vector compares work.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74963 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agorandom code cleanups.
Chris Lattner [Tue, 7 Jul 2009 22:49:15 +0000 (22:49 +0000)]
random code cleanups.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74962 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoimplement support for spliting and scalarizing vector setcc's. This
Chris Lattner [Tue, 7 Jul 2009 22:47:46 +0000 (22:47 +0000)]
implement support for spliting and scalarizing vector setcc's.  This
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

14 years agolower vector icmp/fcmp to ICMP/FCMP nodes with the right result
Chris Lattner [Tue, 7 Jul 2009 22:41:32 +0000 (22:41 +0000)]
lower vector icmp/fcmp to ICMP/FCMP nodes with the right result
(vector of bool).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74960 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoScalarizeVecRes_ShiftOp and ScalarizeVecRes_BinOp are the same,
Chris Lattner [Tue, 7 Jul 2009 22:28:41 +0000 (22:28 +0000)]
ScalarizeVecRes_ShiftOp and ScalarizeVecRes_BinOp are the same,
eliminate the former.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74959 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange NEON vldN/vstN intrinsics to specify "N" as an immediate operand
Bob Wilson [Tue, 7 Jul 2009 22:27:20 +0000 (22:27 +0000)]
Change NEON vldN/vstN intrinsics to specify "N" as an immediate operand
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

14 years agoadd support for vector legalizing of *_EXTEND.
Chris Lattner [Tue, 7 Jul 2009 22:27:17 +0000 (22:27 +0000)]
add support for vector legalizing of *_EXTEND.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74957 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix http://llvm.org/PR4481: Make llvm-config print the right include paths when
Jeffrey Yasskin [Tue, 7 Jul 2009 22:15:37 +0000 (22:15 +0000)]
Fix llvm.org/PR4481: Make llvm-config print the right include paths when
srcdir!=objdir.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74956 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDisable loop index split for now and let nightly tester verify its usefulness.
Devang Patel [Tue, 7 Jul 2009 22:09:42 +0000 (22:09 +0000)]
Disable loop index split for now and let nightly tester verify its usefulness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74955 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoverify that the fcmp version of this works just as well as the
Chris Lattner [Tue, 7 Jul 2009 22:07:47 +0000 (22:07 +0000)]
verify that the fcmp version of this works just as well as the
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

14 years agoAccidently dropped this while removing dead code in previous commit.
Devang Patel [Tue, 7 Jul 2009 21:55:14 +0000 (21:55 +0000)]
Accidently dropped this while removing dead code in previous commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74953 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDWARF requires frame moves be specified at specific times. If you have a
Bill Wendling [Tue, 7 Jul 2009 21:53:07 +0000 (21:53 +0000)]
DWARF requires frame moves be specified at specific times. If you have a
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

14 years agoLLVMContext-ifiy the implementation of the C API.
Owen Anderson [Tue, 7 Jul 2009 21:33:58 +0000 (21:33 +0000)]
LLVMContext-ifiy the implementation of the C API.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74950 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRemove dead code.
Devang Patel [Tue, 7 Jul 2009 21:12:32 +0000 (21:12 +0000)]
Remove dead code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74949 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoLLVM Context-ification.
Owen Anderson [Tue, 7 Jul 2009 21:07:14 +0000 (21:07 +0000)]
LLVM Context-ification.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74948 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix a typo and a grammaro in a comment.
Dan Gohman [Tue, 7 Jul 2009 20:47:48 +0000 (20:47 +0000)]
Fix a typo and a grammaro in a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74947 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd Thumb2 movcc instructions.
Evan Cheng [Tue, 7 Jul 2009 20:39:03 +0000 (20:39 +0000)]
Add Thumb2 movcc instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74946 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd missing tests.
Evan Cheng [Tue, 7 Jul 2009 20:38:08 +0000 (20:38 +0000)]
Add missing tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74945 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoImplement parsing support for the .comm directive. Patch by
Chris Lattner [Tue, 7 Jul 2009 20:30:46 +0000 (20:30 +0000)]
Implement parsing support for the .comm directive.  Patch by
Kevin Enderby!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74944 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoLLVMContext-ify the bitcode reader.
Owen Anderson [Tue, 7 Jul 2009 20:18:58 +0000 (20:18 +0000)]
LLVMContext-ify the bitcode reader.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74942 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd a paragraph about the Add->FAdd API change.
Dan Gohman [Tue, 7 Jul 2009 20:05:15 +0000 (20:05 +0000)]
Add a paragraph about the Add->FAdd API change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74941 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd BX and BXr9 encodings. Patch by Sean Callanan.
Evan Cheng [Tue, 7 Jul 2009 19:16:24 +0000 (19:16 +0000)]
Add BX and BXr9 encodings. Patch by Sean Callanan.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74938 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix build.
Mike Stump [Tue, 7 Jul 2009 18:52:14 +0000 (18:52 +0000)]
Fix build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74936 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoUse LLVMContext in the LLLexer.
Owen Anderson [Tue, 7 Jul 2009 18:44:11 +0000 (18:44 +0000)]
Use LLVMContext in the LLLexer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74934 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix a bug in post-order iterators with external storage, patch by
Chris Lattner [Tue, 7 Jul 2009 18:43:48 +0000 (18:43 +0000)]
fix a bug in post-order iterators with external storage, patch by
Olaf Krzikalla!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74933 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agofix some type confusion in ReadVBR64: "Piece" should be only 32 bits,
Chris Lattner [Tue, 7 Jul 2009 18:39:49 +0000 (18:39 +0000)]
fix some type confusion in ReadVBR64: "Piece" should be only 32 bits,
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

14 years agoHave scoped mutexes take referenes instead of pointers.
Owen Anderson [Tue, 7 Jul 2009 18:33:04 +0000 (18:33 +0000)]
Have scoped mutexes take referenes instead of pointers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74931 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix lli to print an error and exit when EE returns null but no string. Patch
Chris Lattner [Tue, 7 Jul 2009 18:31:09 +0000 (18:31 +0000)]
Fix lli to print an error and exit when EE returns null but no string.  Patch
by Eric Rannaud!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74930 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago"BinaryObject.h was implicitly converting between uint{16,32,64}_t to
Chris Lattner [Tue, 7 Jul 2009 18:28:00 +0000 (18:28 +0000)]
"BinaryObject.h was implicitly converting between uint{16,32,64}_t to
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

14 years agoRemove unused parameter.
Bill Wendling [Tue, 7 Jul 2009 18:21:19 +0000 (18:21 +0000)]
Remove unused parameter.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74928 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoEliminate the static constructors and locks from DynamicLibrary.cpp.
Chris Lattner [Tue, 7 Jul 2009 18:17:07 +0000 (18:17 +0000)]
Eliminate the static constructors and locks from DynamicLibrary.cpp.
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

14 years agoremove dead code, noone creates instances of "DynamicLibrary", so the ctor and dtor...
Chris Lattner [Tue, 7 Jul 2009 18:01:58 +0000 (18:01 +0000)]
remove dead code, noone creates instances of "DynamicLibrary", so the ctor and dtor are dead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74926 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRevert 74898. It broke several tests.
Evan Cheng [Tue, 7 Jul 2009 17:50:43 +0000 (17:50 +0000)]
Revert 74898. It broke several tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74925 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agowe don't use libtool anymore, update comments.
Chris Lattner [Tue, 7 Jul 2009 17:50:11 +0000 (17:50 +0000)]
we don't use libtool anymore, update comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74924 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFix braces.
Torok Edwin [Tue, 7 Jul 2009 17:39:53 +0000 (17:39 +0000)]
Fix braces.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74923 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoIntroduce new error handling API.
Torok Edwin [Tue, 7 Jul 2009 17:32:34 +0000 (17:32 +0000)]
Introduce new error handling API.
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

14 years agoRe-LLVMContext-ize DebugInfo, now with less breakage.
Owen Anderson [Tue, 7 Jul 2009 17:12:53 +0000 (17:12 +0000)]
Re-LLVMContext-ize DebugInfo, now with less breakage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74920 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoChange all SCEV* to SCEV *.
Dan Gohman [Tue, 7 Jul 2009 17:06:11 +0000 (17:06 +0000)]
Change all SCEV* to SCEV *.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74918 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoThis parameter should default to true, not false.
Owen Anderson [Tue, 7 Jul 2009 16:56:05 +0000 (16:56 +0000)]
This parameter should default to true, not false.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74915 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRegenerate.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:44:20 +0000 (16:44 +0000)]
Regenerate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74914 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDocumentation update.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:43:49 +0000 (16:43 +0000)]
Documentation update.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74913 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoShow how to modify built-in options.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:39:33 +0000 (16:39 +0000)]
Show how to modify built-in options.

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

14 years agoRevert part of r74873 that broke Clang's debug info generation.
Owen Anderson [Tue, 7 Jul 2009 16:31:25 +0000 (16:31 +0000)]
Revert part of r74873 that broke Clang's debug info generation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74910 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRegenerate.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:09:48 +0000 (16:09 +0000)]
Regenerate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74908 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDocumentation update.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:09:29 +0000 (16:09 +0000)]
Documentation update.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74907 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agos/llvmc2/llvmc/
Mikhail Glushenkov [Tue, 7 Jul 2009 16:09:05 +0000 (16:09 +0000)]
s/llvmc2/llvmc/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74906 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd an 'init' option property.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:08:41 +0000 (16:08 +0000)]
Add an 'init' option property.

Makes possible to provide default values for options defined in plugins (same as
cl::init).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74905 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoRefactoring.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:08:11 +0000 (16:08 +0000)]
Refactoring.

Make isList(), isSwitch() and isParameter() member functions of
OptionDescription.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74904 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoComment fix.
Mikhail Glushenkov [Tue, 7 Jul 2009 16:07:36 +0000 (16:07 +0000)]
Comment fix.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74903 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago if the terminator is a branch depending upon the side effects of a
Sanjiv Gupta [Tue, 7 Jul 2009 08:04:51 +0000 (08:04 +0000)]
 if the terminator is a branch depending upon the side effects of a
 previous cmp; a copy can not be inserted here if the copy insn also has
 side effects. We don't have access to the attributes of copy insn here;
 so just play safe by finding a safe locations for branch terminators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74898 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd Thumb2 pkhbt / pkhtb.
Evan Cheng [Tue, 7 Jul 2009 05:35:52 +0000 (05:35 +0000)]
Add Thumb2 pkhbt / pkhtb.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74895 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd some more Thumb2 multiplication instructions.
Evan Cheng [Tue, 7 Jul 2009 01:17:28 +0000 (01:17 +0000)]
Add some more Thumb2 multiplication instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74889 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago80 col violation.
Evan Cheng [Tue, 7 Jul 2009 01:16:41 +0000 (01:16 +0000)]
80 col violation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74888 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoDon't accept globals as matching 'i' constraint
Dale Johannesen [Tue, 7 Jul 2009 00:18:49 +0000 (00:18 +0000)]
Don't accept globals as matching 'i' constraint
in PIC modes (in accordance with existing comment).
gcc.apple/asm-block-25.c

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74886 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd isMetadata() to check metadata operand.
Devang Patel [Mon, 6 Jul 2009 23:46:02 +0000 (23:46 +0000)]
Add isMetadata() to check metadata operand.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74883 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd new ValueType for metadata.
Devang Patel [Mon, 6 Jul 2009 23:44:32 +0000 (23:44 +0000)]
Add new ValueType for metadata.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74882 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago!"i" is a valid MDString.
Devang Patel [Mon, 6 Jul 2009 23:40:48 +0000 (23:40 +0000)]
!"i" is a valid MDString.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74881 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAvoid directly relying on llvm.dbg.compile_unit and llvm.dbg.global_variables.
Devang Patel [Mon, 6 Jul 2009 23:28:36 +0000 (23:28 +0000)]
Avoid directly relying on llvm.dbg.compile_unit and llvm.dbg.global_variables.

PIC16 developers, please verify. Thanks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74880 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd FIXMEs.
Devang Patel [Mon, 6 Jul 2009 23:11:08 +0000 (23:11 +0000)]
Add FIXMEs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74879 91177308-0d34-0410-b5e6-96231b3b80d8

14 years ago"LLVMContext* " --> "LLVMContext *"
Owen Anderson [Mon, 6 Jul 2009 23:00:19 +0000 (23:00 +0000)]
"LLVMContext* " --> "LLVMContext *"

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74878 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoFinish LLVMContext-ing lib/Analysis. This required pushing LLVMContext's through...
Owen Anderson [Mon, 6 Jul 2009 22:37:39 +0000 (22:37 +0000)]
Finish LLVMContext-ing lib/Analysis.  This required pushing LLVMContext's through the ValueTracking API.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74873 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoisThumb2 really should mean thumb2 only, not thumb2+.
Evan Cheng [Mon, 6 Jul 2009 22:29:14 +0000 (22:29 +0000)]
isThumb2 really should mean thumb2 only, not thumb2+.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74871 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdd bfc to armv6t2.
Evan Cheng [Mon, 6 Jul 2009 22:23:46 +0000 (22:23 +0000)]
Add bfc to armv6t2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74868 91177308-0d34-0410-b5e6-96231b3b80d8

14 years agoAdded ARM::mls for armv6t2.
Evan Cheng [Mon, 6 Jul 2009 22:05:45 +0000 (22:05 +0000)]
Added ARM::mls for armv6t2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74866 91177308-0d34-0410-b5e6-96231b3b80d8