Bruno Cardoso Lopes [Mon, 22 Aug 2011 20:31:00 +0000 (20:31 +0000)]
Add 128-bit AVX codegen for PCMP* family of integer instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138270
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 22 Aug 2011 20:27:12 +0000 (20:27 +0000)]
Fix decoding of VMOVSRR and VMOVRRS, which account for the overwhelming majority of decoder crashes detected by randomized testing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138269
91177308-0d34-0410-b5e6-
96231b3b80d8
Jordy Rose [Mon, 22 Aug 2011 19:01:52 +0000 (19:01 +0000)]
Make DynamicLibrary thread-safe w/r/t call to dlerror() after dlopen(). PR10718
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138260
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Mon, 22 Aug 2011 18:50:36 +0000 (18:50 +0000)]
Tighten up ARM reglist validation a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138258
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 22 Aug 2011 18:44:49 +0000 (18:44 +0000)]
Some whitespace fixes and #include reordering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138256
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 22 Aug 2011 18:42:13 +0000 (18:42 +0000)]
Fix another batch of VLD/VST decoding crashes discovered by randomized testing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138255
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 22 Aug 2011 18:26:12 +0000 (18:26 +0000)]
Be less redundant.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138252
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 22 Aug 2011 18:22:06 +0000 (18:22 +0000)]
Correct writeback handling of duplicating VLD instructions. Discovered by randomized testing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138251
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 22 Aug 2011 18:05:49 +0000 (18:05 +0000)]
Port another swathe of Thumb1 encoding tests over to decoding tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138250
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Mon, 22 Aug 2011 18:04:24 +0000 (18:04 +0000)]
Clean up predicates on ARM target instruction aliases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138249
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Mon, 22 Aug 2011 17:56:58 +0000 (17:56 +0000)]
Fix an incorrect shift when decoding SP-relative stores in Thumb1-mode. Add more tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138246
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Mon, 22 Aug 2011 17:41:44 +0000 (17:41 +0000)]
Thumb assembly parsing and encoding for ORR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138245
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 22 Aug 2011 17:29:37 +0000 (17:29 +0000)]
Add a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138243
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 22 Aug 2011 17:29:11 +0000 (17:29 +0000)]
Constant pointers to objects don't need reference counting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138242
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 22 Aug 2011 17:27:02 +0000 (17:27 +0000)]
Make a few tests slightly more strict.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138241
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 22 Aug 2011 10:32:09 +0000 (10:32 +0000)]
Testcase for PR10663.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138231
91177308-0d34-0410-b5e6-
96231b3b80d8
Jay Foad [Mon, 22 Aug 2011 09:37:03 +0000 (09:37 +0000)]
Remove DEFINE_TRANSPARENT_CASTED_OPERAND_ACCESSORS, folding its
functionality into DEFINE_TRANSPARENT_OPERAND_ACCESSORS. A side-effect
of this is that the operand accessors for Constants will tolerate NULL
operands, fixing PR10663.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138230
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 20 Aug 2011 21:36:38 +0000 (21:36 +0000)]
PathV2: Handle more reserved filenames on windows.
Patch by Aaron Ballman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138213
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Sat, 20 Aug 2011 16:24:13 +0000 (16:24 +0000)]
Fix AsmParser binary precedence for shift operators.
rdar://
9976729
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138208
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Sat, 20 Aug 2011 16:10:09 +0000 (16:10 +0000)]
Tidy up. Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138207
91177308-0d34-0410-b5e6-
96231b3b80d8
Nadav Rotem [Sat, 20 Aug 2011 14:02:29 +0000 (14:02 +0000)]
Add constant folding support for bitcasts of splat vectors to integers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138206
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Sat, 20 Aug 2011 06:35:36 +0000 (06:35 +0000)]
lib/Support/CrashRecoveryContext.cpp: Add Win32 support to CrashRecoveryContext. Thanks to Aaron Ballman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138199
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Sat, 20 Aug 2011 06:35:31 +0000 (06:35 +0000)]
lib/Support/Windows/Windows.h: Require at least Windows XP(5.1) API. We will not support Windows 2000 any more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138198
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Sat, 20 Aug 2011 05:44:58 +0000 (05:44 +0000)]
utils/lit/lit/TestingConfig.py: Pass TEMP and TMP to tests on Win32 hosts.
Win32 GetTempPath() tends to pick up %WINDIR% when neither TEMP nor TMP was found. %WINDIR% should not be treated writable on recent Windows OS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138192
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Sat, 20 Aug 2011 05:44:52 +0000 (05:44 +0000)]
utils/lit/lit/TestingConfig.py: Split out environment vars for Win32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138191
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 20 Aug 2011 02:22:42 +0000 (02:22 +0000)]
Cast through intptr_t, ISO C++ requires it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138186
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 01:04:56 +0000 (01:04 +0000)]
Remove remainder of migrated or obsolete tests from FrontendC and remove
the empty directory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138181
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Sat, 20 Aug 2011 00:52:40 +0000 (00:52 +0000)]
Remove the VMOVQQ pseudo instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138177
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 00:49:30 +0000 (00:49 +0000)]
Remove migrated or obsolete tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138176
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Sat, 20 Aug 2011 00:40:14 +0000 (00:40 +0000)]
Remove VMOVQQQQ pseudo instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138174
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 00:38:20 +0000 (00:38 +0000)]
Remove obsolete or migrated tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138173
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Sat, 20 Aug 2011 00:34:45 +0000 (00:34 +0000)]
With the fix in r138164: "Add <imp-def> operands to QQ and QQQQ stack loads."
-verify-machineinstrs can be enabled for this test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138171
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 00:26:30 +0000 (00:26 +0000)]
Remove obsoleted test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138170
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 00:25:42 +0000 (00:25 +0000)]
Remove tests that were either migrated to clang or are obsolete.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138168
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 00:17:58 +0000 (00:17 +0000)]
Remove the rest of the files in FrontendC++ and the directory itself.
All tests have been updated and migrated into clang or were obsolete.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138165
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Sat, 20 Aug 2011 00:17:45 +0000 (00:17 +0000)]
Add <imp-def> operands to QQ and QQQQ stack loads.
This pleases the register scavenger and brings
test/CodeGen/ARM/2011-08-12-vmovqqqq-pseudo.ll a little closer to
working with -verify-machineinstrs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138164
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Sat, 20 Aug 2011 00:17:25 +0000 (00:17 +0000)]
VMOVQQQQs pseudo instructions are only created by ARMBaseInstrInfo::copyPhysReg.
Therefore, rather then generate a pseudo instruction, which is later expanded,
generate the necessary instructions in place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138163
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 20 Aug 2011 00:08:36 +0000 (00:08 +0000)]
Remove migrated or obsolete tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138156
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 19 Aug 2011 23:46:30 +0000 (23:46 +0000)]
If we're splitting the landing pad block and assigning it only one predecessor,
then don't split it a second time, since that block will be dead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138153
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 23:41:50 +0000 (23:41 +0000)]
Remove migrated or obsolete tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138149
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 19 Aug 2011 23:28:12 +0000 (23:28 +0000)]
Do not use named md nodes to track variables that are completely optimized. This does not scale while doing LTO with debug info. New approach is to include list of variables in the subprogram info directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138145
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 23:24:36 +0000 (23:24 +0000)]
Thumb parsing and encoding support for NOP.
The irony is not lost that this is not a completely trivial patchset.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138143
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 23:18:12 +0000 (23:18 +0000)]
Remove obsolete test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138141
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 23:18:10 +0000 (23:18 +0000)]
Remove migrated test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138140
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 23:10:31 +0000 (23:10 +0000)]
Use regex to remove false dependencies on register allocation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138137
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 23:08:41 +0000 (23:08 +0000)]
Remove obsolete or migrated tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138135
91177308-0d34-0410-b5e6-
96231b3b80d8
Akira Hatanaka [Fri, 19 Aug 2011 22:59:00 +0000 (22:59 +0000)]
Fix bug in function IsShiftedMask. Remove parameter SizeInBits, which is not
needed for Mips32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138132
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 22:51:03 +0000 (22:51 +0000)]
Thumb assembly parsing and encoding for NEG.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138131
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 19 Aug 2011 22:39:31 +0000 (22:39 +0000)]
Roll back the rest of r126557. It's a hack that will break in some obscure cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138130
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 22:30:58 +0000 (22:30 +0000)]
Fix NEG alias
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138125
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 22:30:46 +0000 (22:30 +0000)]
Be more lenient on tied operand matching for MUL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138124
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Fri, 19 Aug 2011 22:27:29 +0000 (22:27 +0000)]
Re-write part of VEX encoding logic, to be more easy to read! Also fix
a bug and add a testcase!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138123
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 22:26:09 +0000 (22:26 +0000)]
Remove tests migrated to clang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138121
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 22:26:06 +0000 (22:26 +0000)]
Remove previously migrated test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138120
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 22:19:48 +0000 (22:19 +0000)]
Update tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138116
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 22:17:09 +0000 (22:17 +0000)]
Remove tests migrated to clang or are unnecessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138115
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 22:09:23 +0000 (22:09 +0000)]
Thumb assembly parsing and encoding for MVN.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138109
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 22:07:46 +0000 (22:07 +0000)]
Thumb assembly parsing and encoding for MUL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138108
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 19 Aug 2011 22:04:19 +0000 (22:04 +0000)]
Add IntervalMap::const_iterator::atBegin().
It returns true when operator--() can be called.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138107
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 19 Aug 2011 21:52:06 +0000 (21:52 +0000)]
The landingpad instruction isn't dead simply because it's value isn't used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138102
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:51:41 +0000 (21:51 +0000)]
Remove this test. The feature and test have already been migrated to clang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138101
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:51:39 +0000 (21:51 +0000)]
Remove tests migrated to clang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138100
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Fri, 19 Aug 2011 21:45:19 +0000 (21:45 +0000)]
Eli points out that this is what report_fatal_error() is for.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138091
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:21:28 +0000 (21:21 +0000)]
Remove 2009-09-04-modify-crash.cpp as clang doesn't support 32-bit kext.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138087
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:21:26 +0000 (21:21 +0000)]
Remove migrated tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138086
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:21:24 +0000 (21:21 +0000)]
Remove migrated test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138085
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:21:21 +0000 (21:21 +0000)]
Remove this test. There are other, duplicates, in the clang test suite.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138084
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:21:20 +0000 (21:21 +0000)]
Add file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138083
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 19 Aug 2011 21:21:14 +0000 (21:21 +0000)]
Move 2010-03-22-empty-baseclass.cpp from a frontend+opt test to just
an opt test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138082
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 20:48:54 +0000 (20:48 +0000)]
Add FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138077
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 20:46:54 +0000 (20:46 +0000)]
Thumb assembly parsing and encoding for MOV.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138076
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 20:33:06 +0000 (20:33 +0000)]
Allow non zero_reg explicit values for OptionalDefOperands in aliases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138073
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 20:30:19 +0000 (20:30 +0000)]
Tidy up. Tab character.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138072
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Fri, 19 Aug 2011 20:14:27 +0000 (20:14 +0000)]
This is not actually unreachable, so don't use llvm_unreachable for it. Since
the intent seems to be to terminate even in Release builds, just use abort()
directly.
If program flow ever reaches a __builtin_unreachable (which llvm_unreachable is
#define'd to on newer GCCs) then the program is undefined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138068
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 19:53:51 +0000 (19:53 +0000)]
Tidy up. Formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138067
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 19:41:46 +0000 (19:41 +0000)]
Tab characters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138066
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 19:34:22 +0000 (19:34 +0000)]
Thumb assembly parsing and encoding for LSR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138065
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 19:30:58 +0000 (19:30 +0000)]
Thumb assembly parsing and encoding for LSL(register).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138064
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 19:29:25 +0000 (19:29 +0000)]
Thumb assembly parsing and encoding for LSL(immediate).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138063
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 19:17:58 +0000 (19:17 +0000)]
Thumb assembly parsing and encoding for LDRSB and LDRSH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138061
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 18:55:51 +0000 (18:55 +0000)]
Thumb assembly parsing and encoding for LDRH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138060
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 18:49:59 +0000 (18:49 +0000)]
Thumb assembly parsing and encoding for LDRB.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138059
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 18:35:06 +0000 (18:35 +0000)]
Thumb assembly parsing and encoding for LDR(register).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138056
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Fri, 19 Aug 2011 18:23:06 +0000 (18:23 +0000)]
Fixed a memory bug in the MCDisassembler where
MCParsedAsmOperand objects were being leaked.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138053
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 18:20:48 +0000 (18:20 +0000)]
Thumb assembly parsing and encoding for LDR(literal).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138052
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 18:13:48 +0000 (18:13 +0000)]
Thumb assembly parsing and encoding for LDR(immediate) form T2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138050
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 17:57:22 +0000 (17:57 +0000)]
Use helper function to check for low registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138048
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 17:55:24 +0000 (17:55 +0000)]
Thumb assembly parsing and encoding for LDR(immediate) form T1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138047
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Fri, 19 Aug 2011 16:57:55 +0000 (16:57 +0000)]
Fixed some punctuation. Sentences can be combined with semi-colons but not
commas.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138043
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 19 Aug 2011 16:52:32 +0000 (16:52 +0000)]
Add explanatory comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138042
91177308-0d34-0410-b5e6-
96231b3b80d8
Kalle Raiskila [Fri, 19 Aug 2011 10:50:24 +0000 (10:50 +0000)]
Have SPU backend use the external TCE scheduler, if the library is loaded as a
module.
Patch by Pekka Jääskeläinen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138037
91177308-0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Fri, 19 Aug 2011 05:28:50 +0000 (05:28 +0000)]
Add TB encoding to VEX versions of SSE fp logical operations to fix disassembler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138034
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 19 Aug 2011 04:30:24 +0000 (04:30 +0000)]
Add test case for r138018.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138033
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Fri, 19 Aug 2011 02:23:56 +0000 (02:23 +0000)]
Fix PR10677. Initial patch and idea by Peter Cooper but I've changed the
implementation!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138029
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 19 Aug 2011 02:05:35 +0000 (02:05 +0000)]
Add llc flags to disable machine DCE and CSE.
This is useful for unit tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138028
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 19 Aug 2011 01:42:18 +0000 (01:42 +0000)]
Make a bunch of symbols private.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138025
91177308-0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 19 Aug 2011 01:36:54 +0000 (01:36 +0000)]
C API functions must be able to see their extern "C" definitions, or it will be impossible to call them from C.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138022
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 19 Aug 2011 00:30:17 +0000 (00:30 +0000)]
Don't treat a partial <def,undef> operand as a read.
Normally, a partial register def is treated as reading the
super-register unless it also defines the full register like this:
%vreg110:sub_32bit<def> = COPY %vreg77:sub_32bit, %vreg110<imp-def>
This patch also uses the <undef> flag on partial defs to recognize
non-reading operands:
%vreg110:sub_32bit<def,undef> = COPY %vreg77:sub_32bit
This fixes a subtle bug in RegisterCoalescer where LIS->shrinkToUses
would treat a coalesced copy as still reading the register, extending
the live range artificially.
My test case only works when I disable DCE so a dead copy is left for
RegisterCoalescer, so I am not including it.
<rdar://problem/
9967101>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138018
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 19 Aug 2011 00:26:36 +0000 (00:26 +0000)]
Track a retain+release nesting level independently of the
known-incremented level, because the two concepts can be used
to prove the saftey of a retain+release removal in different
ways.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138016
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Fri, 19 Aug 2011 00:09:22 +0000 (00:09 +0000)]
Intelligently split the landing pad block.
We have to be careful when splitting the landing pad block, because the
landingpad instruction is required to remain as the first non-PHI of an invoke's
unwind edge. To retain this, we split the block into two blocks, moving the
predecessors within the loop to one block and the remaining predecessors to the
other. The landingpad instruction is cloned into the new blocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138015
91177308-0d34-0410-b5e6-
96231b3b80d8