Commit Graph

113120 Commits

Author SHA1 Message Date
Jim Grosbach 4da03f007f Thumb CPS definition is not disassembler only.
llvm-svn: 140106
2011-09-20 00:00:06 +00:00
Jim Grosbach d9846bbce2 Thumb2 range check on CPS mode immediate.
llvm-svn: 140105
2011-09-19 23:58:31 +00:00
Owen Anderson 163be01d69 tMOVSr is not allowed in an IT block either.
llvm-svn: 140104
2011-09-19 23:57:20 +00:00
Bill Wendling 708d38e06a Update to the new EH syntax.
llvm-svn: 140103
2011-09-19 23:50:34 +00:00
Owen Anderson 61e4604dd8 CPS instructions are UNPREDICTABLE inside IT blocks.
llvm-svn: 140102
2011-09-19 23:47:10 +00:00
Bill Wendling ff5d9cc389 Dramatically reduce this testcase.
llvm-svn: 140101
2011-09-19 23:47:06 +00:00
Anna Zaks 6e76384c82 [analyzer] BugReport has a profile method, so reuse it here.
llvm-svn: 140100
2011-09-19 23:44:31 +00:00
Jim Grosbach fbb4481097 Tidy up comments.
llvm-svn: 140099
2011-09-19 23:38:34 +00:00
Bruno Cardoso Lopes c4398d2c7b Fix PR10949. Fix the encoding of VMOVPQIto64rr.
llvm-svn: 140098
2011-09-19 23:36:59 +00:00
Bruno Cardoso Lopes 51792dcc4d Based on the small opt Zvi's patch was trying to achieve, eliminate
128-bit undef subvector insertion into a 256-bit vector

llvm-svn: 140097
2011-09-19 23:36:50 +00:00
Jim Grosbach 788a8cd4e6 Tidy up a bit.
llvm-svn: 140096
2011-09-19 23:34:18 +00:00
Jim Grosbach fc5451832a Thumb2 assembly parsing and encoding for UMAAL/UMLAL/UMULL.
llvm-svn: 140095
2011-09-19 23:31:02 +00:00
Bill Wendling 7cdaa3a1a8 Revert r140083 and r140084 until buildbots can be fixed.
llvm-svn: 140094
2011-09-19 23:30:41 +00:00
Eric Christopher 4b0ae48614 Remove llvmc and assorted build machinery for it.
The problems that llvmc solved have largely been subsumed with the
tasks that the clang driver can accomplish, but llvmc lacks flexibility
and depends too heavily on the EOL'd llvm-gcc.

llvm-svn: 140093
2011-09-19 23:22:41 +00:00
Anna Zaks f1e2c40b1b [analyzer] Add a convinience method.
llvm-svn: 140092
2011-09-19 23:18:44 +00:00
Anna Zaks c2b3c1f14b [analyzer] Constify a method.
llvm-svn: 140091
2011-09-19 23:17:48 +00:00
Eli Friedman 6b9c41ea68 Add list initialization for complex numbers in C. Essentially, this allows "_Complex float x = {1.0f, 2.0f};". See changes to docs/LanguageExtensions.html for a longer description.
<rdar://problem/9397672>.

llvm-svn: 140090
2011-09-19 23:17:44 +00:00
Jim Grosbach 1ab5e56324 Thumb2 assembly parsing and encoding for UHSUB16/UHSUB8.
llvm-svn: 140089
2011-09-19 23:15:36 +00:00
Jim Grosbach 15d97fd89b Thumb2 assembly parsing and encoding for UHASX/UHSAX.
llvm-svn: 140088
2011-09-19 23:13:25 +00:00
Jim Grosbach 3a64050470 Thumb2 assembly parsing and encoding for UHADD16/UHADD8.
llvm-svn: 140087
2011-09-19 23:08:24 +00:00
Jim Grosbach dd00b9f452 Thumb2 assembly parsing and encoding for UBFX.
llvm-svn: 140086
2011-09-19 23:06:38 +00:00
Jim Grosbach a6e6504e2a Thumb2 assembly parsing and encoding for UASX.
llvm-svn: 140085
2011-09-19 23:05:22 +00:00
Bill Wendling d01aee587f Update test to remove the 'unwind' instruction.
llvm-svn: 140084
2011-09-19 23:01:11 +00:00
Bill Wendling d3c9d971e6 If we are extracting a basic block that ends in an invoke call, we must also
extract the landing pad block. Otherwise, there will be a situation where the
invoke's unwind edge lands on a non-landing pad.

We also forbid the user from extracting the landing pad block by itself. Again,
this is not a valid transformation.

llvm-svn: 140083
2011-09-19 23:00:52 +00:00
Jim Grosbach f5028fd141 Fix copy/past-o. Gotta remember that 'modify' step...
llvm-svn: 140082
2011-09-19 22:53:00 +00:00
Jim Grosbach c704263440 Thumb2 assembly parsing and encoding for UADD16/UADD8.
llvm-svn: 140081
2011-09-19 22:52:27 +00:00
Jim Grosbach c74e2c3b07 Thumb2 assembly parsing and encoding for TST.
llvm-svn: 140080
2011-09-19 22:46:06 +00:00
Owen Anderson f902d92fc9 Thumb2 TBB and TBH instructions are only allowed at the end of IT blocks, not in the middle.
llvm-svn: 140079
2011-09-19 22:34:23 +00:00
Jim Grosbach 05541f45f3 Thumb2 assembly parsing and encoding for TBB/TBH.
llvm-svn: 140078
2011-09-19 22:21:13 +00:00
Bill Wendling 8bf0eab34d Replace uses of unwind with unreachable for the same effect.
llvm-svn: 140077
2011-09-19 22:16:15 +00:00
Bill Wendling e7b02b8170 Replace more uses of 'unwind' in the tests with calls to landingpad and
resume. Note that some of these tests were basically dead.

llvm-svn: 140076
2011-09-19 22:11:35 +00:00
Bill Wendling 58e58fead1 The eh.selector intrinsic isn't used anymore. Replace the check here with a
check for the landingpad instruction instead. This check looks at each of the
clauses in the landingpad instruction. If it's a catch clause, it compares the
name directly with the global. If it's a filter clause, it has to look through
each value in the filer to see if any have the prefix.

llvm-svn: 140075
2011-09-19 22:08:36 +00:00
Eli Friedman eb1bd24134 Some additional tests for Thumb atomic load and store (which I somehow forgot to commit earlier).
llvm-svn: 140074
2011-09-19 22:02:33 +00:00
Argyrios Kyrtzidis a35c4441b3 Fix gcc build.
llvm-svn: 140073
2011-09-19 22:02:08 +00:00
Eli Friedman 61d7c8a065 Fix an infinite loop where a transform in InstCombiner::visitAnd claims a construct is changed when it is not. (See included testcase.)
Patch by Xiaoyi Guo.

llvm-svn: 140072
2011-09-19 21:58:15 +00:00
Johnny Chen ac559323aa Add GetByIndex() methods to the WatchpointLocationList class to facilitate iteration
through the watchpoint locations by index.

llvm-svn: 140071
2011-09-19 21:53:51 +00:00
Jim Grosbach 52faf4bff9 Thumb2 assembly parsing and encoding for TEQ.
llvm-svn: 140070
2011-09-19 21:41:21 +00:00
Bruno Cardoso Lopes d4a3d452d4 Match X86ISD::FSETCCsd and X86ISD::FSETCCss while in AVX mode. This fix
PR10955 and PR10948.

llvm-svn: 140069
2011-09-19 21:29:24 +00:00
Peter Collingbourne 2dbb708b8a OpenCL: introduce support for function scope __local variables
llvm-svn: 140068
2011-09-19 21:14:35 +00:00
Bill Wendling c945f54ea5 This testcase is dead. It doesn't inline even if I add the 'alwaysinline'
attribute to the @foo function.

llvm-svn: 140067
2011-09-19 21:14:33 +00:00
Argyrios Kyrtzidis 1bf0ee0d5f [PCH] The range map for SLoc offsets is a reversed one, not negated.
llvm-svn: 140066
2011-09-19 20:54:44 +00:00
Eric Christopher 66ad57b04e Regenerate configure.
llvm-svn: 140065
2011-09-19 20:46:12 +00:00
Eric Christopher 4418a60272 Rename LLVM_MULTITHREADED define and fix build without threads.
Patch by Arrowdodger.

llvm-svn: 140064
2011-09-19 20:43:23 +00:00
Argyrios Kyrtzidis 5733271925 In libclang, when visiting preprocessed entities in a source range, use
PreprocessingRecord's getPreprocessedEntitiesInRange.

Also remove all the stuff that were added in ASTUnit that are unnecessary now
that we do a binary search for preprocessed entities and deserialize only
what is necessary.

llvm-svn: 140063
2011-09-19 20:40:48 +00:00
Argyrios Kyrtzidis 7f44836998 Introduce local_begin()/local_end() methods in PreprocessingRecord which
return iterators for local, non-loaded, preprocessed entities.

llvm-svn: 140062
2011-09-19 20:40:42 +00:00
Argyrios Kyrtzidis 27bf76d6d2 In CodeGenAction::ExecuteAction() use SourceManager::translateFileLineCol()
instead of getLocation() since we don't care about expanded macro arguments.

llvm-svn: 140061
2011-09-19 20:40:38 +00:00
Argyrios Kyrtzidis 7c06d8666b [libclang] When getting a source location from a file:line:col triplet
check whether the requested location points inside the precompiled preamble,
in which case the returned source location will be a "loaded" one.

llvm-svn: 140060
2011-09-19 20:40:35 +00:00
Argyrios Kyrtzidis 532c5196b0 Break SourceManager::translateFileLineCol into translateLineCol that returns the
source location of line:col of a specific FileID.

llvm-svn: 140059
2011-09-19 20:40:29 +00:00
Argyrios Kyrtzidis 64f6381097 Introduce PreprocessingRecord::getPreprocessedEntitiesInRange()
which will do a binary search and return a pair of iterators
for preprocessed entities in the given source range.

Source ranges of preprocessed entities are stored twice currently in
the PCH/Module file but this will be fixed in a subsequent commit.

llvm-svn: 140058
2011-09-19 20:40:25 +00:00
Argyrios Kyrtzidis e6e67deeed Rename SourceLocation::getFileLocWithOffset -> getLocWithOffset.
It already works (and is useful with) macro locs as well.

llvm-svn: 140057
2011-09-19 20:40:19 +00:00