Devang Patel [Fri, 27 Jul 2007 19:13:43 +0000 (19:13 +0000)]
Fix edge cases in handling basic block split.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40564
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 27 Jul 2007 18:34:27 +0000 (18:34 +0000)]
Use SmallPtrSet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40560
91177308-0d34-0410-b5e6-
96231b3b80d8
Chuck Rose III [Fri, 27 Jul 2007 18:26:35 +0000 (18:26 +0000)]
VStudio compiler errors and placing Function*->ExFunc map under ManagedStatic control.
This commit fixes two things. One is a pair of VStudio compiler errors stemming from variables
which defined within the for loop statement and also within the body of the for loop. I fixed these
by renaming one of the two variables. Additionally, I've made the Function*->ExFunc map in
ExternalFunctions.cpp a ManagedStatic object, so that cleanup will be done on llvm_shutdown. In repeated
uses of the interpreter, where the same Function* address may get used for completely differnet functions,
this was causing a crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40558
91177308-0d34-0410-b5e6-
96231b3b80d8
Chuck Rose III [Fri, 27 Jul 2007 18:20:11 +0000 (18:20 +0000)]
Updates to the VStudio project files:
1. Switch from VStudio 2k3 to VStudio 2k5
2. All pdb files now will be placed as $(OutputDir)/$(ProjectName).pdb. This puts them alongside the
binaries with the same base name as the binary. If you need to copy the results of your llvm build
into another project's tree, this will simplify that process.
3. Recent files added to the tree were added to the proejects within the VStudio project
4. Project build dependency order fixed so that the build can take place in one pass. A generated
file was not being built at the correct time, causing a build error in about half the projects until
the build was run a second time.
Note you will need flex and bison installed an in your path in order to build properly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40557
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 27 Jul 2007 18:07:02 +0000 (18:07 +0000)]
Allow SmallPtrSet to hold pointers to const data.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40556
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 27 Jul 2007 17:16:43 +0000 (17:16 +0000)]
Re-apply 40504, but with a fix for the segfault it caused in oggenc:
Make the alignedload and alignedstore patterns always require 16-byte
alignment. This way when they are used in the "Fs" instructions, in which
a vector instruction is used for a scalar purpose, they can still require
the full vector alignment. And add a regression test for this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40555
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 27 Jul 2007 16:45:18 +0000 (16:45 +0000)]
It seems logical that InReg should be incompatible
with StructReturn and ByVal, so make it so.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40554
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 27 Jul 2007 15:09:54 +0000 (15:09 +0000)]
As the number of parameter attributes increases,
Verifier::visitFunction is suffering a combinatorial
explosion due to the number of mutually incompatible
attributes. This patch tidies the whole thing up
using attribute masks. While there I fixed some
small bugs: (1) the ByVal attribute tests cast a
type to a pointer type, which can fail. Yes, the
fact it is of a pointer type is checked before,
but a failing check does not cause the program
to exit, it continues on outputting further errors;
(2) Nothing was checking that an sret attribute is
on the first parameter; (3) nothing was checking that
a function for which isStructReturn() is true has a
parameter with the sret attribute and vice-versa (I
don't think it is possible for this to go wrong, but
it seems right to check it).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40553
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 27 Jul 2007 12:58:54 +0000 (12:58 +0000)]
Support for trampolines, except for X86 codegen which is
still under discussion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40549
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Fri, 27 Jul 2007 07:36:14 +0000 (07:36 +0000)]
Move subreg lowering pass to be right after regalloc, per feedback.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40548
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 27 Jul 2007 01:37:47 +0000 (01:37 +0000)]
Reverting 40504 for now. It's breaking oggenc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40547
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 26 Jul 2007 20:21:42 +0000 (20:21 +0000)]
Fix thinko. Update return status appropriately.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40546
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 26 Jul 2007 18:57:04 +0000 (18:57 +0000)]
Fix a bug introduced in my last commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40542
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 26 Jul 2007 18:26:51 +0000 (18:26 +0000)]
Fix a couple more bugs in the phi construction by pulling in code that does
almost the same things from LCSSA.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40540
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 26 Jul 2007 17:45:57 +0000 (17:45 +0000)]
Test case for PR1573.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40539
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 26 Jul 2007 17:45:41 +0000 (17:45 +0000)]
Make sure epilogue esp adjustment is placed before any terminator and pop instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40538
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 26 Jul 2007 17:32:14 +0000 (17:32 +0000)]
Don't pollute the meaning of isUnpredicatedTerminator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40537
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 26 Jul 2007 17:07:03 +0000 (17:07 +0000)]
Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40536
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 26 Jul 2007 17:02:45 +0000 (17:02 +0000)]
Minor bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40535
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 16:14:06 +0000 (16:14 +0000)]
Fix the alias analysis query in DAGCombiner to not add in two
offsets. The SrcValueOffset values are the real offsets from the
SrcValue base pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40534
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 16:06:08 +0000 (16:06 +0000)]
Move the GET_SIDE_EFFECT_INFO logic from isInstructionTriviallyDead
to Instruction::mayWriteToMemory, fixing a FIXME, and helping
various places that call mayWriteToMemory directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40533
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 15:29:35 +0000 (15:29 +0000)]
Remove a bogus return statement, what appears to have been a pasto
from Relation::contradicts in Relation::incorporate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40531
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 15:25:08 +0000 (15:25 +0000)]
DummyInst's member functions don't need to be virtual.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40530
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 15:24:15 +0000 (15:24 +0000)]
In the .loc directive, print the fields as "debug" fields, so they
don't get decorated as if for immediate fields for instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40529
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 15:11:50 +0000 (15:11 +0000)]
Fix a whitespace difference between CMPSSrr and CMPSDrr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40528
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 15:11:00 +0000 (15:11 +0000)]
Fix a pasto in a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40527
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 08:18:32 +0000 (08:18 +0000)]
Add a MachineFunction pass, which runs post register allocation, that turns subreg insert/extract instruction into register copies. This ensures correct code gen if the coalescer isn't able to remove all subreg instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40521
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 08:12:07 +0000 (08:12 +0000)]
Teach DAG scheduling how to properly emit subreg insert/extract machine instructions. PR1350
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40520
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 08:01:58 +0000 (08:01 +0000)]
Have register info provide the inverse mapping of register->superregisters. PR1350
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40519
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 07:48:21 +0000 (07:48 +0000)]
Add target independent MachineInstr's to represent subreg insert/extract in MBB's. PR1350
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40518
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 26 Jul 2007 07:35:15 +0000 (07:35 +0000)]
Same goes for constantpool, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40517
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 07:34:40 +0000 (07:34 +0000)]
Add selection DAG nodes for subreg insert/extract. PR1350
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40516
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 07:03:08 +0000 (07:03 +0000)]
Fix 80 col violation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40515
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 07:00:46 +0000 (07:00 +0000)]
Remove subreg index from MachineInstr's and also keep vregs as unsigned when adding operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40514
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 06:41:18 +0000 (06:41 +0000)]
Teach TableGen about the new vector types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40513
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 03:33:13 +0000 (03:33 +0000)]
Fix infinite recursion for when extract_vector_elt is legal. Unfortunately no public targets use this code-path, so no test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40510
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 01:48:57 +0000 (01:48 +0000)]
Fix comments for new types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40507
91177308-0d34-0410-b5e6-
96231b3b80d8
Christopher Lamb [Thu, 26 Jul 2007 01:46:52 +0000 (01:46 +0000)]
Add support for 3 element 32-bit vector ValueTypes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40506
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 26 Jul 2007 00:31:09 +0000 (00:31 +0000)]
Remove X86ISD::LOAD_PACK and X86ISD::LOAD_UA and associated code from the
x86 target, replacing them with the new alignment attributes on memory
references.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40504
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 23:54:42 +0000 (23:54 +0000)]
Fix what is _hopefully_ the last corner case for loops.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40503
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 25 Jul 2007 23:41:36 +0000 (23:41 +0000)]
Mac OS X x86-64 lower 4G address is not available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40502
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 25 Jul 2007 23:36:05 +0000 (23:36 +0000)]
Mac OS X should use 0x90 to fill in gaps to satisfy function alignment requirements.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40501
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 25 Jul 2007 23:35:07 +0000 (23:35 +0000)]
EmitAlignment() also emits optional fill value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40500
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 25 Jul 2007 22:28:16 +0000 (22:28 +0000)]
Functions with LinkOnce and weak linkage still need to be aligned. Doh.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40499
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 22:19:40 +0000 (22:19 +0000)]
My last commit was not correct for nested loops. Fix it, and add a testcase for it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40498
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 22:03:06 +0000 (22:03 +0000)]
Fix an infinite loop on 300.twolf.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40497
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 21:30:15 +0000 (21:30 +0000)]
Forgot to include this file in my last commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40496
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 21:26:36 +0000 (21:26 +0000)]
Fix a bug in non-local memdep that was causing an infinite loop on 175.vpr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40495
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 21:13:41 +0000 (21:13 +0000)]
Fix a bug that was causing GVN to crash on 252.eon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40494
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 25 Jul 2007 21:05:39 +0000 (21:05 +0000)]
Fix example code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40493
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 25 Jul 2007 19:57:03 +0000 (19:57 +0000)]
Add basic support for performing whole-function RLE.
Note: This has not yet been thoroughly tested. Use at your own risk.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40489
91177308-0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Wed, 25 Jul 2007 19:47:31 +0000 (19:47 +0000)]
Moving regression test to reflect move in source and headers to Bitcode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40488
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 25 Jul 2007 19:33:14 +0000 (19:33 +0000)]
Don't ignore the return value of AsmPrinter::doInitialization and
AsmPrinter::doFinalization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40487
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 25 Jul 2007 18:00:25 +0000 (18:00 +0000)]
Add BasicInliner interface.
This interface allows clients to inline bunch of functions with module
level call graph information.:wq
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40486
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 25 Jul 2007 06:15:23 +0000 (06:15 +0000)]
test commit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40484
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Wed, 25 Jul 2007 03:48:45 +0000 (03:48 +0000)]
Fix debug info and globals filled with zeros.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40483
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Wed, 25 Jul 2007 00:06:28 +0000 (00:06 +0000)]
Minor cleanup:
- Split EH and debug infiormation
- Make DwarfWriter more verbose in some cases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40481
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 24 Jul 2007 23:00:27 +0000 (23:00 +0000)]
Add const to CanBeFoldedBy, CheckAndMask, and CheckOrMask.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40480
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 24 Jul 2007 22:58:00 +0000 (22:58 +0000)]
A minor simplication in the generated code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40479
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 24 Jul 2007 22:55:08 +0000 (22:55 +0000)]
Use movaps to load a v4f32 build_vector of all-constant values into a
register instead of loading each element individually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40478
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 24 Jul 2007 21:52:37 +0000 (21:52 +0000)]
Add initial support for non-local memory dependence analysis.
NOTE: This has only been cursorily tested. Expected improvements soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40476
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 24 Jul 2007 21:31:23 +0000 (21:31 +0000)]
Make the copy constructor of SmallPtrSet much faster.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40474
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 24 Jul 2007 21:07:39 +0000 (21:07 +0000)]
Heal EH handling stuff by emitting correct offsets to callee-saved registers.
Pretty hackish, but code itself is dirty mess, so we won't make anything worse. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40472
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 24 Jul 2007 17:55:58 +0000 (17:55 +0000)]
Add a GVN pass, using the value numbering code I developed for GVNPRE and the
load elimination code from RedundantLoadElimination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40469
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 24 Jul 2007 14:35:44 +0000 (14:35 +0000)]
Make output match actual condition tested. Thanks, Duncan.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40464
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 24 Jul 2007 01:02:25 +0000 (01:02 +0000)]
Unreachable block is not a root node in post dominator tree.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40458
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 24 Jul 2007 00:17:04 +0000 (00:17 +0000)]
Rename a lot of things to change FastDLE to RedundantLoadElimination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40457
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 24 Jul 2007 00:08:38 +0000 (00:08 +0000)]
Rename FastDLE as RedundantLoadElimination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40456
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Jul 2007 23:46:43 +0000 (23:46 +0000)]
1. Make sure we print the Function Value for parameter attribute errors
2. Fold an if statement into the Assert1 macro call.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40455
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Jul 2007 23:09:55 +0000 (23:09 +0000)]
Add better verification of attributes on function types. It is not permitted
to use sret or inreg on the function. It is equally illegal to use noreturn
or nounwind on a parameter; they only go with the function. This patch
enforces these rules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40453
91177308-0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Mon, 23 Jul 2007 22:42:15 +0000 (22:42 +0000)]
Fix for PR1567, which involves a weird bug on non-32bit architectures and silly C type sizes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40451
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 22:18:05 +0000 (22:18 +0000)]
Add testcases for FastDLE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40449
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 22:05:54 +0000 (22:05 +0000)]
Don't delete volatile loads. Doing so is not safe.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40448
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 22:00:03 +0000 (22:00 +0000)]
Forgot to commit this file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40447
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 21:51:37 +0000 (21:51 +0000)]
Fix a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40446
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 21:48:08 +0000 (21:48 +0000)]
Add FastDLE, the load-elimination counterpart of FastDSE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40445
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 20:49:13 +0000 (20:49 +0000)]
Move these tests to use FastDSE instead of old DSE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40444
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 23 Jul 2007 20:24:29 +0000 (20:24 +0000)]
Fix some uses of dyn_cast to be uses of cast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40443
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 23 Jul 2007 19:26:08 +0000 (19:26 +0000)]
Delete the svn:executable property on these files, which aren't executable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40441
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 23 Jul 2007 18:30:37 +0000 (18:30 +0000)]
Fix file header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40440
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 23 Jul 2007 17:10:17 +0000 (17:10 +0000)]
completely remove a transformation that is unsafe in the face of
undefs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40439
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 23 Jul 2007 15:23:35 +0000 (15:23 +0000)]
The Ada f-e produces various auxiliary output files
that cannot be suppressed and cannot be redirected:
they are dumped in the current working directory.
When running the testsuite this means that these
files do not end up in the Output directory. The
best solution I could find is to change directory
into Output before running tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40437
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 23 Jul 2007 13:41:53 +0000 (13:41 +0000)]
For multipart tests, place the parts with no
RUN line in Support. Give up on sending output
to /dev/null - this cannot always be arranged.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40436
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Jul 2007 08:20:46 +0000 (08:20 +0000)]
Restore ability to build archives (oops)
Fix -include line so it doesn't reference /dev/null
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40429
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Jul 2007 08:09:15 +0000 (08:09 +0000)]
Remove bizarre use of /dev/null in a makefile include line that
produces warning from make about bad timestamp on /dev/null
Patch by Holger Schurig.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40426
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 23 Jul 2007 04:44:02 +0000 (04:44 +0000)]
Fix some validation errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40417
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 23 Jul 2007 04:41:42 +0000 (04:41 +0000)]
Converted to "svn" and reformatted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40416
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 23 Jul 2007 04:23:32 +0000 (04:23 +0000)]
Remove dead option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40415
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 23 Jul 2007 03:56:42 +0000 (03:56 +0000)]
Small change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40413
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 23 Jul 2007 03:56:11 +0000 (03:56 +0000)]
Point to the correct SVN repository.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40412
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 23 Jul 2007 03:07:27 +0000 (03:07 +0000)]
Add missing SSE builtins:
__builtin_ia32_cvtss2si64
__builtin_ia32_cvttss2si64
__builtin_ia32_cvtsi642ss
__builtin_ia32_cvtsd2si64
__builtin_ia32_cvttsd2si64
__builtin_ia32_cvtsi642sd
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40411
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 22 Jul 2007 21:39:37 +0000 (21:39 +0000)]
Report an error if one occurs in releaseModule.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40405
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 22 Jul 2007 20:08:01 +0000 (20:08 +0000)]
Disable the string map copy ctor and assignment operators,
they don't do the right thing.
Implement StringMap::erase.
Fix a nasty bug in the default ctor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40395
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sun, 22 Jul 2007 10:25:44 +0000 (10:25 +0000)]
Remove -O1 in favour of making llvm-gcc-4.2 a bit
smarter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40391
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 21 Jul 2007 21:27:27 +0000 (21:27 +0000)]
This xform isn't safe, removing it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40378
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 21 Jul 2007 09:33:41 +0000 (09:33 +0000)]
Update for changes in library.sh
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40371
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 21 Jul 2007 00:34:29 +0000 (00:34 +0000)]
Apply temporary work around to fix llvm mis-compilation
reported in PR 1556.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40133
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 21 Jul 2007 00:34:19 +0000 (00:34 +0000)]
No more noResults.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40132
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 20 Jul 2007 23:17:34 +0000 (23:17 +0000)]
Don't assume that only Uses can be kills. Defs are marked as kills initially
when there are no uses. This fixes a dangling-pointer bug, where pointers to
deleted instructions were not removed from kills lists. More info here:
http://lists.cs.uiuc.edu/pipermail/llvmdev/2007-July/009749.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40131
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 20 Jul 2007 23:14:50 +0000 (23:14 +0000)]
Simplify the logic for setVolatile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40130
91177308-0d34-0410-b5e6-
96231b3b80d8