Bill Wendling [Fri, 10 Dec 2010 22:37:19 +0000 (22:37 +0000)]
The MCFixupKindInfo table needs to be in the order that the enums were
declared. Add a note specifying this and spruce up the list a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121586
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Dec 2010 22:32:08 +0000 (22:32 +0000)]
Provide the necessary post-encoder hook for Thumb2 encodings of VMOV and friends.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121585
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 10 Dec 2010 22:21:05 +0000 (22:21 +0000)]
Use AllocationOrder in RegAllocGreedy, fix a bug in the hint calculation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121584
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 10 Dec 2010 22:13:32 +0000 (22:13 +0000)]
Add float patterns for Neon vld1-lane/dup and vst1-lane operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121583
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 10 Dec 2010 22:13:24 +0000 (22:13 +0000)]
Remove unused arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121582
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Dec 2010 22:11:13 +0000 (22:11 +0000)]
Fix encoding of Thumb1 LDRB and STRB.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121581
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 21:57:34 +0000 (21:57 +0000)]
Trailing whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121580
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 10 Dec 2010 21:52:38 +0000 (21:52 +0000)]
Fix Thumb2 encodings of STREX and LDREX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121579
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 21:48:28 +0000 (21:48 +0000)]
Revert r121520, which may have introduced miscompilations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121573
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 21:24:18 +0000 (21:24 +0000)]
Correct encoding of rotation immediate for Thumb2 instructions. rdar://
8755999
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121525
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 21:05:07 +0000 (21:05 +0000)]
Fix encoding of 'U' bit for Thumb2 STRD/LDRD instructions. rdar://
8755726
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121524
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 20:53:44 +0000 (20:53 +0000)]
More trivial cleanup. No need to define the EncoderMethod property type. Can
just assign to it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121523
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 20:51:35 +0000 (20:51 +0000)]
Tidy up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121522
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 20:47:29 +0000 (20:47 +0000)]
Trailing whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121521
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 20:47:03 +0000 (20:47 +0000)]
Implement PartialAlias checking in BasicAA.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121520
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 10 Dec 2010 20:45:04 +0000 (20:45 +0000)]
Fix miscompilation caused by trivial logic error in the reassignVReg()
interference check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121519
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 20:14:49 +0000 (20:14 +0000)]
Minimally update this code to handle PartialAlias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121518
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 20:04:06 +0000 (20:04 +0000)]
Use PartialAlias to do better noalias lint checking.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121514
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 19:53:05 +0000 (19:53 +0000)]
Teach AliasAnalysisCounter about PartialAlias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121513
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 19:52:40 +0000 (19:52 +0000)]
Teach AliasAnalysisEvaluator about PartialAlias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121512
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 19:40:47 +0000 (19:40 +0000)]
Update this code to handle PartialAlias as MayAlias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121508
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 10 Dec 2010 19:38:58 +0000 (19:38 +0000)]
Introduce a new PartialAlias response for AliasAnalysis. For most
AliasAnalysis consumers, PartialAlias will be treated as MayAlias.
For AliasAnalysis chaining, MayAlias says "procede to the next analysis".
PartialAlias will be used to indicate that the query should terminate,
even though it didn't reach MustAlias or NoAlias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121507
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 10 Dec 2010 19:37:42 +0000 (19:37 +0000)]
Fix some invalid alignments for Neon vld-dup and vld/st-lane instructions.
Alignments smaller than the total size of the memory being loaded or stored,
unless the alignment is 8 bytes, are not allowed. Add tests for this, too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121506
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 18:41:15 +0000 (18:41 +0000)]
Teach isCSRestore() that ARM/Thumb2 functions will use post-modify LDR
instructions to restore a single register rather than an LDM instruction.
rdar://
8754999
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121498
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 10 Dec 2010 18:36:02 +0000 (18:36 +0000)]
Add an AllocationOrder class that can iterate over the allocatable physical
registers for a given virtual register.
Reserved registers are filtered from the allocation order, and any valid hint is
returned as the first suggestion.
For target dependent hints, a number of arcane target hooks are invoked.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121497
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 18:21:33 +0000 (18:21 +0000)]
Thumb unconditional branch binary encoding. rdar://
8754994
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121496
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 10 Dec 2010 17:13:40 +0000 (17:13 +0000)]
Thumb conditional branch binary encodings. rdar://
8745367
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121493
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 10 Dec 2010 14:45:10 +0000 (14:45 +0000)]
Another git svn dcommit test. This time let's hope it doesn't kill my repo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121485
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 10 Dec 2010 14:27:18 +0000 (14:27 +0000)]
Another git-svn dcommit test. (last time I got access and client errors and it broke everything locally;/)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121484
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Fri, 10 Dec 2010 13:44:26 +0000 (13:44 +0000)]
Test git svn dcommit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121483
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 10 Dec 2010 11:49:22 +0000 (11:49 +0000)]
Another dummy commit to check GIT mirroring
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121481
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 10 Dec 2010 11:38:59 +0000 (11:38 +0000)]
Dummy commit to test GIT mirroring
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121479
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Fri, 10 Dec 2010 09:18:26 +0000 (09:18 +0000)]
macho-dump: Fix CMake build, following up to r121466.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121476
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 10 Dec 2010 07:39:47 +0000 (07:39 +0000)]
Fixed version of 121434 with no new memory leaks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121471
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Fri, 10 Dec 2010 06:37:53 +0000 (06:37 +0000)]
The Neon vqdmlsl_lane and vqdmlal_lane intrinsics have 4 arguments, not 3.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121469
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 10 Dec 2010 06:19:49 +0000 (06:19 +0000)]
Mach-O/ARM: Add relocation type enumeration.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121467
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 10 Dec 2010 06:19:45 +0000 (06:19 +0000)]
macho-dump: Switch to C++ macho-dump tool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121466
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Fri, 10 Dec 2010 06:19:39 +0000 (06:19 +0000)]
Mach-O: Tweak field name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121465
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Fri, 10 Dec 2010 05:12:54 +0000 (05:12 +0000)]
Remove dead header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121463
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 10 Dec 2010 04:28:37 +0000 (04:28 +0000)]
Fix cmake build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121462
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 10 Dec 2010 04:01:09 +0000 (04:01 +0000)]
Revert my previous patch to make the valgrind bots happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121461
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Fri, 10 Dec 2010 02:15:36 +0000 (02:15 +0000)]
Add dependency to "make check".
cmake/modules/AddLLVM.cmake: Add empty "phony" target in add_llvm_loadable_module() even if loadable module were not supported.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121455
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Fri, 10 Dec 2010 02:15:24 +0000 (02:15 +0000)]
lib/Target/CMakeLists.txt: Add missing lib/Target/TargetAsmInfo.cpp, following up to r121434.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121454
91177308-0d34-0410-b5e6-
96231b3b80d8
Kevin Enderby [Fri, 10 Dec 2010 01:41:56 +0000 (01:41 +0000)]
Fix the leak from r121401 of the Operands erased in the list but not deleted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121450
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 10 Dec 2010 01:31:51 +0000 (01:31 +0000)]
Use GZIPBIN instead of GZIP. Apparently gzip uses GZIP as an environment
variable for args you want to default pass to gzip.
Patch based on one by asau@inbox.ru.
Fixes PR8758.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121449
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 10 Dec 2010 00:54:26 +0000 (00:54 +0000)]
Add some missing predicates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121445
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Dec 2010 00:54:03 +0000 (00:54 +0000)]
fix some validation problems
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121444
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 10 Dec 2010 00:52:35 +0000 (00:52 +0000)]
restructure this for readability, correct the example to follow the public ivar name convention
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121443
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 10 Dec 2010 00:26:57 +0000 (00:26 +0000)]
Formalize the notion that AVX and SSE are non-overlapping extensions from the compiler's point of view. Per email discussion, we either want to always use VEX-prefixed instructions or never use them, and are taking "HasAVX" to mean "Always use VEX". Passing -mattr=-avx,+sse42 should serve to restore legacy SSE support when desirable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121439
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 9 Dec 2010 23:48:29 +0000 (23:48 +0000)]
Initial support for the cfi directives. This is just enough to get
f:
.cfi_startproc
nop
.cfi_endproc
assembled (on ELF).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121434
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 9 Dec 2010 23:37:07 +0000 (23:37 +0000)]
Print breakpoints for call instructions. This is used by optimized debug info test harness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121432
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Dec 2010 23:32:39 +0000 (23:32 +0000)]
add a rule for enums, patch by Zhanyong Wan!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121430
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 9 Dec 2010 23:18:58 +0000 (23:18 +0000)]
Add initial support to measure local variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121428
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 9 Dec 2010 23:08:35 +0000 (23:08 +0000)]
Use const references.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121426
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 9 Dec 2010 23:05:48 +0000 (23:05 +0000)]
Fix the prototype for the llvm.eh.selector intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121425
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 9 Dec 2010 21:49:07 +0000 (21:49 +0000)]
Thumb ldr reg+imm offsets were encoded incorrectly. The scaling factor of the
t_addrmode_s# address modes is used for ASM printing, not for encoding.
<rdar://problem/
8745375>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121417
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Thu, 9 Dec 2010 21:43:51 +0000 (21:43 +0000)]
Add support for AVX to materialize +0.0 when doing scalar FP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121415
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 9 Dec 2010 21:34:47 +0000 (21:34 +0000)]
Use the new IsAligned fixup flag to improve fixup encodings for Thumb2 branches. This is still not perfect,
but it gets many more of them correct than it did previously.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121414
91177308-0d34-0410-b5e6-
96231b3b80d8
Stuart Hastings [Thu, 9 Dec 2010 21:25:20 +0000 (21:25 +0000)]
Initial support for nested CALLSEQ_START/CALLSEQ_END constructs in LegalizeDAG.
Necessary for byval support on ARM. Radar
7662569.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121412
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 9 Dec 2010 21:20:46 +0000 (21:20 +0000)]
Remember to filter out reserved rergisters from the allocation order.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121411
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 9 Dec 2010 21:20:44 +0000 (21:20 +0000)]
Add a forgotten initializer for CheckedFirstInterference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121410
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 9 Dec 2010 20:35:40 +0000 (20:35 +0000)]
Give CurStreamType's enum a name. This works around what is apparently
a bug in Apple GCC 4.0.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121409
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 9 Dec 2010 20:27:52 +0000 (20:27 +0000)]
Fix an issue in some Thumb fixups, where the effective PC address needs to be 4-byte aligned when calculating
the offset. Add a new fixup flag to represent this, and use it for the one fixups that I have a testcase for needing
this. It's quite likely that the other Thumb fixups will need this too, and to have their fixup encoding logic
adjusted accordingly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121408
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 19:50:12 +0000 (19:50 +0000)]
Rename CB/CBZ specific fixup accordingly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121404
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 9 Dec 2010 19:26:21 +0000 (19:26 +0000)]
Add assert to catch an attempt to emit .byte 256
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121402
91177308-0d34-0410-b5e6-
96231b3b80d8
Kevin Enderby [Thu, 9 Dec 2010 19:19:43 +0000 (19:19 +0000)]
Add support for parsing ARM arithmetic instructions that update or don't update
the condition codes. Where the ones that do have an 's' suffix and the ones
that don't don't have the suffix. The trick is if MatchInstructionImpl() fails
we try again after adding a CCOut operand with the correct value and removing
the 's' if present. Four simple test cases added for now, lots more to come.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121401
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 19:04:53 +0000 (19:04 +0000)]
Rename the encoder method for t_cbtarget to match.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121399
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 19:01:46 +0000 (19:01 +0000)]
Thumb needs a few different encoding schemes for branch targets. Rename
t_brtarget to be more specific.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121398
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 9 Dec 2010 18:43:35 +0000 (18:43 +0000)]
80-column fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121395
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 18:31:13 +0000 (18:31 +0000)]
ARM stm/ldm instructions require more than one register in the register list.
Otherwise, a plain str/ldr should be used instead. Make sure we account for
that in prologue/epilogue code generation.
rdar://
8745460
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121391
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 9 Dec 2010 18:31:01 +0000 (18:31 +0000)]
Add a license comment to the generated arm_neon.h header.
Remove the previous header. I don't think we need to expose to end users
that we use TableGen to produce our version of arm_neon.h, and that header
was also using doubleslash comments which could be a problem when using it
in strict C89 compilations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121390
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Trick [Thu, 9 Dec 2010 18:15:21 +0000 (18:15 +0000)]
Added register reassignment prototype to RAGreedy. It's a simple
heuristic to reshuffle register assignments when we can't find an
available reg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121388
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 18:06:07 +0000 (18:06 +0000)]
More code not compiled by CMake. :(.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121387
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:54:44 +0000 (17:54 +0000)]
CMake: Add FileUpdate to the build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121386
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:48:55 +0000 (17:48 +0000)]
Missed FileUpdate because CMake doesn't build it yet :(.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121385
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:37:42 +0000 (17:37 +0000)]
Support/Windows/PathV2: Fix header comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121383
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:37:32 +0000 (17:37 +0000)]
Fix whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121382
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:37:18 +0000 (17:37 +0000)]
Support: Move c_str from SmallVector back to SmallString and add a free standing
templated c_str in Windows.h to replace it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121381
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:37:02 +0000 (17:37 +0000)]
Support/FileSystem: Change file_status predicate functions that cannot fail to
return their result instead of an error_code. Also add some missing predicate
functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121380
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Thu, 9 Dec 2010 17:36:48 +0000 (17:36 +0000)]
Support/MemoryBuffer: Replace all uses of std::string *ErrMsg with error_code &ec. And fix clients.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121379
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 9 Dec 2010 17:32:30 +0000 (17:32 +0000)]
Add ROTR and ROTRV mips32 instructions. Patch by Akira Hatanaka
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121377
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 9 Dec 2010 17:31:11 +0000 (17:31 +0000)]
Fix delay slot filler for non mips1 targets. Patch by Akira Hatanaka
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121376
91177308-0d34-0410-b5e6-
96231b3b80d8
Kalle Raiskila [Thu, 9 Dec 2010 16:17:31 +0000 (16:17 +0000)]
Dont' feed ILA two inputs - it takes just one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121372
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 16:15:41 +0000 (16:15 +0000)]
tidy up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121371
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 16:14:46 +0000 (16:14 +0000)]
80 columns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121370
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Dec 2010 07:45:45 +0000 (07:45 +0000)]
enhance memcpyopt to zap memcpy's that have the same src/dst.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121362
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 9 Dec 2010 07:39:50 +0000 (07:39 +0000)]
fix PR8753, eliminating a case where we'd infinitely make a
substitution because it doesn't actually change the IR. Patch by
Jakub Staszak!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121361
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 9 Dec 2010 06:25:53 +0000 (06:25 +0000)]
Rewrite the darwin tlv support to use a chain and return to copying
the output to the correct register. Fixes a hidden problem uncovered
by the last patch where we'd try to DAG combine our MVT::Other node
oddly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121358
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 9 Dec 2010 06:14:58 +0000 (06:14 +0000)]
Take the first step towards making LVI non-recursive: get rid of the LVIQuery abstraction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121357
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 9 Dec 2010 04:48:06 +0000 (04:48 +0000)]
80-col fixups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121356
91177308-0d34-0410-b5e6-
96231b3b80d8
Wesley Peck [Thu, 9 Dec 2010 03:42:04 +0000 (03:42 +0000)]
Reworking the stack layout generated by the MBlaze backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121355
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 9 Dec 2010 02:56:12 +0000 (02:56 +0000)]
Fix encoding of the immediate operands on post-indexed LDR and friends.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121354
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 9 Dec 2010 02:52:17 +0000 (02:52 +0000)]
Really check that the bits that will become zero are actually already zero
before eliminating the operation that zeros them. This fixes rdar://
8739316.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121353
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Thu, 9 Dec 2010 01:57:45 +0000 (01:57 +0000)]
Fix up some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121351
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 9 Dec 2010 01:51:07 +0000 (01:51 +0000)]
Fix Thumb2 fixups for ldr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121350
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 01:23:51 +0000 (01:23 +0000)]
Add a textual message to the assert.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121349
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 01:22:19 +0000 (01:22 +0000)]
Add a sanity check assert() for t2ADD/SUBrSPi instructions that they really are
referencing the stack pointer as they say they are.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121347
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 01:22:13 +0000 (01:22 +0000)]
When using multiple instructions to reference a frame index, make sure to
update the opcode when necessary as well as the source register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121346
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 9 Dec 2010 01:21:27 +0000 (01:21 +0000)]
The add/sub SP instructions are really pseudos. The assembler should ignore
them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121345
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 9 Dec 2010 01:06:52 +0000 (01:06 +0000)]
IntervalMap iterators are heavyweight, so avoid copying them around and use
references instead.
Similarly, IntervalMap::begin() is almost as expensive as find(), so use find(x)
instead of begin().advanceTo(x);
This makes RegAllocBasic run another 5% faster.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121344
91177308-0d34-0410-b5e6-
96231b3b80d8