oota-llvm.git
17 years agoComments added. It now generates V5TE multiply instructions. However, it is still...
Raul Herbster [Thu, 30 Aug 2007 23:29:26 +0000 (23:29 +0000)]
Comments added. It now generates V5TE multiply instructions. However, it is still necessary to model PUWLSH bits more clearly.

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

17 years agoARM instruction table was modified by adding information to generate multiply instruc...
Raul Herbster [Thu, 30 Aug 2007 23:25:47 +0000 (23:25 +0000)]
ARM instruction table was modified by adding information to generate multiply instruction of V5TE.

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

17 years agoJITInfo now resolves function addrs and also relocations. It always emits a stub.
Raul Herbster [Thu, 30 Aug 2007 23:21:27 +0000 (23:21 +0000)]
JITInfo now resolves function addrs and also relocations. It always emits a stub.

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

17 years agoAdded Graphviz escaping for the '|' character.
Ted Kremenek [Thu, 30 Aug 2007 17:01:41 +0000 (17:01 +0000)]
Added Graphviz escaping for the '|' character.

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

17 years agoDo not run on darwin.
Tanya Lattner [Thu, 30 Aug 2007 16:07:20 +0000 (16:07 +0000)]
Do not run on darwin.

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

17 years agoAdded support to fold X86 load / store instructions. This allow rematerialized loads...
Evan Cheng [Thu, 30 Aug 2007 05:54:07 +0000 (05:54 +0000)]
Added support to fold X86 load / store instructions. This allow rematerialized loads to be folded into their uses.

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

17 years agoTry fold re-materialized load instructions into its uses.
Evan Cheng [Thu, 30 Aug 2007 05:53:02 +0000 (05:53 +0000)]
Try fold re-materialized load instructions into its uses.

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

17 years agoAdd a variant of foldMemoryOperand to fold any load / store, not just load / store...
Evan Cheng [Thu, 30 Aug 2007 05:52:20 +0000 (05:52 +0000)]
Add a variant of foldMemoryOperand to fold any load / store, not just load / store from / to stack slots.

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

17 years agoAdded CreateFrameIndex to create a FrameIndex MachineOperand without a MachineInstr.
Evan Cheng [Thu, 30 Aug 2007 05:50:32 +0000 (05:50 +0000)]
Added CreateFrameIndex to create a FrameIndex MachineOperand without a MachineInstr.

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

17 years agoMark load instructions with isLoad = 1.
Evan Cheng [Thu, 30 Aug 2007 05:49:43 +0000 (05:49 +0000)]
Mark load instructions with isLoad = 1.

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

17 years agoUse i64 on a PPC64 machine
Bill Wendling [Thu, 30 Aug 2007 00:59:19 +0000 (00:59 +0000)]
Use i64 on a PPC64 machine

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

17 years agoChange LegalFPImmediates to use APFloat.
Dale Johannesen [Thu, 30 Aug 2007 00:23:21 +0000 (00:23 +0000)]
Change LegalFPImmediates to use APFloat.
Add APFloat interfaces to ConstantFP, SelectionDAG.
Fix integer bit in double->APFloat conversion.
Convert LegalizeDAG to use APFloat interface in
ConstantFPSDNode uses.

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

17 years agoFix use of declaration inside case block
Anton Korobeynikov [Wed, 29 Aug 2007 23:18:48 +0000 (23:18 +0000)]
Fix use of declaration inside case block

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

17 years agoChange LiveRange so it keeps a pointer to the VNInfo rather than an index.
Evan Cheng [Wed, 29 Aug 2007 20:45:00 +0000 (20:45 +0000)]
Change LiveRange so it keeps a pointer to the VNInfo rather than an index.
Changes related modules so VNInfo's are not copied. This decrease
copy coalescing time by 45% and overall compilation time by 10% on siod.

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

17 years agoLower FRAME_TO_ADDR_OFFSET to zero by default (if not custom lowered)
Anton Korobeynikov [Wed, 29 Aug 2007 19:28:29 +0000 (19:28 +0000)]
Lower FRAME_TO_ADDR_OFFSET to zero by default (if not custom lowered)

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

17 years agoMove getX86RegNum into X86RegisterInfo and use it
Duncan Sands [Wed, 29 Aug 2007 19:01:20 +0000 (19:01 +0000)]
Move getX86RegNum into X86RegisterInfo and use it
in the trampoline lowering.  Lookup the jump and
mov opcodes for the trampoline rather than hard
coding them.

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

17 years agoAlphabetize Raul's entry.
Raul Herbster [Wed, 29 Aug 2007 18:21:29 +0000 (18:21 +0000)]
Alphabetize Raul's entry.

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

17 years agoNew contributor added
Raul Herbster [Wed, 29 Aug 2007 16:51:52 +0000 (16:51 +0000)]
New contributor added

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

17 years agoUpdating configure script to enable MIPS.
Tanya Lattner [Wed, 29 Aug 2007 16:38:16 +0000 (16:38 +0000)]
Updating configure script to enable MIPS.

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

17 years agoSilence implicit 64->32-bit conversion warnings.
Chris Lattner [Wed, 29 Aug 2007 16:32:50 +0000 (16:32 +0000)]
Silence implicit 64->32-bit conversion warnings.

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

17 years agogetMinSignedBits needs to take into consider the sign bit when the value is positive.
Chris Lattner [Wed, 29 Aug 2007 16:21:18 +0000 (16:21 +0000)]
getMinSignedBits needs to take into consider the sign bit when the value is positive.

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

17 years agoupdate these
Chris Lattner [Wed, 29 Aug 2007 16:15:23 +0000 (16:15 +0000)]
update these

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

17 years agoAdd an option, -view-sunit-dags, for viewing the actual SUnit DAGs used by
Dan Gohman [Tue, 28 Aug 2007 20:32:58 +0000 (20:32 +0000)]
Add an option, -view-sunit-dags, for viewing the actual SUnit DAGs used by
scheduling.

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

17 years agoUpdate win32 VStudio project files to keep pace with recently added and deleted files
Chuck Rose III [Tue, 28 Aug 2007 18:59:02 +0000 (18:59 +0000)]
Update win32 VStudio project files to keep pace with recently added and deleted files

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

17 years agoRecover most of the compile time regression due to recent live interval changes.
Evan Cheng [Tue, 28 Aug 2007 08:28:51 +0000 (08:28 +0000)]
Recover most of the compile time regression due to recent live interval changes.
1. Eliminate the costly live interval "swapping".
2. Change ValueNumberInfo container from SmallVector to std::vector. The former
   performs slowly when the vector size is very large.

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

17 years agoAdded method to get Mips register numbers
Bruno Cardoso Lopes [Tue, 28 Aug 2007 05:13:42 +0000 (05:13 +0000)]
Added method to get Mips register numbers
Changed the stack frame layout, StackGrowsUp fits better to Mips strange stack.
Stack offset calculation bug fixed!

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

17 years agoChanged stack allocation On LowerFORMAL_ARGUMENTS.
Bruno Cardoso Lopes [Tue, 28 Aug 2007 05:08:16 +0000 (05:08 +0000)]
Changed stack allocation On LowerFORMAL_ARGUMENTS.
Added comments about new stack allocation.
Expand SelectCC for i32 results

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

17 years agoMask directive completed with CalleeSave info
Bruno Cardoso Lopes [Tue, 28 Aug 2007 05:06:17 +0000 (05:06 +0000)]
Mask directive completed with CalleeSave info
Comments for Mips directives added.

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

17 years agoAdded methods to record SPOffsets from LowerFORMAL_ARGUMENTS
Bruno Cardoso Lopes [Tue, 28 Aug 2007 05:04:41 +0000 (05:04 +0000)]
Added methods to record SPOffsets from LowerFORMAL_ARGUMENTS

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

17 years agoCut off crazy computation. This helps PR1622 slightly.
Chris Lattner [Tue, 28 Aug 2007 04:23:55 +0000 (04:23 +0000)]
Cut off crazy computation.  This helps PR1622 slightly.

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

17 years agoUse simpler test to filter loops.
Devang Patel [Mon, 27 Aug 2007 21:34:31 +0000 (21:34 +0000)]
Use simpler test to filter loops.

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

17 years agoAdd explicit triples to avoid default behavior that varies by host.
Dan Gohman [Mon, 27 Aug 2007 20:54:48 +0000 (20:54 +0000)]
Add explicit triples to avoid default behavior that varies by host.

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

17 years agoUpdate InvokeInst to work like CallInst
David Greene [Mon, 27 Aug 2007 19:04:21 +0000 (19:04 +0000)]
Update InvokeInst to work like CallInst

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

17 years agoAdd a comment about using libc memset/memcpy or generating inline code.
Rafael Espindola [Mon, 27 Aug 2007 17:48:26 +0000 (17:48 +0000)]
Add a comment about using libc memset/memcpy or generating inline code.

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

17 years agoRemove this test as it is too hard to fix after the
Duncan Sands [Mon, 27 Aug 2007 17:08:14 +0000 (17:08 +0000)]
Remove this test as it is too hard to fix after the
latest EH changes, and in any case it is hard to
imagine how the original bug could be reintroduced.

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

17 years agoFix this test: llvm-gcc-4.2 optimizes almost everything away,
Duncan Sands [Mon, 27 Aug 2007 16:47:32 +0000 (16:47 +0000)]
Fix this test: llvm-gcc-4.2 optimizes almost everything away,
resulting in zero matches, while llvm-gcc-4.1 manages to
remove one pointless selector changing the number of matches.

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

17 years agoMake DAGCombiner's global alias analysis query more precise in the case
Dan Gohman [Mon, 27 Aug 2007 16:32:11 +0000 (16:32 +0000)]
Make DAGCombiner's global alias analysis query more precise in the case
where both pointers have non-zero offsets.

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

17 years agoNow that we don't output cleanups by default, the action
Duncan Sands [Mon, 27 Aug 2007 16:30:05 +0000 (16:30 +0000)]
Now that we don't output cleanups by default, the action
offset needs to be adjusted in this test.

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

17 years agoIf the source and destination pointers in an llvm.memmove are known
Dan Gohman [Mon, 27 Aug 2007 16:26:13 +0000 (16:26 +0000)]
If the source and destination pointers in an llvm.memmove are known
to not alias each other, it can be translated as an llvm.memcpy.

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

17 years agoChange comments to refer to @malloc and @free instead of %malloc and %free.
Dan Gohman [Mon, 27 Aug 2007 16:11:48 +0000 (16:11 +0000)]
Change comments to refer to @malloc and @free instead of %malloc and %free.

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

17 years agoThere is an impedance matching problem between LLVM and
Duncan Sands [Mon, 27 Aug 2007 15:47:50 +0000 (15:47 +0000)]
There is an impedance matching problem between LLVM and
gcc exception handling: if an exception unwinds through
an invoke, then execution must branch to the invoke's
unwind target.  We previously tried to enforce this by
appending a cleanup action to every selector, however
this does not always work correctly due to an optimization
in the C++ unwinding runtime: if only cleanups would be
run while unwinding an exception, then the program just
terminates without actually executing the cleanups, as
invoke semantics would require.  I was hoping this
wouldn't be a problem, but in fact it turns out to be the
cause of all the remaining failures in the LLVM testsuite
(these also fail with -enable-correct-eh-support, so turning
on -enable-eh didn't make things worse!).  Instead we need
to append a full-blown catch-all to the end of each
selector.  The correct way of doing this depends on the
personality function, i.e. it is language dependent, so
can only be done by gcc.  Thus this patch which generalizes
the eh.selector intrinsic so that it can handle all possible
kinds of action table entries (before it didn't accomodate
cleanups): now 0 indicates a cleanup, and filters have to be
specified using the number of type infos plus one rather than
the number of type infos.  Related gcc patches will cause
Ada to pass a cleanup (0) to force the selector to always
fire, while C++ will use a C++ catch-all (null).

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

17 years agoAdd explicit keywords and remove spurious trailing semicolons.
Dan Gohman [Mon, 27 Aug 2007 14:50:10 +0000 (14:50 +0000)]
Add explicit keywords and remove spurious trailing semicolons.

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

17 years agocall libc memcpy/memset if array size is bigger then threshold.
Rafael Espindola [Mon, 27 Aug 2007 10:18:20 +0000 (10:18 +0000)]
call libc memcpy/memset if array size is bigger then threshold.

Coping 100MB array (after a warmup) shows that glibc 2.6.1 implementation on
x86-64 (core 2) is 30% faster (from 0.270917s to 0.188079s)

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

17 years agoDon't promote volatile loads/stores. This is needed (for example) to handle setjmp...
Anton Korobeynikov [Sun, 26 Aug 2007 21:43:30 +0000 (21:43 +0000)]
Don't promote volatile loads/stores. This is needed (for example) to handle setjmp/longjmp properly.
This fixes PR1520.

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

17 years agoDon't DSe volatile stores.
Owen Anderson [Sun, 26 Aug 2007 21:14:47 +0000 (21:14 +0000)]
Don't DSe volatile stores.

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

17 years agoRevise per review comments.
Dale Johannesen [Sun, 26 Aug 2007 01:18:27 +0000 (01:18 +0000)]
Revise per review comments.

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

17 years agoAdd APFloat interface to ConstantFPSDNode. Change
Dale Johannesen [Sat, 25 Aug 2007 22:10:57 +0000 (22:10 +0000)]
Add APFloat interface to ConstantFPSDNode.  Change
over uses in DAGCombiner.  Fix interfaces to work
with APFloats.

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

17 years agoMove exit condition and exit branch from exiting block into loop header and dominator...
Devang Patel [Sat, 25 Aug 2007 02:39:24 +0000 (02:39 +0000)]
Move exit condition and exit branch from exiting block into loop header and dominator info. This avoid execution of dead iteration. Loop is already filter in the beginning such that this change is safe.

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

17 years agoConstant split values needs upper bound and lower bound check, just like any other...
Devang Patel [Sat, 25 Aug 2007 01:09:14 +0000 (01:09 +0000)]
Constant split values needs upper bound and lower bound check, just like any other split value.

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

17 years agoAllow target constants to be illegal types. The target should
Chris Lattner [Sat, 25 Aug 2007 01:00:22 +0000 (01:00 +0000)]
Allow target constants to be illegal types.  The target should
know how to handle them.  This fixes
test/CodeGen/Generic/asm-large-immediate.ll

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

17 years agoWhile calculating upper loop bound for first loop and lower loop bound for second...
Devang Patel [Sat, 25 Aug 2007 00:56:38 +0000 (00:56 +0000)]
While calculating upper loop bound for first loop and lower loop bound for second loop, take care of edge cases.

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

17 years agoTeach the dag scheduler to handle inline asm nodes with multi-value immediate operands.
Chris Lattner [Sat, 25 Aug 2007 00:53:07 +0000 (00:53 +0000)]
Teach the dag scheduler to handle inline asm nodes with multi-value immediate operands.

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

17 years agoThe personality function might need to be declared as:
Bill Wendling [Sat, 25 Aug 2007 00:51:55 +0000 (00:51 +0000)]
The personality function might need to be declared as:

    .set  Lset0,___gxx_personality_v0-.
    .long Lset0

on some targets. Make it so!

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

17 years agorename isOperandValidForConstraint to LowerAsmOperandForConstraint,
Chris Lattner [Sat, 25 Aug 2007 00:47:38 +0000 (00:47 +0000)]
rename isOperandValidForConstraint to LowerAsmOperandForConstraint,
changing the interface to allow for future changes.

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

17 years agoComment out declaration of operator== (undefined).
Dale Johannesen [Sat, 25 Aug 2007 00:40:41 +0000 (00:40 +0000)]
Comment out declaration of operator== (undefined).

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

17 years agoTest
Neil Booth [Sat, 25 Aug 2007 00:36:22 +0000 (00:36 +0000)]
Test

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

17 years agoAdd self
Neil Booth [Sat, 25 Aug 2007 00:31:24 +0000 (00:31 +0000)]
Add self

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

17 years agoRename llvm-gcc4 to llvm-gcc.
Tanya Lattner [Fri, 24 Aug 2007 23:23:23 +0000 (23:23 +0000)]
Rename llvm-gcc4 to llvm-gcc.

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

17 years agoPoison APFloat::operator==. Replace existing uses with bitwiseIsEqual.
Dale Johannesen [Fri, 24 Aug 2007 22:09:56 +0000 (22:09 +0000)]
Poison APFloat::operator==.  Replace existing uses with bitwiseIsEqual.
This means backing out the preceding change to Constants.cpp, alas.

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

17 years agoUse APFloat internally for ConstantFPSDNode.
Dale Johannesen [Fri, 24 Aug 2007 20:59:15 +0000 (20:59 +0000)]
Use APFloat internally for ConstantFPSDNode.

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

17 years agosink clone() down the class hierarchy from CmpInst into ICmpInst/FCmpInst.
Chris Lattner [Fri, 24 Aug 2007 20:48:18 +0000 (20:48 +0000)]
sink clone() down the class hierarchy from CmpInst into ICmpInst/FCmpInst.
This eliminates a conditional on that path, and ensures ICmpInst/FCmpInst
both have an out-of-line virtual method to home the class.

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

17 years agoFix regression that I caused yesterday night while adding logic to select appropriate...
Devang Patel [Fri, 24 Aug 2007 19:32:26 +0000 (19:32 +0000)]
Fix regression that I caused yesterday night while adding logic to select appropriate split condition branch.

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

17 years agoDisable EH generation until PPC works 100%.
Chris Lattner [Fri, 24 Aug 2007 16:00:15 +0000 (16:00 +0000)]
Disable EH generation until PPC works 100%.

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

17 years agoadd a note
Chris Lattner [Fri, 24 Aug 2007 15:17:59 +0000 (15:17 +0000)]
add a note

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

17 years agoIt is not safe to execute split condition's true branch first all the time. If split
Devang Patel [Fri, 24 Aug 2007 06:17:19 +0000 (06:17 +0000)]
It is not safe to execute split condition's true branch first all the time. If split
condition predicate is GT or GE then execute false branch first.

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

17 years agoReject ICMP_NE as index split condition.
Devang Patel [Fri, 24 Aug 2007 06:02:25 +0000 (06:02 +0000)]
Reject ICMP_NE as index split condition.

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

17 years agoTightenup loop filter.
Devang Patel [Fri, 24 Aug 2007 05:36:56 +0000 (05:36 +0000)]
Tightenup loop filter.

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

17 years agoRemove incomplete cost analysis.
Devang Patel [Fri, 24 Aug 2007 05:21:13 +0000 (05:21 +0000)]
Remove incomplete cost analysis.

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

17 years agoRevised per review feedback from previous patch.
Dale Johannesen [Fri, 24 Aug 2007 05:08:11 +0000 (05:08 +0000)]
Revised per review feedback from previous patch.

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

17 years agosilence some warnings in an optimized build.
Chris Lattner [Fri, 24 Aug 2007 03:02:34 +0000 (03:02 +0000)]
silence some warnings in an optimized build.

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

17 years agoChange internal representation of ConstantFP to use APFloat.
Dale Johannesen [Fri, 24 Aug 2007 00:56:33 +0000 (00:56 +0000)]
Change internal representation of ConstantFP to use APFloat.
Interface to rest of the compiler unchanged, as yet.

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

17 years agoFix this testcase: there are two matches for
Duncan Sands [Thu, 23 Aug 2007 17:22:50 +0000 (17:22 +0000)]
Fix this testcase: there are two matches for
llvm.cttz.i64 because of the declaration of
the intrinsic.  Also, emit-llvm is automatic
and doesn't need to be specified.

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

17 years agoadd some notes on really poor codegen.
Chris Lattner [Thu, 23 Aug 2007 15:22:07 +0000 (15:22 +0000)]
add some notes on really poor codegen.

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

17 years agonew example
Chris Lattner [Thu, 23 Aug 2007 15:16:03 +0000 (15:16 +0000)]
new example

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

17 years agoPerform correct codegen for eh_dwarf_cfa intrinsic.
Anton Korobeynikov [Thu, 23 Aug 2007 07:21:06 +0000 (07:21 +0000)]
Perform correct codegen for eh_dwarf_cfa intrinsic.

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

17 years agodefault this to radix 10 like the toString(Un)Signed methods.
Chris Lattner [Thu, 23 Aug 2007 05:21:48 +0000 (05:21 +0000)]
default this to radix 10 like the toString(Un)Signed methods.

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

17 years agoAvoid hiding issues.
Chris Lattner [Thu, 23 Aug 2007 05:20:48 +0000 (05:20 +0000)]
Avoid hiding issues.

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

17 years agorename APInt::toString -> toStringUnsigned for symmetry with toStringSigned()
Chris Lattner [Thu, 23 Aug 2007 05:15:32 +0000 (05:15 +0000)]
rename APInt::toString -> toStringUnsigned for symmetry with toStringSigned()

Add an APSInt::toString() method.

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

17 years agoImplement review feedback on trampoline documentation.
Duncan Sands [Wed, 22 Aug 2007 23:39:54 +0000 (23:39 +0000)]
Implement review feedback on trampoline documentation.

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

17 years agoRemove dead code.
Devang Patel [Wed, 22 Aug 2007 21:07:41 +0000 (21:07 +0000)]
Remove dead code.

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

17 years agoFix typo.
Devang Patel [Wed, 22 Aug 2007 20:55:18 +0000 (20:55 +0000)]
Fix typo.

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

17 years agoupdate test to check that codegen works with llvm.used in llvm.metadata section
Andrew Lenharth [Wed, 22 Aug 2007 19:36:31 +0000 (19:36 +0000)]
update test to check that codegen works with llvm.used in llvm.metadata section

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

17 years agoCosmetic change
Devang Patel [Wed, 22 Aug 2007 19:33:29 +0000 (19:33 +0000)]
Cosmetic change
"True Loop" and "False Loop" naming terminology to refer two loops
after loop cloning is confusing. Instead just use A_Loop and B_Loop.

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

17 years agomove this check. ppc outputs .no_dead_strip properly
Andrew Lenharth [Wed, 22 Aug 2007 19:33:11 +0000 (19:33 +0000)]
move this check.  ppc outputs .no_dead_strip properly

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

17 years agoAdd the PCSymbol for Darwin x86 platforms.
Bill Wendling [Wed, 22 Aug 2007 18:44:05 +0000 (18:44 +0000)]
Add the PCSymbol for Darwin x86 platforms.

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

17 years agoRefactor loop condition check in a separate function.
Devang Patel [Wed, 22 Aug 2007 18:27:01 +0000 (18:27 +0000)]
Refactor loop condition check in a separate function.

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

17 years agoFix thinko.
Devang Patel [Wed, 22 Aug 2007 18:07:47 +0000 (18:07 +0000)]
Fix thinko.
Starting value of second loop's induction variable can not be lower
then starting value of original loop's induction variable.

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

17 years agoTestcase for llvm.c* intrinsic failures.
Bill Wendling [Wed, 22 Aug 2007 07:26:30 +0000 (07:26 +0000)]
Testcase for llvm.c* intrinsic failures.

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

17 years agoTest handling of complex constants as lvalues.
Duncan Sands [Wed, 22 Aug 2007 05:58:22 +0000 (05:58 +0000)]
Test handling of complex constants as lvalues.

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

17 years agoDror GCCLibraries: they are obsolete since 2.0 release. This also reduces number...
Anton Korobeynikov [Tue, 21 Aug 2007 22:40:44 +0000 (22:40 +0000)]
Dror GCCLibraries: they are obsolete since 2.0 release. This also reduces number of licenses used in LLVM.

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

17 years agoRename bunch of variables.
Devang Patel [Tue, 21 Aug 2007 21:12:02 +0000 (21:12 +0000)]
Rename bunch of variables.

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

17 years agoPreserve LCSSA.
Devang Patel [Tue, 21 Aug 2007 19:47:46 +0000 (19:47 +0000)]
Preserve LCSSA.

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

17 years agoUse SmallVector.
Devang Patel [Tue, 21 Aug 2007 16:54:51 +0000 (16:54 +0000)]
Use SmallVector.

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

17 years agoNo need to hardcode SmallVector size.
Devang Patel [Tue, 21 Aug 2007 16:39:43 +0000 (16:39 +0000)]
No need to hardcode SmallVector size.

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

17 years agoInlineAsm asm support for integer registers added
Bruno Cardoso Lopes [Tue, 21 Aug 2007 16:09:25 +0000 (16:09 +0000)]
InlineAsm asm support for integer registers added

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

17 years agoInstruction Itinerary attribution fixed
Bruno Cardoso Lopes [Tue, 21 Aug 2007 16:06:45 +0000 (16:06 +0000)]
Instruction Itinerary attribution fixed

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

17 years agoDoxygenize comments.
David Greene [Tue, 21 Aug 2007 14:57:58 +0000 (14:57 +0000)]
Doxygenize comments.

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

17 years agoFix potentially N^2 behavior handling arrays with many of the
Chris Lattner [Tue, 21 Aug 2007 00:55:23 +0000 (00:55 +0000)]
Fix potentially N^2 behavior handling arrays with many of the
same value which get RAUW'd.  This speeds up reading the .bc
file in PR1616 from 852s to 0.19s on my G5 with a debug build.

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

17 years agoUse only 1 knob to enable exceptions on Darwin :).
Anton Korobeynikov [Tue, 21 Aug 2007 00:31:30 +0000 (00:31 +0000)]
Use only 1 knob to enable exceptions on Darwin :).

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

17 years agoUse SmallVector instead of std::vector.
Devang Patel [Tue, 21 Aug 2007 00:31:24 +0000 (00:31 +0000)]
Use SmallVector instead of std::vector.

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