Oscar Fuentes [Sat, 25 Sep 2010 20:43:06 +0000 (20:43 +0000)]
New cmake options LLVM_INCLUDE_X (X = {TOOLS, EXAMPLES, TESTS}) for
not generating build targets for those parts of the build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114797
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Sat, 25 Sep 2010 20:27:36 +0000 (20:27 +0000)]
Avoid warnings about implicit conversions to `bool' in MSVC. This time
for real.
Patch by Nathan Jeffords!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114796
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Sat, 25 Sep 2010 20:25:25 +0000 (20:25 +0000)]
Reverting "CMake: Don't include tools, unittets, or examples as
available targets unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies
LLVM_INCLUDE_X"
It breaks the configuration phase when cmake is invoked without
parameters, it is too complex for the purpose and introduces an
incovenience for the user (as both LLVM_BUILD_X and LLVM_INCLUDE_X
must set to OFF for not including X on the build)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114795
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Sat, 25 Sep 2010 18:10:38 +0000 (18:10 +0000)]
Avoid using VNInfo::getCopy as much as possible. I want to get rid of it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114794
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 25 Sep 2010 15:53:35 +0000 (15:53 +0000)]
temporarily revert developer policy change as a courtesy to vikram.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114792
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Sat, 25 Sep 2010 12:04:16 +0000 (12:04 +0000)]
Removed VNInfo::isDefAccurate(). Def "accuracy" can be checked by testing whether LiveIntervals::getInstructionFromIndex(def) returns NULL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114791
91177308-0d34-0410-b5e6-
96231b3b80d8
Che-Liang Chiou [Sat, 25 Sep 2010 07:49:54 +0000 (07:49 +0000)]
Add test case for PTX ret instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114789
91177308-0d34-0410-b5e6-
96231b3b80d8
Che-Liang Chiou [Sat, 25 Sep 2010 07:46:17 +0000 (07:46 +0000)]
Add ret instruction to PTX backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114788
91177308-0d34-0410-b5e6-
96231b3b80d8
Che-Liang Chiou [Sat, 25 Sep 2010 07:02:30 +0000 (07:02 +0000)]
Remove trailing spaces of CallingConv.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114787
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 25 Sep 2010 05:42:19 +0000 (05:42 +0000)]
Move ELF to HasReliableSymbolDifference=true. Also take the opportunity to put
symbols defined in merge sections in independent atoms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114786
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sat, 25 Sep 2010 05:26:18 +0000 (05:26 +0000)]
LoadPRE was not properly checking that the load it was PRE'ing post-dominated the block it was being hoisted to.
Splitting critical edges at the merge point only addressed part of the issue; it is also possible for non-post-domination
to occur when the path from the load to the merge has branches in it. Unfortunately, full anticipation analysis is
time-consuming, so for now approximate it. This is strictly more conservative than real anticipation, so we will miss
some cases that real PRE would allow, but we also no longer insert loads into paths where they didn't exist before. :-)
This is a very slight net positive on SPEC for me (0.5% on average). Most of the benchmarks are largely unaffected, but
when it pays off it pays off decently: 181.mcf improves by 4.5% on my machine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114785
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Sep 2010 01:09:28 +0000 (01:09 +0000)]
Fix IIC_iEXTAr itinerary class of Cortex-A9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114784
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Sep 2010 01:06:02 +0000 (01:06 +0000)]
Remove a unused instruction itinerary class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114782
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 25 Sep 2010 00:57:26 +0000 (00:57 +0000)]
If we're changing the source of a memcpy we need to use the alignment
of the source, not the original alignment since it may no longer
be valid.
Fixes rdar://
8400094
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114781
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 25 Sep 2010 00:49:35 +0000 (00:49 +0000)]
Fix zero and sign extension instructions scheduling itineraries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114780
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Sat, 25 Sep 2010 00:45:18 +0000 (00:45 +0000)]
Remove SlotIndex::PHI_BIT. It is no longer used by anything.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114779
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Sat, 25 Sep 2010 00:45:15 +0000 (00:45 +0000)]
Remove the only use of SlotIndex::isPHI. This bit is not being set consistently
and it will be removed shortly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114778
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 24 Sep 2010 23:58:56 +0000 (23:58 +0000)]
Terminator gaps were unused. Might as well delete them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114776
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Sep 2010 22:41:41 +0000 (22:41 +0000)]
More pseudo instruction scheduling itinerary fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114768
91177308-0d34-0410-b5e6-
96231b3b80d8
John Thompson [Fri, 24 Sep 2010 22:24:05 +0000 (22:24 +0000)]
Fix for test/CodeGen/PowerPC/2008-10-17-AsmMatchingOperands.ll crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114767
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Sep 2010 22:03:46 +0000 (22:03 +0000)]
Fix scheduling itinerary for pseudo mov immediate instructions which expand into two real instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114766
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 24 Sep 2010 21:19:03 +0000 (21:19 +0000)]
Reapply 114678 and 114667. Reverting them did not fix the bot:
http://google1.osuosl.org:8011/builders/llvm-gcc-i386-linux-selfhost/builds/69
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114761
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 24 Sep 2010 20:47:58 +0000 (20:47 +0000)]
Add ARM explicit MCInst lowering for the Thumb eh.sjlj.setjmp sequence.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114758
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 24 Sep 2010 20:34:49 +0000 (20:34 +0000)]
Be more precise when trying to XFAIL this tester: google1.osuosl.org:8011/builders/llvm-arm-linux
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114755
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 19:48:47 +0000 (19:48 +0000)]
Get rid of pop_macro warnings on MSVC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114750
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 19:10:51 +0000 (19:10 +0000)]
CMake: Don't include tools, unittets, or examples as available targets
unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies LLVM_INCLUDE_X
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114747
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Sep 2010 19:07:23 +0000 (19:07 +0000)]
Enable code placement optimization pass for ARM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114746
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 24 Sep 2010 19:05:48 +0000 (19:05 +0000)]
We can't return SSE/MMX vectors if SSE is disabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114745
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 24 Sep 2010 18:48:08 +0000 (18:48 +0000)]
Revert 114678 and 114667 to see if
http://google1.osuosl.org:8011/builders/llvm-gcc-i386-linux-selfhost
gets happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114742
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Fri, 24 Sep 2010 17:27:50 +0000 (17:27 +0000)]
Attach a DebugLoc to a GC point in order to get precise information in the JIT of a GC point.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114736
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 24 Sep 2010 17:10:26 +0000 (17:10 +0000)]
MC/AsmParser: Handle a missed case of floating literals in the lexer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114733
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 09:10:21 +0000 (09:10 +0000)]
Fix line endings from my last commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114728
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 09:01:34 +0000 (09:01 +0000)]
unittests: Support Windows.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114727
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 09:01:22 +0000 (09:01 +0000)]
Test unittests built with CMake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114726
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 09:01:13 +0000 (09:01 +0000)]
CMake: Build unittests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114725
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 24 Sep 2010 09:00:56 +0000 (09:00 +0000)]
Fix whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114724
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 24 Sep 2010 05:18:35 +0000 (05:18 +0000)]
Fix a potential null dereference bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114723
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 24 Sep 2010 01:59:56 +0000 (01:59 +0000)]
MC/AsmParser: Support .single and .double for embedding floating point literals.
- I believe more modern 'gas' supports a more enhanced set of arithmetic on
them, but for now the only thing we can do is emit them as data.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114719
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 24 Sep 2010 01:59:31 +0000 (01:59 +0000)]
MC/Lexer: Add 'Real' token type for floating point literals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114718
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 24 Sep 2010 01:58:56 +0000 (01:58 +0000)]
MC: Add missing ')' in diagnostic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114717
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 23 Sep 2010 23:45:25 +0000 (23:45 +0000)]
Revert r114703 and r114702, removing the isConditionalMove flag from instructions. After further
reflection, this isn't going to achieve the purpose I intended it for. Back to the drawing board!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114710
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 23 Sep 2010 23:42:37 +0000 (23:42 +0000)]
Set alignment operand for NEON VST instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114709
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 23:33:56 +0000 (23:33 +0000)]
ARM-mode eh.sjlj.setjmp pseudo MC-inst lowering expansion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114707
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 23:32:38 +0000 (23:32 +0000)]
#+4 --> #4 for consistency with other asm output
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114706
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 23:03:26 +0000 (23:03 +0000)]
Fix formatting of output .s code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114705
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 23 Sep 2010 22:57:01 +0000 (22:57 +0000)]
Add isConditionalMove bits to X86 and ARM instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114703
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 23 Sep 2010 22:44:10 +0000 (22:44 +0000)]
Add an TargetInstrDesc bit to indicate that a given instruction is a conditional move.
Not intended functionality change, as nothing uses this yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114702
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Sep 2010 22:34:49 +0000 (22:34 +0000)]
remove an obsolete section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114701
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 23 Sep 2010 21:43:54 +0000 (21:43 +0000)]
Set alignment operand for NEON VLD instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114696
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Trick [Thu, 23 Sep 2010 20:26:44 +0000 (20:26 +0000)]
Fix Getting Started docs.
configure expects LLVM Test Suite to be in projects/test-suite.
Made the "getting started" and "testing infrastructure" docs internally consistent.
Avoid confusion between llvm-test and llvm/test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114691
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 23 Sep 2010 19:55:14 +0000 (19:55 +0000)]
Correctly handle weak undefined symbols. Before we would get a invalid binding
(2 == STB_WEAK | STB_GLOBAL).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114690
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 19:42:17 +0000 (19:42 +0000)]
never mind. I can't read, apparently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114689
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 19:42:03 +0000 (19:42 +0000)]
Fix r114632. Return if the only terminator is an unconditional branch after the redundant ones are deleted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114688
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 19:32:40 +0000 (19:32 +0000)]
Fix opcode value for the 'trap' instruction, keeping the type suffix on the
constant. Hopefully the non-Darwin bots will like it...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114687
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 19:08:04 +0000 (19:08 +0000)]
explicit 'unsigned long' on constant value. Hopefully make bots happier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114686
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Thu, 23 Sep 2010 18:57:26 +0000 (18:57 +0000)]
Unbreak build. Jim, please review.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114684
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 18:32:19 +0000 (18:32 +0000)]
Revert 114634 for now since buildbot claim it broke Clang self-hosting. I doubt it but it's possible it's exposing another bug somewhere.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114681
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 18:07:04 +0000 (18:07 +0000)]
trailing whitespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114680
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 18:05:37 +0000 (18:05 +0000)]
Clean up the 'trap' instruction printing a bit. Non-Darwin assemblers don't
(yet) recognize the 'trap' mnemonic, so we use .short/.long to emit the
opcode directly. On Darwin, however, we do want the mnemonic for more
readable assembly code and better disassembly.
Adjust the .td file to use the 'trap' mnemonic and handle using the binutils
workaround in the assembly printer. Also tweak the formatting of the opcode
values to make them consistent between the MC printer and the old printer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114679
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 23 Sep 2010 18:01:31 +0000 (18:01 +0000)]
Correctly compute the offset of the symbol. Forgot these bits from the
last commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114678
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 23 Sep 2010 17:58:00 +0000 (17:58 +0000)]
nuke unused var
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114676
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Sep 2010 17:37:11 +0000 (17:37 +0000)]
rewrite the copyright section to match reality: llvm does't have a
copyright assignment process.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114673
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 23 Sep 2010 17:27:54 +0000 (17:27 +0000)]
add lldb and libc++ code owners.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114669
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 23 Sep 2010 17:25:18 +0000 (17:25 +0000)]
Represent relocations against local symbols as relocations against the section
they are in. Both ways should be equivalent, but gas produces relocations
against the section.
Roman wrote the patch, I added the test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114667
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 23 Sep 2010 17:25:06 +0000 (17:25 +0000)]
Fix llvm-extract so that it changes the linkage of all GlobalValues to
"external" even when doing lazy bitcode loading. This was broken because
a function that is not materialized fails the !isDeclaration() test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114666
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Thu, 23 Sep 2010 16:59:44 +0000 (16:59 +0000)]
Avoid warnings about conversions to `bool' in MS compilers.
Patch by Nathan Jeffords!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114662
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Thu, 23 Sep 2010 16:59:36 +0000 (16:59 +0000)]
Fix VS 2010 build.
Patch by Nathan Jeffords!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114661
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Thu, 23 Sep 2010 16:49:17 +0000 (16:49 +0000)]
Revert r114596, it's breaking a few tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114659
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Thu, 23 Sep 2010 14:19:21 +0000 (14:19 +0000)]
Bump LLVM in CMake makefiles to 2.9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114640
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 23 Sep 2010 14:14:56 +0000 (14:14 +0000)]
Fix the FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114639
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 07:18:35 +0000 (07:18 +0000)]
Follow up to r114630. Do not optimize away unconditional branch following a conditional one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114634
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 06:55:34 +0000 (06:55 +0000)]
Disable codegen prepare critical edge splitting. Machine instruction passes now
break critical edges on demand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114633
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 06:54:40 +0000 (06:54 +0000)]
If there are multiple unconditional branches terminating a block, eliminate all
but the first one. Those will never be executed. There was logic to do this
but it was faulty.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114632
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 06:53:00 +0000 (06:53 +0000)]
Don't sink insert_subreg, subreg_to_reg, reg_sequence. They are meant to be
close to their sources to facilitate coalescing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114631
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 23 Sep 2010 06:51:55 +0000 (06:51 +0000)]
SDISel should not optimize a unconditional branch following a conditional branch
when the unconditional branch destination is the fallthrough block. The
canonicalization makes it easier to allow optimizations on DAGs to invert
conditional branches. The branch folding pass (and AnalyzeBranch) will clean up
the unnecessary unconditional branches later.
This is one of the patches leading up to disabling codegen prepare critical edge
splitting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114630
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Thu, 23 Sep 2010 04:28:54 +0000 (04:28 +0000)]
Moved the PBQP allocator class out of the header and back in to the cpp file to hide the gory details.
Allocator instances can now be created by calling createPBQPRegisterAllocator.
Tidied up use of CoalescerPair as per Jakob's suggestions.
Made the new PBQPBuilder based construction process the default. The internal construction process
remains in-place and available via -pbqp-builder=false for now. It will be removed shortly if the new
process doesn't cause any regressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114626
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Thu, 23 Sep 2010 02:14:12 +0000 (02:14 +0000)]
Fixed a crash in the enhanced disassembler where
because of the lack of a newline, AsmToken::Eof
was being found instead of AsmToken::EndOfStatement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114621
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 23 Sep 2010 00:33:13 +0000 (00:33 +0000)]
Fix llvm-extract -delete's lazy loading to materialize the functions that
will not be deleted, rather than the ones that will.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114614
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 23:27:36 +0000 (23:27 +0000)]
Add support for ELF PLT references for ARM MC asm printing. Adding a
new VariantKind to the MCSymbolExpr seems like overkill, but I'm not sure
there's a more straightforward way to get the printing difference captured.
(i.e., x86 uses @PLT, ARM uses (PLT)).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114613
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 22 Sep 2010 23:20:04 +0000 (23:20 +0000)]
Make SetVector's remove indicate whether it actually removed something.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114612
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 23:01:28 +0000 (23:01 +0000)]
Enable a few additional asserts in MC instruction lowering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114601
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Wed, 22 Sep 2010 22:58:22 +0000 (22:58 +0000)]
A select between a constant and zero, when fed by a bit test, can be efficiently
lowered using a series of shifts.
Fixes <rdar://problem/
8285015>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114599
91177308-0d34-0410-b5e6-
96231b3b80d8
Cameron Esfahani [Wed, 22 Sep 2010 22:35:21 +0000 (22:35 +0000)]
Fix PR8201: Update the code to call via X86::CALL64pcrel32 in the 64-bit case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114597
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Wed, 22 Sep 2010 22:28:42 +0000 (22:28 +0000)]
<rdar://problem/
8228022> Wvector-conversions warnings in arm_neon.h
Explicitly cast arguments to the type the builtin expects, which is <vN x i8>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114596
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 22 Sep 2010 22:27:30 +0000 (22:27 +0000)]
Change VDUPLANE DAG combiner to just return the result instead of calling
CombineTo to avoid putting the result on the worklist. I don't think it makes
much difference for now, but it might help someday as we add more DAG
combine optimizations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114595
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 22 Sep 2010 22:27:05 +0000 (22:27 +0000)]
Avoid some Mach-O specific alignment being done on ELF.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114594
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 22 Sep 2010 22:19:53 +0000 (22:19 +0000)]
allow target-specific label suffixes, patch by Yuri Gribov!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114592
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 22 Sep 2010 22:18:07 +0000 (22:18 +0000)]
Fix uninitialized TBAAFlag field values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114591
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 22 Sep 2010 22:09:21 +0000 (22:09 +0000)]
Combine both VMOVDRR(VMOVRRD) and VMOVRRD(VMOVDRR), instead of just doing one
of those. Refactor to share code for handling BUILD_VECTOR(VMOVRRD).
I don't have a testcase that exercises this, but it seems like an obvious
good thing to do.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114589
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 22 Sep 2010 21:41:02 +0000 (21:41 +0000)]
Teach memdep about TBAA tags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114588
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 22 Sep 2010 21:10:38 +0000 (21:10 +0000)]
Use DW_OP_fbreg when offset is based on frame register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114585
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 20:55:15 +0000 (20:55 +0000)]
add FIXME
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114578
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 22 Sep 2010 20:42:08 +0000 (20:42 +0000)]
Temporarily work around new address lowering while I figure out what
needs to happen for darwin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114577
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 20:32:34 +0000 (20:32 +0000)]
Remove a few commented out bits
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114576
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 22 Sep 2010 20:11:43 +0000 (20:11 +0000)]
Constify.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114574
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 22 Sep 2010 19:04:41 +0000 (19:04 +0000)]
Fix typo and add a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114570
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 22 Sep 2010 18:44:56 +0000 (18:44 +0000)]
When moving zext/sext to be folded with a load, ignore the issue of whether
truncates are free only in the case where the extended type is legal but the
load type is not. If both types are illegal, such as when they are too big,
the load may not be legalized into an extended load.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114568
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 18:37:14 +0000 (18:37 +0000)]
Add PrintSpecial() handling for in ARM MC instruction printer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114563
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 18:18:30 +0000 (18:18 +0000)]
grammar tweakage
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114561
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 22 Sep 2010 18:16:55 +0000 (18:16 +0000)]
remove trailing whitespace
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114560
91177308-0d34-0410-b5e6-
96231b3b80d8