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
Richard Trieu
01fc001062
Changes to the name lookup have caused a regression in the digraph fix-it hint.
...
For instance:
template <class T> void E() {};
class F {};
void test() {
::E<::F>();
E<::F>();
}
Gives the following error messages:
error: found '<::' after a template name which forms the
digraph '<:' (aka '[') and a ':', did you mean '< ::'?
::E<::F>();
^~~
< ::
error: expected expression
E<::F>();
^
error: expected ']'
note: to match this '['
E<::F>();
This patch adds the digraph fix-it check right before the name lookup,
moves the shared checking code to a new function, and adds new
tests to catch future regressions.
llvm-svn: 140039
2011-09-19 19:01:00 +00:00
Devang Patel
5a54065c4f
Tighten check to match an ivar with corresponding property by using ObjCImplementationDecl.
...
Radar 10139522 - Part 1.
llvm-svn: 140038
2011-09-19 18:54:16 +00:00
Johnny Chen
870f4f4213
The r139982 patch has a bug by using the constant "x86_AVX_STATE64".
...
Patch by Filipe.
llvm-svn: 140037
2011-09-19 18:54:01 +00:00
Matt Beaumont-Gay
dcaacaa190
Fix a QoI bug with overloaded operators inside macros.
...
We were failing to set source locations and ranges in isUnusedResultAWarning
for CXXOperatorCallExprs, leading to an "expression result unused" warning
with absolutely no context if the expression was inside a macro.
llvm-svn: 140036
2011-09-19 18:51:20 +00:00
Jim Grosbach
40700e0992
ARM asm parsing should handle pre-indexed writeback w/o immediate.
...
For example, 'ldrb r9, [sp]!' is odd, but valid.
llvm-svn: 140035
2011-09-19 18:42:21 +00:00
David Greene
39db48d0d4
Better Error Reporting
...
Report missing template arguments more helpfully by supplying the name
of the missing argument in the error message.
llvm-svn: 140034
2011-09-19 18:26:07 +00:00
Jakob Stoklund Olesen
1c4831764c
X86 has asterisk-free inline asm support now.
...
Floating point stack inline asm works.
llvm-svn: 140033
2011-09-19 18:15:46 +00:00
Owen Anderson
ddfcec92d9
Handle STRT (and friends) like LDRT (and friends) for decoding purposes. Port over additional encoding tests to decoding tests.
...
llvm-svn: 140032
2011-09-19 18:07:10 +00:00
Fariborz Jahanian
e20c0a5a66
objc - some refactoring of my last 'self' patch.
...
llvm-svn: 140031
2011-09-19 18:06:07 +00:00
John McCall
28a5b326e1
In apple-kext mode, use external linkage for explicit template instantiations
...
instead of internal linkage.
llvm-svn: 140030
2011-09-19 18:05:26 +00:00
Jim Grosbach
264abdecf0
Thumb2 assembly parsing and encoding for SXTAB/SXTAB16/SXTAH.
...
llvm-svn: 140029
2011-09-19 17:56:37 +00:00
Benjamin Kramer
43a772eda1
Add a MachO-specific "mode" to llvm-objdump, that, if enabled, gathers additional information that are only available on MachO.
...
- It can take FunctionStarts from a binary to find entry points more accurately.
- Symbol offsets in executables are correct now.
llvm-svn: 140028
2011-09-19 17:56:04 +00:00
Benjamin Kramer
1223416411
MCInstrAnalysis: Don't crash on instructions with no operands.
...
llvm-svn: 140027
2011-09-19 17:56:00 +00:00