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
Argyrios Kyrtzidis
c284238aa2
Make ASTReader/ASTWriter friends of SourceLocation. They already
...
depend on internal knowledge of SourceLocation.
llvm-svn: 140056
2011-09-19 20:40:08 +00:00
Argyrios Kyrtzidis
9671ea9387
Introduce isLoadedSourceLocation() and isLocalSourceLocation() methods in SourceManager.
...
llvm-svn: 140055
2011-09-19 20:40:05 +00:00
Argyrios Kyrtzidis
d67164e3cd
Const-ify some methods in ASTReader.
...
llvm-svn: 140054
2011-09-19 20:40:02 +00:00
Argyrios Kyrtzidis
b4199b659b
For SourceManager::isBeforeInTranslationUnit, a location pointing
...
inside a macro argument should be regarded as coming before
the location of the expanded tokens.
llvm-svn: 140053
2011-09-19 20:39:57 +00:00
Argyrios Kyrtzidis
b527a7cbf8
[PCH] Preload the PreloadSLocEntries through the SourceManager and
...
don't call ReadSLocEntryRecord() directly because the entry may have
already been loaded in which case calling ReadSLocEntryRecord()
directly would trigger an assertion in SourceManager.
llvm-svn: 140052
2011-09-19 20:39:54 +00:00
Argyrios Kyrtzidis
8b7c08b897
For SourceManager::isBeforeInTranslationUnit, when one location
...
points at the inclusion/expansion point of the other, regard this
as coming before the other.
llvm-svn: 140051
2011-09-19 20:39:51 +00:00
Jim Grosbach
1a23fbb9fd
Tidy up a bit.
...
llvm-svn: 140050
2011-09-19 20:31:59 +00:00
Bill Wendling
f0724e8e06
Throw the switch to convert clang to the new exception handling model!
...
This model uses the 'landingpad' instruction, which is pinned to the top of the
landing pad. (A landing pad is defined as the destination of the unwind branch
of an invoke instruction.) All of the information needed to generate the correct
exception handling metadata during code generation is encoded into the
landingpad instruction.
The new 'resume' instruction takes the place of the llvm.eh.resume intrinsic
call. It's lowered in much the same way as the intrinsic is.
llvm-svn: 140049
2011-09-19 20:31:14 +00:00
Jim Grosbach
ee9ff79319
Remove FIXME. TBB/TBH are Thumb mode only instructions.
...
llvm-svn: 140048
2011-09-19 20:30:29 +00:00
Jim Grosbach
8221319707
Thumb2 assembly parsing and encoding for SXTB/SXTB16/SXTH.
...
llvm-svn: 140047
2011-09-19 20:29:33 +00:00
Akira Hatanaka
79738336a8
Make changes to avoid creating nested CALLSEQ_START/END constructs, which aren't
...
yet legal according to comments in LegalizeDAG.cpp:227.
Memcpy nodes created for copying byval arguments are inserted before
CALLSEQ_START.
The two failing tests reported in PR10876 pass after applying this patch.
llvm-svn: 140046
2011-09-19 20:26:02 +00:00
Benjamin Kramer
444f079d34
Nope, there's another one!
...
llvm-svn: 140045
2011-09-19 20:23:01 +00:00
Benjamin Kramer
babc5291f4
Missed one instance of implicit pointer conversion.
...
llvm-svn: 140044
2011-09-19 20:14:46 +00:00
Benjamin Kramer
c20a3ebba0
Silence -Wsign-compare warnings from GCC.
...
llvm-svn: 140043
2011-09-19 20:08:54 +00:00
Benjamin Kramer
78ee973788
Try to make MSVC 2010 happy.
...
llvm-svn: 140042
2011-09-19 20:08:52 +00:00
Owen Anderson
8c021d85a6
Specify an additional fixed bit in the Thumb2 SSAT encoding to prevent the decoder from emitting gibberish for this invalid encoding.
...
llvm-svn: 140041
2011-09-19 20:00:02 +00:00
Eli Friedman
222b5a4f5a
Fix a typo in the bitcode reader in the handling of atomic stores. Reported by David Meyer on llvmdev.
...
llvm-svn: 140040
2011-09-19 19:41:28 +00:00