oota-llvm.git
15 years agoFix regression introduced by r83894.
Bob Wilson [Tue, 13 Oct 2009 17:29:13 +0000 (17:29 +0000)]
Fix regression introduced by r83894.

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

15 years agoCopy metadata when value is RAUW'd. It is debatable whether this is the right approac...
Devang Patel [Tue, 13 Oct 2009 17:00:54 +0000 (17:00 +0000)]
Copy metadata when value is RAUW'd. It is debatable whether this is the right approach for custom metadata data in general. However, right now the only custom data user, "dbg", expects this behavior while FE is constructing llvm IR with debug info.

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

15 years agoDisable this test for now.
Devang Patel [Tue, 13 Oct 2009 16:32:09 +0000 (16:32 +0000)]
Disable this test for now.

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

15 years agoFix a tab. Thanks to Johnny Chen for pointing it out.
Bob Wilson [Tue, 13 Oct 2009 15:27:23 +0000 (15:27 +0000)]
Fix a tab.  Thanks to Johnny Chen for pointing it out.

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

15 years agoThe eh.exception intrinsic only reads from memory, it doesn't
Duncan Sands [Tue, 13 Oct 2009 09:24:02 +0000 (09:24 +0000)]
The eh.exception intrinsic only reads from memory, it doesn't
write to it.

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

15 years agoPacify the compiler (signed with unsigned comparison) by making
Duncan Sands [Tue, 13 Oct 2009 09:23:11 +0000 (09:23 +0000)]
Pacify the compiler (signed with unsigned comparison) by making
these constants unsigned.

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

15 years agoForce memory use markers to have a ConstantInt for the size argument.
Nick Lewycky [Tue, 13 Oct 2009 07:57:33 +0000 (07:57 +0000)]
Force memory use markers to have a ConstantInt for the size argument.

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

15 years agoTeach BasicAA a little something about the atomic intrinsics: they can only
Nick Lewycky [Tue, 13 Oct 2009 07:48:38 +0000 (07:48 +0000)]
Teach BasicAA a little something about the atomic intrinsics: they can only
modify through the pointer they're given.

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

15 years agoAdd new "memory use marker" intrinsics. These indicate lifetimes and invariant
Nick Lewycky [Tue, 13 Oct 2009 07:03:23 +0000 (07:03 +0000)]
Add new "memory use marker" intrinsics. These indicate lifetimes and invariant
sections of memory objects.

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

15 years agoFix a -Asserts warning.
Daniel Dunbar [Tue, 13 Oct 2009 06:47:08 +0000 (06:47 +0000)]
Fix a -Asserts warning.

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

15 years agoremove dead header.
Chris Lattner [Tue, 13 Oct 2009 05:33:26 +0000 (05:33 +0000)]
remove dead header.

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

15 years agoremove notcast, it is now dead!
Chris Lattner [Tue, 13 Oct 2009 04:27:02 +0000 (04:27 +0000)]
remove notcast, it is now dead!

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

15 years agoremove two old and nearly useless tests.
Chris Lattner [Tue, 13 Oct 2009 04:25:24 +0000 (04:25 +0000)]
remove two old and nearly useless tests.

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

15 years agoXFAIL these tests for now.
Devang Patel [Tue, 13 Oct 2009 01:51:29 +0000 (01:51 +0000)]
XFAIL these tests for now.

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

15 years agoAdd a ceilLogBase2 function to APInt.
Dan Gohman [Tue, 13 Oct 2009 01:49:02 +0000 (01:49 +0000)]
Add a ceilLogBase2 function to APInt.

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

15 years agoMemory dependence analysis was incorrectly stopping to scan for stores to a pointer...
Victor Hernandez [Tue, 13 Oct 2009 01:42:53 +0000 (01:42 +0000)]
Memory dependence analysis was incorrectly stopping to scan for stores to a pointer at bitcast uses of a malloc call.
It should continue scanning until the malloc call, and this patch fixes that.

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

15 years agoRegenerate configure for rev. 83823 putback.
Edward O'Callaghan [Tue, 13 Oct 2009 01:01:38 +0000 (01:01 +0000)]
Regenerate configure for rev. 83823 putback.

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

15 years agoEnable "debug info attached to an instruction" mode.
Devang Patel [Mon, 12 Oct 2009 23:22:09 +0000 (23:22 +0000)]
Enable "debug info attached to an instruction" mode.

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

15 years agoFind enclosing subprogram info.
Devang Patel [Mon, 12 Oct 2009 23:11:24 +0000 (23:11 +0000)]
Find enclosing subprogram info.

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

15 years agoSet default location for a function if it is not set.
Devang Patel [Mon, 12 Oct 2009 23:10:55 +0000 (23:10 +0000)]
Set default location for a function if it is not set.

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

15 years agoFix two warnings about unused variables that are only used in assert() calls.
Kevin Enderby [Mon, 12 Oct 2009 22:51:49 +0000 (22:51 +0000)]
Fix two warnings about unused variables that are only used in assert() calls.

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

15 years agoDelete a comment that makes no sense to me. The statement that moving a CPE
Bob Wilson [Mon, 12 Oct 2009 22:49:05 +0000 (22:49 +0000)]
Delete a comment that makes no sense to me.  The statement that moving a CPE
before its reference is only supported on ARM has not been true for a while.
In fact, until recently, that was only supported for Thumb.  Besides that,
CPEs are always a multiple of 4 bytes in size, so inserting a CPE should have
no effect on Thumb alignment.

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

15 years agoFix a problem in the code where ARMAsmParser::ParseShift() second argument
Kevin Enderby [Mon, 12 Oct 2009 22:39:54 +0000 (22:39 +0000)]
Fix a problem in the code where ARMAsmParser::ParseShift() second argument
should have been a pointer to a reference.

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

15 years agoMake licm debug message readable.
Evan Cheng [Mon, 12 Oct 2009 22:25:23 +0000 (22:25 +0000)]
Make licm debug message readable.

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

15 years agoChange CreateNewWater method to return NewMBB by reference.
Bob Wilson [Mon, 12 Oct 2009 21:39:43 +0000 (21:39 +0000)]
Change CreateNewWater method to return NewMBB by reference.

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

15 years agoLast week, ARMConstantIslandPass was failing to converge for the
Bob Wilson [Mon, 12 Oct 2009 21:23:15 +0000 (21:23 +0000)]
Last week, ARMConstantIslandPass was failing to converge for the
MultiSource/Benchmarks/MiBench/automotive-susan test.  The failure has
since been masked by an unrelated change (just randomly), so I don't have
a testcase for this now.  Radar 7291928.

The situation where this happened is that a constant pool entry (CPE) was
placed at a lower address than the load that referenced it.  There were in
fact 2 CPEs placed at adjacent addresses and referenced by 2 loads that were
close together in the code.  The distance from the loads to the CPEs was
right at the limit of what they could handle, so that only one of the CPEs
could be placed within range.  On every iteration, the first CPE was found
to be out of range, causing a new CPE to be inserted.  The second CPE had
been in range but the newly inserted entry pushed it too far away.  Thus the
second CPE was also replaced by a new entry, which in turn pushed the first
CPE out of range.  Etc.

Judging from some comments in the code, the initial implementation of this
pass did not support CPEs placed _before_ their references.  In the case
where the CPE is placed at a higher address, the key to making the algorithm
terminate is that new CPEs are only inserted at the end of a group of adjacent
CPEs.  This is implemented by removing a basic block from the "WaterList"
once it has been used, and then adding the newly inserted CPE block to the
list so that the next insertion will come after it.  This avoids the ping-pong
effect where CPEs are repeatedly moved to the beginning of a group of
adjacent CPEs.  This does not work when going backwards, however, because the
entries at the end of an adjacent group of CPEs are closer than the CPEs
earlier in the group.

To make this pass terminate, we need to maintain a property that changes can
only happen in some sort of monotonic fashion.  The fix used here is to require
that the CPE for a particular constant pool load can only move to lower
addresses.  This is a very simple change to the code and should not cause
any significant degradation in the results.

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

15 years agoAnother minor clean-up.
Bob Wilson [Mon, 12 Oct 2009 20:45:53 +0000 (20:45 +0000)]
Another minor clean-up.

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

15 years agoallow this testcase to pass with recent changes. The test hasn't been
Chris Lattner [Mon, 12 Oct 2009 20:42:35 +0000 (20:42 +0000)]
allow this testcase to pass with recent changes.  The test hasn't been
producing any stores at all for a long time, but ".store." was in some
IR instruction names until recently.  This removal caused the test to
start failing.  Just make it reject any stores.

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

15 years agoRemove redundant parameter.
Bob Wilson [Mon, 12 Oct 2009 20:37:23 +0000 (20:37 +0000)]
Remove redundant parameter.

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

15 years agoUse early exit to reduce indentation.
Bob Wilson [Mon, 12 Oct 2009 19:04:03 +0000 (19:04 +0000)]
Use early exit to reduce indentation.

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

15 years agoChange to return a value by reference.
Bob Wilson [Mon, 12 Oct 2009 19:01:12 +0000 (19:01 +0000)]
Change to return a value by reference.

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

15 years agoAdd a typedef for an iterator.
Bob Wilson [Mon, 12 Oct 2009 18:52:13 +0000 (18:52 +0000)]
Add a typedef for an iterator.

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

15 years agoRevert the kludge in 76703. I got a clean
Dale Johannesen [Mon, 12 Oct 2009 18:49:00 +0000 (18:49 +0000)]
Revert the kludge in 76703.  I got a clean
bootstrap of FSF-style PPC, so there is some
reason to believe the original bug (which was
never analyzed) has been fixed, probably by
82266.

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

15 years agoFix warning.
Dale Johannesen [Mon, 12 Oct 2009 18:45:32 +0000 (18:45 +0000)]
Fix warning.

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

15 years agofix validation error pointed out by gabor (and the w3c :)
Chris Lattner [Mon, 12 Oct 2009 18:33:33 +0000 (18:33 +0000)]
fix validation error pointed out by gabor (and the w3c :)

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

15 years agoImprove bugpoint doc, patch by Timo Lindfors!
Chris Lattner [Mon, 12 Oct 2009 18:12:47 +0000 (18:12 +0000)]
Improve bugpoint doc, patch by Timo Lindfors!

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

15 years agoFix http://llvm.org/PR5160, to let CallbackVHs modify other ValueHandles on the
Jeffrey Yasskin [Mon, 12 Oct 2009 17:43:32 +0000 (17:43 +0000)]
Fix llvm.org/PR5160, to let CallbackVHs modify other ValueHandles on the
same Value without breaking things.

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

15 years agoanother bunch of <tt>s
Gabor Greif [Mon, 12 Oct 2009 16:50:25 +0000 (16:50 +0000)]
another bunch of <tt>s

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

15 years agoRemove a redundant member variable.
Dan Gohman [Mon, 12 Oct 2009 16:44:10 +0000 (16:44 +0000)]
Remove a redundant member variable.

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

15 years agoDelete some obsolete declarations.
Dan Gohman [Mon, 12 Oct 2009 16:43:44 +0000 (16:43 +0000)]
Delete some obsolete declarations.

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

15 years agoeven more <tt>s
Gabor Greif [Mon, 12 Oct 2009 16:40:25 +0000 (16:40 +0000)]
even more <tt>s

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

15 years agoDon't forget to mark RAX as live-out of the function when arranging for
Dan Gohman [Mon, 12 Oct 2009 16:36:12 +0000 (16:36 +0000)]
Don't forget to mark RAX as live-out of the function when arranging for
it to hold the address of an sret return value, for x86-64 ABI purposes.

Also, fix the test that was originally intended to test this to actually
test it, using FileCheck.

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

15 years agomore typewriter face
Gabor Greif [Mon, 12 Oct 2009 16:27:44 +0000 (16:27 +0000)]
more typewriter face

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

15 years agofix three validation errors, I leave the fourth to sabre :-)
Gabor Greif [Mon, 12 Oct 2009 16:13:36 +0000 (16:13 +0000)]
fix three validation errors, I leave the fourth to sabre :-)

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

15 years agoset some options in typewriter font
Gabor Greif [Mon, 12 Oct 2009 16:08:52 +0000 (16:08 +0000)]
set some options in typewriter font

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

15 years agoDocumentation: Perform automated correction of common typos.
Benjamin Kramer [Mon, 12 Oct 2009 14:46:08 +0000 (14:46 +0000)]
Documentation: Perform automated correction of common typos.

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

15 years agoFix typo, patch from Timo Juhani Lindfors.
Torok Edwin [Mon, 12 Oct 2009 13:37:29 +0000 (13:37 +0000)]
Fix typo, patch from Timo Juhani Lindfors.

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

15 years agoEliminate some redundant llvm-as calls.
Benjamin Kramer [Mon, 12 Oct 2009 09:31:55 +0000 (09:31 +0000)]
Eliminate some redundant llvm-as calls.

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

15 years agoMissing CHECK: lines makes test exit abnormally.
Edward O'Callaghan [Mon, 12 Oct 2009 09:01:26 +0000 (09:01 +0000)]
Missing CHECK: lines makes test exit abnormally.

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

15 years agoFileCheck not CheckFile, oops.
Edward O'Callaghan [Mon, 12 Oct 2009 08:51:28 +0000 (08:51 +0000)]
FileCheck not CheckFile, oops.

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

15 years agoConvert InstCombine/call.ll to CheckFile.
Edward O'Callaghan [Mon, 12 Oct 2009 08:46:47 +0000 (08:46 +0000)]
Convert InstCombine/call.ll to CheckFile.

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

15 years agoConvert the rest of the InstCombine tests from notcast to FileCheck.
Edward O'Callaghan [Mon, 12 Oct 2009 07:18:14 +0000 (07:18 +0000)]
Convert the rest of the InstCombine tests from notcast to FileCheck.

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

15 years agoRemove this part of the test, it never actually tested anything anyways. This
Nick Lewycky [Mon, 12 Oct 2009 06:32:42 +0000 (06:32 +0000)]
Remove this part of the test, it never actually tested anything anyways. This
unbreaks make check after evocallaghan's changes.

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

15 years agoFix syntax error missed in converting zext.ll test. Convert 2003-11-13-ConstExprCastC...
Edward O'Callaghan [Mon, 12 Oct 2009 06:23:56 +0000 (06:23 +0000)]
Fix syntax error missed in converting zext.ll test. Convert 2003-11-13-ConstExprCastCall.ll to FileCheck from notcast.

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

15 years agoConvert InstCombine tests from notcast to FileCheck.
Edward O'Callaghan [Mon, 12 Oct 2009 06:14:06 +0000 (06:14 +0000)]
Convert InstCombine tests from notcast to FileCheck.

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

15 years agoMore heuristics for Combiner-AA. Still catches all important cases, but
Nate Begeman [Mon, 12 Oct 2009 05:53:58 +0000 (05:53 +0000)]
More heuristics for Combiner-AA.  Still catches all important cases, but
compile time penalty on gnugo, the worst case in MultiSource, is down to
about 2.5% from 30%

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

15 years agoHaiku porting patches, Credit to Paul Davey.
Edward O'Callaghan [Mon, 12 Oct 2009 04:57:20 +0000 (04:57 +0000)]
Haiku porting patches, Credit to Paul Davey.

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

15 years agoFix PR5087, patch by Jakub Staszak!
Chris Lattner [Mon, 12 Oct 2009 04:22:44 +0000 (04:22 +0000)]
Fix PR5087, patch by Jakub Staszak!

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

15 years agoadd some more hooks to the C bindings, patch by Kenneth Uildriks!
Chris Lattner [Mon, 12 Oct 2009 04:01:02 +0000 (04:01 +0000)]
add some more hooks to the C bindings, patch by Kenneth Uildriks!

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

15 years agoMake ParallelJIT pthreads linking with CMake slightly less broken
Douglas Gregor [Mon, 12 Oct 2009 04:00:13 +0000 (04:00 +0000)]
Make ParallelJIT pthreads linking with CMake slightly less broken

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

15 years agoFix LLVM CMake build system so that it may now work on Solaris and AuroraUX.
Edward O'Callaghan [Mon, 12 Oct 2009 04:00:11 +0000 (04:00 +0000)]
Fix LLVM CMake build system so that it may now work on Solaris and AuroraUX.

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

15 years agopopulate instcombine's initial worklist more carefully, causing
Chris Lattner [Mon, 12 Oct 2009 03:58:40 +0000 (03:58 +0000)]
populate instcombine's initial worklist more carefully, causing
it to visit instructions from the start of the function to the
end of the function in the first path.  This greatly speeds up
some pathological cases (e.g. PR5150).

Try #3, this time with some unneeded debug info stuff removed
which was causing dead pointers to be added to the worklist.

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

15 years agorevert r83814 for now, it is making the llvm-gcc bootstrap unhappy.
Chris Lattner [Sun, 11 Oct 2009 23:56:08 +0000 (23:56 +0000)]
revert r83814 for now, it is making the llvm-gcc bootstrap unhappy.

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

15 years agopic16 uses 16 bit pointers, but is 8 bit.
Chris Lattner [Sun, 11 Oct 2009 23:19:44 +0000 (23:19 +0000)]
pic16 uses 16 bit pointers, but is 8 bit.

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

15 years agopopulate instcombine's initial worklist more carefully, causing
Chris Lattner [Sun, 11 Oct 2009 23:17:43 +0000 (23:17 +0000)]
populate instcombine's initial worklist more carefully, causing
it to visit instructions from the start of the function to the
end of the function in the first path.  This greatly speeds up
some pathological cases (e.g. PR5150).

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

15 years agoFix Makefile to build correctly on Darwin. Patch by Sandeep Patel!
Nick Lewycky [Sun, 11 Oct 2009 23:10:09 +0000 (23:10 +0000)]
Fix Makefile to build correctly on Darwin. Patch by Sandeep Patel!

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

15 years agoAdd missed mem-mem move patterns
Anton Korobeynikov [Sun, 11 Oct 2009 23:03:53 +0000 (23:03 +0000)]
Add missed mem-mem move patterns

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

15 years agoAdd MSP430 mem-mem insts support. Patch by Brian Lucas with some my refinements
Anton Korobeynikov [Sun, 11 Oct 2009 23:03:28 +0000 (23:03 +0000)]
Add MSP430 mem-mem insts support. Patch by Brian Lucas with some my refinements

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

15 years agoremove some harmful code that would turn an insertelement on an undef
Chris Lattner [Sun, 11 Oct 2009 23:02:46 +0000 (23:02 +0000)]
remove some harmful code that would turn an insertelement on an undef
into a shuffle even if it was used by another insertelement.  If the
visitation order of instcombine was wrong, this would turn a chain of
insertelements into a chain of shufflevectors, which was quite painful.

Since CollectShuffleElements handles these cases, the code can just
be nuked.

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

15 years agoAdd bunch of MSP430 'feature' tests. Patch by Brian Lucas with some my refinements
Anton Korobeynikov [Sun, 11 Oct 2009 23:02:38 +0000 (23:02 +0000)]
Add bunch of MSP430 'feature' tests. Patch by Brian Lucas with some my refinements

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

15 years agoreduce vec_shuffle2 and merge into vec_shuffle.
Chris Lattner [Sun, 11 Oct 2009 22:54:48 +0000 (22:54 +0000)]
reduce vec_shuffle2 and merge into vec_shuffle.

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

15 years agofilecheckize vec_shuffle.ll and merge shuffle.ll into it.
Chris Lattner [Sun, 11 Oct 2009 22:52:15 +0000 (22:52 +0000)]
filecheckize vec_shuffle.ll and merge shuffle.ll into it.

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

15 years agofilecheckize
Chris Lattner [Sun, 11 Oct 2009 22:45:17 +0000 (22:45 +0000)]
filecheckize

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

15 years agorename test
Chris Lattner [Sun, 11 Oct 2009 22:44:16 +0000 (22:44 +0000)]
rename test

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

15 years agoremove old testcase
Chris Lattner [Sun, 11 Oct 2009 22:42:06 +0000 (22:42 +0000)]
remove old testcase

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

15 years agomerge test into shift.ll, this also eliminates awful grepping on -stats output
Chris Lattner [Sun, 11 Oct 2009 22:39:58 +0000 (22:39 +0000)]
merge test into shift.ll, this also eliminates awful grepping on -stats output

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

15 years agoconvert to filecheck.
Chris Lattner [Sun, 11 Oct 2009 22:36:59 +0000 (22:36 +0000)]
convert to filecheck.

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

15 years agoteach instcombine to simplify xor's harder, catching the
Chris Lattner [Sun, 11 Oct 2009 22:22:13 +0000 (22:22 +0000)]
teach instcombine to simplify xor's harder, catching the
new testcase.

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

15 years agocleanups
Chris Lattner [Sun, 11 Oct 2009 22:00:32 +0000 (22:00 +0000)]
cleanups

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

15 years agoconvert xor2 to filecheck, merge in a random regtest
Chris Lattner [Sun, 11 Oct 2009 21:42:08 +0000 (21:42 +0000)]
convert xor2 to filecheck, merge in a random regtest

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

15 years agocleanup, no functionality change.
Chris Lattner [Sun, 11 Oct 2009 21:36:10 +0000 (21:36 +0000)]
cleanup, no functionality change.

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

15 years agogeneralize a transformation even more: we don't care whether the
Chris Lattner [Sun, 11 Oct 2009 21:29:45 +0000 (21:29 +0000)]
generalize a transformation even more: we don't care whether the
input the the mul is a zext from bool, just that it is all zeros
other than the low bit.  This fixes some phase ordering issues
that would cause us to miss some xforms in mul.ll when the worklist
is visited differently.

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

15 years agosimplify a transformation by making it more general.
Chris Lattner [Sun, 11 Oct 2009 21:22:21 +0000 (21:22 +0000)]
simplify a transformation by making it more general.

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

15 years agotemporarily revert previous patch
Chris Lattner [Sun, 11 Oct 2009 21:05:34 +0000 (21:05 +0000)]
temporarily revert previous patch

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

15 years agopopulate instcombine's initial worklist more carefully, causing
Chris Lattner [Sun, 11 Oct 2009 21:04:37 +0000 (21:04 +0000)]
populate instcombine's initial worklist more carefully, causing
it to visit instructions from the start of the function to the
end of the function in the first path.  This greatly speeds up
some pathological cases (e.g. PR5150).

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

15 years agoRemove CleanupDbgInfo, instcombine does this and its not worth duplicating it
Torok Edwin [Sun, 11 Oct 2009 19:58:35 +0000 (19:58 +0000)]
Remove CleanupDbgInfo, instcombine does this and its not worth duplicating it
here.

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

15 years agoMore DragonEgg verbiage.
Duncan Sands [Sun, 11 Oct 2009 19:40:38 +0000 (19:40 +0000)]
More DragonEgg verbiage.

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

15 years agoRemove spurious brackets.
Duncan Sands [Sun, 11 Oct 2009 19:30:56 +0000 (19:30 +0000)]
Remove spurious brackets.

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

15 years agoLICM shouldn't sink/delete debug information. Fix this and add a testcase.
Torok Edwin [Sun, 11 Oct 2009 19:15:54 +0000 (19:15 +0000)]
LICM shouldn't sink/delete debug information. Fix this and add a testcase.
For now the metadata of sinked/hoisted instructions is still wrong, but that'll
be fixed when instructions will have debug metadata directly attached.

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

15 years agoImplement 'm' memory operand properly
Anton Korobeynikov [Sun, 11 Oct 2009 19:14:21 +0000 (19:14 +0000)]
Implement 'm' memory operand properly

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

15 years agoImplement proper asmprinting for the globals. This eliminates bogus "call" modifier...
Anton Korobeynikov [Sun, 11 Oct 2009 19:14:02 +0000 (19:14 +0000)]
Implement proper asmprinting for the globals. This eliminates bogus "call" modifier and also adds support for offsets wrt globals.

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

15 years agoImplement asm printing for inline asm memory operands
Anton Korobeynikov [Sun, 11 Oct 2009 19:13:34 +0000 (19:13 +0000)]
Implement asm printing for inline asm memory operands

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

15 years agoadd PR5004 as a known problem.
Chris Lattner [Sun, 11 Oct 2009 19:07:23 +0000 (19:07 +0000)]
add PR5004 as a known problem.

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

15 years agoduncan points out that llvm-gcc doesn't do the right thing with -fverbose-asm yet.
Chris Lattner [Sun, 11 Oct 2009 19:02:54 +0000 (19:02 +0000)]
duncan points out that llvm-gcc doesn't do the right thing with -fverbose-asm yet.

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

15 years agoFix typo.
Nick Lewycky [Sun, 11 Oct 2009 18:53:09 +0000 (18:53 +0000)]
Fix typo.

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

15 years agoFix typo.
Nick Lewycky [Sun, 11 Oct 2009 18:47:33 +0000 (18:47 +0000)]
Fix typo.

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

15 years agowhen folding duplicate conditions, delete the
Chris Lattner [Sun, 11 Oct 2009 18:39:58 +0000 (18:39 +0000)]
when folding duplicate conditions, delete the
now-probably-dead instruction tree feeding it.

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

15 years agosome notes from Anton
Chris Lattner [Sun, 11 Oct 2009 18:21:32 +0000 (18:21 +0000)]
some notes from Anton

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

15 years agocatch some other serial commas that my earlier grep did not spot
Gabor Greif [Sun, 11 Oct 2009 11:44:34 +0000 (11:44 +0000)]
catch some other serial commas that my earlier grep did not spot

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

15 years agoeliminate some instances of serial comma. sabre, if you feel strong about this, feel...
Gabor Greif [Sun, 11 Oct 2009 11:23:40 +0000 (11:23 +0000)]
eliminate some instances of serial comma. sabre, if you feel strong about this, feel free to revert this rev

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