64479 Commits

Author SHA1 Message Date
Bill Wendling
0d62b9a9a8 Disable MinGW & shared because it never worked.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@115093 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-29 22:23:19 +00:00
Torok Edwin
b72f73f13a Document that Pass(char*) got replaced with Pass(char&).
This means that code wanting to be compatible needs to use ifdefs :(



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@114950 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-28 13:47:20 +00:00
Bill Wendling
f928fd96fb Adjust comment to say that assertions are off by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@114337 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-20 18:37:19 +00:00
Bill Wendling
71f7f73dfa Approved by Evan
$ svn merge -c 114220 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r114220 into '.':
U    lib/CodeGen/MachineCSE.cpp
$ svn merge -c 114222 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r114222 into '.':
G    lib/CodeGen/MachineCSE.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@114224 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-17 22:09:07 +00:00
Bill Wendling
19a50033ee Merge AutoUpgrade of EH magic variable.
$ svn merge -c 113600 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113600 into '.':
A    test/Bitcode/AutoUpgradeGlobals.ll
A    test/Bitcode/AutoUpgradeGlobals.ll.bc
U    include/llvm/AutoUpgrade.h
U    lib/Bitcode/Reader/BitcodeReader.cpp
U    lib/VMCore/AutoUpgrade.cpp
$ svn merge -c 113603 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113603 into '.':
G    lib/VMCore/AutoUpgrade.cpp
$ svn merge -c 113615 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113615 into '.':
G    lib/VMCore/AutoUpgrade.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@114020 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-15 21:03:06 +00:00
Bill Wendling
ed70cc3e1b $ svn merge -c 113848 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113848 into '.':
U    lib/CodeGen/PeepholeOptimizer.cpp

must not peephole away side effects



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113913 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-15 00:32:40 +00:00
Bill Wendling
7e789a2e81 Approved by Chris:
$ svn merge -c 113911 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113911 into '.':
U    test/Transforms/ConstantMerge/dont-merge.ll
U    lib/Transforms/IPO/ConstantMerge.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113912 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-15 00:32:05 +00:00
Bill Wendling
d654cf3977 Approved by Chris
$ svn merge -c 113894 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113894 into '.':
U    test/MC/AsmParser/X86/x86_instructions.s
U    lib/Target/X86/AsmParser/X86AsmParser.cpp

Log:
add a terrible hack to allow out with dx is parens, a gas bug.
This fixes PR8114



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113896 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-14 23:38:48 +00:00
Bill Wendling
139d4669f1 Approved by Chris:
$ svn merge -c 113557 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113557 into '.':
U    include/llvm/Bitcode/LLVMBitCodes.h
U    tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp
U    lib/Bitcode/Reader/BitcodeReader.cpp
U    lib/Bitcode/Writer/BitcodeWriter.cpp
$ svn merge -c 113764 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113764 into '.':
U    lib/Bitcode/Reader/BitcodeReader.h
G    lib/Bitcode/Reader/BitcodeReader.cpp
$ svn merge -c 113828 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113828 into '.':
U    lib/VMCore/Metadata.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113853 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-14 20:59:01 +00:00
Bill Wendling
02bf305a3f Approved by Chris:
$ svn merge -c 113057 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113057 into '.':
A    test/Transforms/LoopSimplify/preserve-scev.ll
U    lib/Transforms/Utils/LoopSimplify.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113851 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-14 20:57:16 +00:00
Bill Wendling
732d1a4c8f Approved by Chris:
$ svn merge -c 113820 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113820 into '.':
U    test/Transforms/LICM/crash.ll
U    lib/Transforms/Scalar/LICM.cpp

Log:
fix PR8102, a case where we'd copyValue from a value that we already
deleted.  Fix this by doing the copyValue's before we delete stuff!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113823 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-14 00:43:35 +00:00
Bill Wendling
4bf8ecce67 Approved by Evan:
$ svn merge -c 113637 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113637 into '.':
U    lib/Target/ARM/ARMBaseInstrInfo.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113639 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-10 21:48:08 +00:00
Bill Wendling
3c941a5acb Approved by Evan.
$ svn merge -c 113576 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113576 into '.':
U    test/CodeGen/ARM/2007-01-19-InfiniteLoop.ll
U    lib/Target/ARM/ARMLoadStoreOptimizer.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113583 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-10 10:21:50 +00:00
Bill Wendling
babf51150b Approved by Evan:
$ svn merge -c 113297 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113297 into '.':
U    lib/Target/ARM/Thumb2SizeReduction.cpp
$ svn merge -c 113322 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113322 into '.':
U    lib/Target/ARM/ARMInstrNEON.td
U    lib/Target/ARM/ARMInstrVFP.td
U    lib/Target/ARM/ARMInstrFormats.td
$ svn merge -c 113365 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113365 into '.':
U    lib/Target/ARM/ARMBaseRegisterInfo.cpp
$ svn merge -c 113366 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113366 into '.':
G    lib/Target/ARM/ARMBaseRegisterInfo.cpp
$ svn merge -c 113394 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113394 into '.':
G    lib/Target/ARM/ARMBaseRegisterInfo.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113540 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-09 20:56:38 +00:00
Bill Wendling
587f6ed686 Approved by Evan:
$ svn merge -c 113299 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113299 into '.':
U    lib/CodeGen/VirtRegRewriter.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113531 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-09 20:13:48 +00:00
Bill Wendling
aa917ca288 Approved by Duncan:
$ svn merge -c 113483 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113483 into '.':
U    test/FrontendC/2010-05-18-asmsched.c
U    test/FrontendC/asm-reg-var-local.c
$ svn merge -c 113484 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113484 into '.':
U    test/FrontendC/cstring-align.c
$ svn merge -c 113485 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113485 into '.':
U    test/FrontendC/2010-07-14-overconservative-align.c

Fix tests to pass on platforms which don't support -m64.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113529 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-09 20:10:22 +00:00
Bill Wendling
353db582e3 Rename 2.8 to 2.8rc to avoid confusion between release candidate and full release.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113404 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-08 20:45:56 +00:00
Bill Wendling
3bc91aa3b4 Enable optimizations and disable assertions by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113402 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-08 20:25:50 +00:00
Bill Wendling
393dd6c10a Change version from 2.8svn to 2.8.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113400 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-08 20:16:52 +00:00
Bill Wendling
1113b52df0 $ svn merge -c 113255 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113255 into '.':
U    lib/Target/ARM/Disassembler/ARMDisassemblerCore.h
$ svn merge -c 113345 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113345 into '.':
U    lib/Target/ARM/Disassembler/ARMDisassembler.cpp



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113353 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-08 10:09:17 +00:00
Bill Wendling
9aabee1c4f $ svn merge -c 113303 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113303 into '.':
A    docs/CommandGuide/llvm-diff.pod
U    docs/CommandGuide/index.html

Log:
Add documentation for llvm-diff.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113310 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-07 23:32:02 +00:00
Bill Wendling
4c0eaab1b5 Approved by Chris:
$ svn merge -c 113257 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113257 into '.':
A    test/Transforms/InstCombine/sqrt.ll
D    test/Transforms/InstCombine/2010-07-19-sqrt.ll

Renaming test.

$ svn merge -c 113260 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113260 into '.':
U    test/Transforms/InstCombine/sqrt.ll
U    lib/Transforms/InstCombine/InstCombineCasts.cpp

Log:
Fix a serious performance regression introduced by r108687 on linux:
turning (fptrunc (sqrt (fpext x))) -> (sqrtf x)  is great, but we have
to delete the original sqrt as well.  Not doing so causes us to do 
two sqrt's when building with -fmath-errno (the default on linux).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113265 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-07 20:14:32 +00:00
Bill Wendling
5770e0a666 Approved by Chris:
$ svn merge -c 113158 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113158 into '.':
U    lib/Target/X86/X86InstrInfo.td

Log:
Redefine LOOP* instructions from I to Ii8PCRel as they take an i8 argument.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113175 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-06 21:50:26 +00:00
Bill Wendling
b5502450ca Approved by Chris:
$ svn merge -c 113146 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113146 into '.':
U    test/Transforms/LICM/crash.ll
U    lib/Transforms/Scalar/LICM.cpp

Log:
fix PR8067, an over-aggressive assertion in LICM.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113152 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-06 09:15:29 +00:00
Bill Wendling
ed5d32e948 Approved by Chris:
$ svn merge -c 113123 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113123 into '.':
U    examples/Fibonacci/fibonacci.cpp

fit in 80 columns and don't crash on exit, fixes PR8080



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113150 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-06 09:08:13 +00:00
Bill Wendling
390f711778 Approved by Chris:
$ svn merge -c 113109 https://llvm.org/svn/llvm-project/llvm/trunk
--- Merging r113109 into '.':
U    test/Transforms/GlobalOpt/crash.ll
U    lib/Analysis/ValueTracking.cpp

Log:
fix PR8063, a crash in globalopt in the malloc analysis code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113111 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-05 17:45:44 +00:00
Owen Anderson
ba8c43afdd Remove CorrelatedValuePropagation from the default pass set for LLVM 2.8. It
has not yet received enough testing prior to this release.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113060 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 03:02:01 +00:00
Bill Wendling
43529dbe0c Creating release_28 branch from llvm trunk.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_28@113051 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 01:59:36 +00:00
Bruno Cardoso Lopes
bbfc31012b Emit target specific nodes for isPSHUFHWMask and isPSHUFLWMask
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113050 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 01:36:45 +00:00
Bruno Cardoso Lopes
4c827f5ae1 Emit target specific nodes for isSHUFPMask
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113048 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 01:22:57 +00:00
Bruno Cardoso Lopes
d344f28b9d Previous isMOVLMask matching already emits targets nodes, remove check
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113047 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 00:50:08 +00:00
Bruno Cardoso Lopes
e09abcd3c4 One more check from the original isShuffleMaskLegal goes away
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113045 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 00:46:16 +00:00
Bruno Cardoso Lopes
b733996110 Remove a duplicated but useless check that i've inserted in the previous commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113044 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 00:43:12 +00:00
Bruno Cardoso Lopes
a22c84571a Refactor some code and remove the extra checks for unpckl_undef and unpckh_undef
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113043 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 00:39:43 +00:00
Chris Lattner
469996400c fix a bug in my licm rewrite when a load from the promoted memory
location is being re-stored to the memory location.  We would get
a dangling pointer from the SSAUpdate data structure and miss a 
use.  This fixes PR8068


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113042 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 00:12:30 +00:00
Bruno Cardoso Lopes
43c05744b5 Remove check for unpckh mask
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113035 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 23:32:47 +00:00
Bruno Cardoso Lopes
ef3adb3243 Remove check for unpckl mask
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113034 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 23:31:50 +00:00
Bruno Cardoso Lopes
7256e22f77 Inline isShuffleMaskLegal into LowerVECTOR_SHUFFLE, so we can start
checking each standalone condition and decide whether emit target
specific nodes or remove the condition if it's already matched before.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113031 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 23:24:06 +00:00
Owen Anderson
597dad35b8 Propagate non-local comparisons. Fixes PR1757.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113025 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 22:47:08 +00:00
Eric Christopher
2429e2ac23 Reapply this increase to the number of virtual registers. All of the
various breakages appear to be dealt with.

Patch by Pekka Jääskeläinen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113024 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 22:46:31 +00:00
Dan Gohman
46ffb231c6 Disable the asserts that check that normalization is perfectly
invertible. ScalarEvolution's folding routines don't always succeed
in canonicalizing equal expressions to a single canonical form, and
this can cause these asserts to fail, even though there's no actual
correctness problem. This fixes PR8066.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113021 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 22:12:56 +00:00
Bruno Cardoso Lopes
e8f279cbd4 Reapply considered harmfull part of rr112934 and r112942.
"Use target specific nodes instead of relying in unpckl and
unpckh pattern fragments during isel time. Also place a
depth limit in getShuffleScalarElt.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113020 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 22:09:41 +00:00
Jim Grosbach
ee72651df4 previous patch was a little too tricky for its own good. Don't try to
overload UserInInstr. Explicitly check Allocatable. The early exit in the
condition will mean the performance impact of the extra test should be
minimal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113016 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 21:45:15 +00:00
Dale Johannesen
caa9ba228d Remove the rest of the nonexistent 64-bit AVX instructions.
Bruno, please review.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113014 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 21:23:00 +00:00
David Greene
9703843dfa Generalize getFieldType to work on all TypedInits. Add a couple of testcases from
Amaury Pouly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113010 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 21:00:49 +00:00
Bruno Cardoso Lopes
190d0a54c1 Reapply last harmless part of r112934, the pattern fragment to match X86Unpcklpd
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113009 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 20:44:26 +00:00
Bruno Cardoso Lopes
2a4460606e Reintroduce a simple function refactoring done in r112934, also without any functionality changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113008 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 20:20:02 +00:00
Bruno Cardoso Lopes
be8b084d8a Reapply piecies of r112942 and r112934 which don't do
functional changes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113007 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 20:10:35 +00:00
Bruno Cardoso Lopes
b3e0669b8e Reapply Fix comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113006 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 19:55:05 +00:00
Daniel Dunbar
3139422058 Revert r112934, "- Use specific nodes to match unpckl masks.", which introduced
some infinite loop and select failures.
 - Apologies for eager reverting, but its branch day.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113000 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-03 19:38:11 +00:00