Evan Cheng
f3caa525cc
X86 address mode matching code MatchAddressRecursively does some aggressive hack which require doing a RAUW. It may end up deleting some SDNode up stream. It should avoid referencing deleted nodes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98780 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 23:58:35 +00:00
Devang Patel
c3188ce0f1
Debug info intrinsic does not intefer during tail call optimization.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98778 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 23:52:37 +00:00
Johnny Chen
6c8648b4c9
Revert 98745 with respect to the addition of NEONFrm subformats for disassembly.
...
There is a better way coming up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98777 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 23:26:50 +00:00
Jakob Stoklund Olesen
0427b2ac45
Change coalescer complexity from N^2 to N logN by changing one letter.
...
Remove ugly hack that aborted the coalescer before using N^2 time.
This affects functions with very complicated live intervals for physical
registers, i.e. functions with thousands of function calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98776 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 23:21:58 +00:00
Johnny Chen
b675e255d0
Fixed a bug in the IT mask printing where T means the cond bit in the mask
...
matches that of Firstcond[0] and E means otherwise. The Firstcond[0] is also
tagged in the Mask to facilitate Asm printing. The disassembler also depends
on this arrangement. This is similar to what's described in A2.5.2 ITSTATE.
Ran:
utils/lit/lit.py test/CodeGen/ARM test/CodeGen/Thumb test/CodeGen/Thumb2
successfully.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98775 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 23:14:23 +00:00
Johnny Chen
77bdc48eb6
Refines 98745 so that it only contains the patch related to the output of the
...
addressing modes to omit the '+' from the assembler syntax #+/-<imm> or +/-<Rm>.
This patch removes the impl of printT2AddrModeImm8s4OffsetOperand() from
ARMAsmPrinter.cpp. It is used by disassembler as of now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98774 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 23:01:59 +00:00
Sean Callanan
e340da73ed
Changed install_name for libEnhancedDisassembly.dylib on
...
Mac OS X to match current install location. This has no
effect on other platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98773 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 22:01:36 +00:00
Jim Grosbach
e4ad0a3c18
remove arm mode workaround for ARM host
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98771 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 21:28:19 +00:00
Jim Grosbach
11cb87c259
Use llvm-gcc to build ARM when it's available
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98770 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 21:25:13 +00:00
Bob Wilson
87949d4d5a
Clean up whitespace.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98769 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 21:16:45 +00:00
Bob Wilson
89ef7b797a
Increase format field from 5 to 6 bits. ARMII::FormMask was increased to 0x3f
...
in svn r74988 but the format field was never widened.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98768 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 21:13:43 +00:00
Benjamin Kramer
e5636a3221
Initialize Size member to appease valgrind.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98763 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 19:55:31 +00:00
Dan Gohman
ebf78f18df
Revert 98755, which may be causing trouble.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98762 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 19:54:53 +00:00
Gabor Greif
f5bf7c52eb
feedback from Nick
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98761 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 19:27:31 +00:00
Dan Gohman
0afc29c3e6
Change SCEVNAryExpr's operand array from a SmallVector to a plain
...
pointer and length, and allocate the arrays in ScalarEvolution's
BumpPtrAllocator, so that they get released when their owning
SCEV gets released. SCEVs are immutable, so they don't need to worry
about operand array resizing. This fixes a memory leak reported
in PR6637.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98755 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 18:51:01 +00:00
Bob Wilson
f9cf8b35bb
Remove an unnecessary (and misspelled) typedef. Tweak whitespace.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98753 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 18:43:25 +00:00
Andrew Lenharth
7e1b037edd
missing include
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98752 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 18:33:00 +00:00
Johnny Chen
e6f83878bc
98745 contains something unrelated to the patch.
...
Remove it from ARMAddressingModes.h.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98751 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 18:32:39 +00:00
Chris Lattner
f04bdc565b
notes from evan
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98748 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 18:15:52 +00:00
Johnny Chen
9e08876a2a
Added sub-formats to the NeonI/NeonXI instructions to further refine the NEONFrm
...
instructions to help disassembly.
We also changed the output of the addressing modes to omit the '+' from the
assembler syntax #+/-<imm> or +/-<Rm>. See, for example, A8.6.57/58/60.
And modified test cases to not expect '+' in +reg or #+num. For example,
; CHECK: ldr.w r9, [r7, #28 ]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98745 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 17:52:21 +00:00
Stuart Hastings
b0a72ec2eb
Testcase for r98728.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98744 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 17:51:08 +00:00
Devang Patel
5b33f3148c
Fix EmitSectionOffset incorrect argument. DwarfDebug is emitting debug info so isEH is always false. This was hiding until now from compilers because of default arguments. This was hiding from dwarf debug info users because for most of the platform isAbsoluteEHSectionOffsets() is same as isAbsoluteDebugSectionOffsets(). But Chris found it while updating dwarf printer to use MC*.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98743 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 17:29:55 +00:00
Chris Lattner
477a1fd19b
several updates
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98742 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 17:25:49 +00:00
Jeffrey Yasskin
b5e9770aef
Make lit pay attention to --vg for tcl tests too, which makes it work on LLVM's
...
non-unit tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98741 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 17:04:56 +00:00
John Criswell
b34500fae5
Fixed spelling errors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98724 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 15:01:50 +00:00
Jeffrey Yasskin
b7ccf75de5
Fix a false-positive memory leak in code using RemoveFileOnSignal(). Because
...
libstdc++'s std::string class points to the interior of an allocation, valgrind
reports strings still alive at program termination as possible leaks. I didn't
use a ManagedStatic for this because System can't depend on Support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98716 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 07:08:12 +00:00
Chris Lattner
15a061194e
combiner-aa too, what's its status?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98715 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 06:42:25 +00:00
Chris Lattner
dc910080fa
more chris scribble.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98714 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 06:41:58 +00:00
Chris Lattner
77e7694026
fix GetOrCreateTemporarySymbol to require a name, clients
...
should use CreateTempSymbol() if they don't care about the
name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98712 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 05:41:18 +00:00
Chris Lattner
c66bfef33d
add a bunch of random and unformatted notes as I am reading
...
through tons of old commits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98709 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 04:41:49 +00:00
Chris Lattner
0e464a9170
add logo, comment out project info, they need to send updates
...
to get reincluded.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98706 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 04:02:39 +00:00
Chris Lattner
b095ba439d
remove dead variable, patch by Nathan Howell!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98704 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 01:45:17 +00:00
Jeffrey Yasskin
b5f59f5cf0
Fix death tests in -Asserts builds.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98701 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-17 01:18:45 +00:00
Bob Wilson
a1bdfc3c7f
Remove a check that can no longer be true, after r84803.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98694 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 23:40:32 +00:00
Bob Wilson
a43e6bf690
Revert 98683. It is breaking something in the disassembler.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98692 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 23:01:13 +00:00
Evan Cheng
4507f089d4
Fix liveintervals handling of dbg_value instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98686 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 21:51:27 +00:00
Bob Wilson
bb6c77e6b9
Remove redundant writeback flag from ARM address mode 6. Also remove the
...
optional register update argument, which is currently unused -- when we add
support for that, it can just be a separate operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98683 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 21:44:40 +00:00
Chris Lattner
93b122d3c4
reapply r98656 unmodified, which exposed the asmprinter not
...
handling constant unions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98680 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 21:25:55 +00:00
Johnny Chen
2b0272e43d
Disambiguate the *_UPD and * variants by specifying the writeback flag as 1.
...
This is for the disassembly work.
There are cases where this is not possible, for example, A8.6.53 LDM Encoding T1.
In such case, we'll use an adhoc approach to deduce the Opcode programmatically.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98679 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 21:25:05 +00:00
Chris Lattner
94c484d3b8
add asmprinter suport for unions, fixing Feature/unions.ll to actually
...
be doing something useful.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98677 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 21:21:35 +00:00
Devang Patel
cbe1e31732
Ignore debug value instructions while analyzing BB for tail duplication.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98675 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 21:02:07 +00:00
Daniel Dunbar
ab7f10705a
Revert r98666 too; it's checkin-without-testing day!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98673 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 20:52:59 +00:00
Benjamin Kramer
2d7186ae6d
str[r]chr returns its pointer argument so we cannot mark it as nocapture. Thanks to Duncan for spotting my mistake.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98671 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 20:33:15 +00:00
Chris Lattner
7df6ecf767
temporarily xfail
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98666 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 20:08:07 +00:00
Benjamin Kramer
4446b04052
Mark str[r]chr readonly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98663 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 19:36:43 +00:00
Daniel Dunbar
b85c7100c5
Revert r98656, its breaking all over the place.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98662 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 19:35:34 +00:00
Chris Lattner
8b3b34f410
improve support for uniontype and ConstantUnion, patch by Tim Northover!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98656 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 19:15:03 +00:00
Dan Gohman
eb2693ebc0
Add an rdar number to this test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98654 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 19:08:20 +00:00
Chris Lattner
730f743c01
work around an MSVC2010 bug, PR6504
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98653 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 19:07:05 +00:00
Duncan Sands
c221bc7344
Chris pointed out that producing undef here is wrong in
...
general.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98649 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-16 18:50:54 +00:00