Andrew Trick [Thu, 17 May 2012 18:35:10 +0000 (18:35 +0000)]
misched: Added 3-level regpressure back-off.
Introduce the basic strategy for register pressure scheduling.
1) Respect target limits at all times.
2) Indentify critical register classes (pressure sets).
Track pressure within the scheduled region.
Avoid increasing scheduled pressure for critical registers.
3) Avoid exceeding the max pressure of the region prior to scheduling.
Added logic for picking between the top and bottom ready Q's based on
regpressure heuristics.
Status: functional but needs to be asjusted to achieve good results.
llvm-svn: 157006
Andrew Trick [Thu, 17 May 2012 18:35:07 +0000 (18:35 +0000)]
comment
llvm-svn: 157005
Andrew Trick [Thu, 17 May 2012 18:35:05 +0000 (18:35 +0000)]
regpressure: Fix getMaxUpwardPressureDelta.
llvm-svn: 157004
Andrew Trick [Thu, 17 May 2012 18:35:03 +0000 (18:35 +0000)]
misched: fix liveness iterators
llvm-svn: 157003
Andrew Trick [Thu, 17 May 2012 18:35:00 +0000 (18:35 +0000)]
whitespace
llvm-svn: 157002
Jakob Stoklund Olesen [Thu, 17 May 2012 18:32:42 +0000 (18:32 +0000)]
Never clear <undef> flags on already joined copies.
RegisterCoalescer set <undef> flags on all operands of copy instructions
that are scheduled to be removed. This is so they won't affect
shrinkToUses() by introducing false register reads.
Make sure those <undef> flags are never cleared, or shrinkToUses() could
cause live intervals to end at instructions about to be deleted.
This would be a lot simpler if RegisterCoalescer could just erase joined
copies immediately instead of keeping all the to-be-deleted instructions
around.
This fixes PR12862. Unfortunately, bugpoint can't create a sane test
case for this. Like many other coalescer problems, this failure depends
of a very fragile series of events.
<rdar://problem/
11474428>
llvm-svn: 157001
Jakob Stoklund Olesen [Thu, 17 May 2012 18:32:40 +0000 (18:32 +0000)]
Fix a verifier bug.
Make sure useless (def-only) intervals also get verified.
llvm-svn: 157000
Argyrios Kyrtzidis [Thu, 17 May 2012 18:16:05 +0000 (18:16 +0000)]
[arcmt] Remove the "it is not safe to remove an unused 'autorelease' message" ARC
migration error.
This is more trouble that it is worth; autoreleasing a value without holding on it
is a valid use-case, we should not "punish" correct code for the minority of
broken/fragile programs that depend on the behavior of -autorelease.
rdar://9914061
llvm-svn: 156999
Bill Wendling [Thu, 17 May 2012 17:59:51 +0000 (17:59 +0000)]
Relax the requirement that the exception object must be an instruction. During
bugpoint-ing, it may turn into something else.
llvm-svn: 156998
Evandro Menezes [Thu, 17 May 2012 16:46:46 +0000 (16:46 +0000)]
[Hexagon] Clean up Hexagon ELF definition.
llvm-svn: 156996
Chris Lattner [Thu, 17 May 2012 15:55:41 +0000 (15:55 +0000)]
enhance the intrinsic info stuff to emit encodings that don't fit in 32-bits into a
separate side table, using the handy SequenceToOffsetTable class. This encodes all
these weird things into another 256 bytes, allowing all intrinsics to be encoded this way.
llvm-svn: 156995
Filipe Cabecinhas [Thu, 17 May 2012 15:48:02 +0000 (15:48 +0000)]
We shouldn't save g_dummy_target_sp. Other code will simply call Destroy() on it.
TestBackticksWithoutATarget.BackticksWithNoTargetTestCase was calling
GetDummyTarget() when executing for x86_64. When performing session
tearDown, it would get destroyed (and everything would be invalid (arch,
etc).
Then the test would run for i386. The dummy target wasn't being
reinitialized and was invalid. lldb complained that 'current process state
is unsuitable for expression parsing'.
llvm-svn: 156994
Chad Rosier [Thu, 17 May 2012 15:45:13 +0000 (15:45 +0000)]
[driver] Reword the warning message for missing value to a joined argument.
llvm-svn: 156993
Dmitry Vyukov [Thu, 17 May 2012 15:00:27 +0000 (15:00 +0000)]
tsan: remove shutdown code
tsan runtime shutdown is problematic for 2 reasons:
1. others crash during shutdown
2. we have to override user exit status (don't know it and can't return from atexit handler)
llvm-svn: 156991
Dmitry Vyukov [Thu, 17 May 2012 14:17:51 +0000 (14:17 +0000)]
tsan: detect accesses to freed memory
http://codereview.appspot.com/6214052
llvm-svn: 156990
Tim Northover [Thu, 17 May 2012 13:12:13 +0000 (13:12 +0000)]
Remove incorrect pattern for ARM SMML instruction.
Patch by Meador Inge.
llvm-svn: 156989
Abramo Bagnara [Thu, 17 May 2012 12:44:05 +0000 (12:44 +0000)]
Added two missing const qualifiers.
llvm-svn: 156988
Benjamin Kramer [Thu, 17 May 2012 12:01:52 +0000 (12:01 +0000)]
CXXThisScopeRAII objects aren't free, don't compute one if it's unused.
llvm-svn: 156987
Manuel Klimek [Thu, 17 May 2012 09:32:05 +0000 (09:32 +0000)]
Fix compile error.
llvm-svn: 156986
Stepan Dyatkovskiy [Thu, 17 May 2012 08:56:30 +0000 (08:56 +0000)]
SelectionDAGBuilder: CaseBlock, CaseRanges and CaseCmp changed representation of Low and High from signed to unsigned. Since unsigned ints usually simpler, faster and allows to reduce some extra signed bit checks needed before <,>,<=,>= comparisons.
llvm-svn: 156985
Kostya Serebryany [Thu, 17 May 2012 08:49:14 +0000 (08:49 +0000)]
[tsan] grammar fixes
llvm-svn: 156984
Kostya Serebryany [Thu, 17 May 2012 08:33:14 +0000 (08:33 +0000)]
[tsan] fix dependency rules in Makefile.old
llvm-svn: 156983
Dmitry Vyukov [Thu, 17 May 2012 08:31:47 +0000 (08:31 +0000)]
tsan: ValgrindSlowdown() should be weak for some time
llvm-svn: 156982
Dmitry Vyukov [Thu, 17 May 2012 08:04:41 +0000 (08:04 +0000)]
tsan: add ValgrindSlowdown() "dynamic annotation"
llvm-svn: 156981
Chris Lattner [Thu, 17 May 2012 05:13:57 +0000 (05:13 +0000)]
Genericize the intrinsics descriptor decoding a bit to make room
for future expansion, no functionality change yet though.
llvm-svn: 156979
Chris Lattner [Thu, 17 May 2012 05:03:24 +0000 (05:03 +0000)]
finish encoding all of the interesting details of intrinsics. Now intrinsics
are only rejected because they can't be encoded into a 32-bit unit, not because
they contain an unencodable feature.
llvm-svn: 156978
Chris Lattner [Thu, 17 May 2012 04:30:58 +0000 (04:30 +0000)]
strengthen the intrinsic descriptor stuff to be able to handle sin, cos and other
intrinsics that use passed-in arguments.
llvm-svn: 156977
Chris Lattner [Thu, 17 May 2012 04:07:48 +0000 (04:07 +0000)]
simplify code generated by tblgen that is not necessary since we dropped
compatibility with LLVM 2.x bitcode files.
llvm-svn: 156976
Francois Pichet [Thu, 17 May 2012 04:00:03 +0000 (04:00 +0000)]
I forgot the #ifdef _MSC_VER guard in my last commit.
llvm-svn: 156975
Greg Clayton [Thu, 17 May 2012 03:58:23 +0000 (03:58 +0000)]
Make sure to subtract one from the PC when doing the symbolication of stack frames when it isn't the zero'th frame.
llvm-svn: 156974
Francois Pichet [Thu, 17 May 2012 03:38:19 +0000 (03:38 +0000)]
Fix the MSVC 2010 build: disable the optimizer for a problematic function.
llvm-svn: 156973
Jason Molenda [Thu, 17 May 2012 01:49:53 +0000 (01:49 +0000)]
Bump to version 148.
llvm-svn: 156971
Matt Beaumont-Gay [Thu, 17 May 2012 00:03:16 +0000 (00:03 +0000)]
Use the argument location instead of the format string location when warning
about argument type mismatch.
This gives a nicer diagnostic in cases like
printf(fmt,
i);
where previously the snippet just pointed at 'fmt' (with a note at the
definition of fmt).
It's a wash for cases like
printf("%f",
i);
where previously we snippeted the offending portion of the format string,
but didn't indicate which argument was at fault.
llvm-svn: 156968
Argyrios Kyrtzidis [Wed, 16 May 2012 23:49:15 +0000 (23:49 +0000)]
[libclang/AST] When declaring a local class, don't neglect to set the end location
of the DeclStmt node, otherwise libclang will not work for anything inside that
class.
rdar://
10837710
llvm-svn: 156966
Chad Rosier [Wed, 16 May 2012 23:45:12 +0000 (23:45 +0000)]
[driver] Remove obsolete support for -A link option. The standard -A option is
used by the preprocessor. Apple's GCC also supported a -A option for linking.
The ld man page has the following:
-A basefile - Obsolete incremental load format. This option is obsolete.
Nick Kledzik confirms this option is no longer needed/supported.
rdar://
11455614
llvm-svn: 156965
Richard Smith [Wed, 16 May 2012 23:40:17 +0000 (23:40 +0000)]
Recover better from a missing 'typename' in a function template definition.
Disambiguate past such a potential problem, and use the absence of 'typename'
to break ties in favor of a parenthesized thingy being an initializer, if
nothing else in the declaration disambiguates it as declaring a function.
llvm-svn: 156963
Filipe Cabecinhas [Wed, 16 May 2012 23:25:54 +0000 (23:25 +0000)]
Warn the user when several commands match the input given.
Added a testcase.
llvm-svn: 156961
Jakob Stoklund Olesen [Wed, 16 May 2012 23:03:04 +0000 (23:03 +0000)]
Use RegUnits to compute overlapping registers.
TableGen already computes register units as the basic unit of
interference. We can use that to compute the set of overlapping
registers.
This means that we can easily compute overlap sets for one register at a
time. There is no benefit to computing all registers at once.
llvm-svn: 156960
David Blaikie [Wed, 16 May 2012 22:28:47 +0000 (22:28 +0000)]
SmallString Visual Studio visualizer by Will Wilson.
llvm-svn: 156959
Akira Hatanaka [Wed, 16 May 2012 22:19:56 +0000 (22:19 +0000)]
This patch adds the register class for MIPS16 as well as the ability for
llc to recognize MIPS16 as a MIPS ASE extension. -mips16 will mean the
mips16 ASE for mips32 by default.
As part of fixing of adding this we discovered some small changes that
need to be made to MipsInstrInfo::storeRegToStackSLot and
MipsInstrInfo::loadRegFromStackSlot. We were using some "==" equality tests
where in fact we should have been using Mips::<regclas>.hasSubClassEQ instead,
per suggestion of Jakob Stoklund Olesen.
Patch by Reed Kotler.
llvm-svn: 156958
NAKAMURA Takumi [Wed, 16 May 2012 22:14:14 +0000 (22:14 +0000)]
clang/test/Tooling: Remark as XFAIL again in 5 tests for msvc hosts.
FIXME: JSON doesn't like path separator '\', on Win32 hosts.
llvm-svn: 156957
Greg Clayton [Wed, 16 May 2012 22:09:01 +0000 (22:09 +0000)]
<rdar://problem/
11439755>
Make sure we can fail to create a compile unit without asserting. We now emit a warning.
llvm-svn: 156956
Eric Christopher [Wed, 16 May 2012 22:08:58 +0000 (22:08 +0000)]
Grammar.
llvm-svn: 156955
Akira Hatanaka [Wed, 16 May 2012 22:06:47 +0000 (22:06 +0000)]
XFAIL this test on MIPS.
Since r156650, clang has stopped emitting byval arguments for MIPS targets.
llvm-svn: 156954
Eric Christopher [Wed, 16 May 2012 22:02:36 +0000 (22:02 +0000)]
Remove unnecessary temporary.
llvm-svn: 156953
Johnny Chen [Wed, 16 May 2012 22:01:10 +0000 (22:01 +0000)]
Fix a typo.
llvm-svn: 156952
Jakob Stoklund Olesen [Wed, 16 May 2012 21:22:35 +0000 (21:22 +0000)]
Set sub-register <undef> flags more accurately.
When widening an existing <def,reads-undef> operand to a super-register,
it may be necessary to clear the <undef> flag because the wider register
is now read-modify-write through the instruction.
Conversely, it may be necessary to add an <undef> flag when the
coalescer turns a full-register def into a sub-register def, but the
larger register wasn't live before the instruction.
This happens in test/CodeGen/ARM/coalesce-subregs.ll, but the test
is too small for the <undef> flags to affect the generated code.
llvm-svn: 156951
Chad Rosier [Wed, 16 May 2012 21:19:55 +0000 (21:19 +0000)]
Rename the driver option to -mno-implicit-float, per Eli's suggestion.
llvm-svn: 156950
Jordy Rose [Wed, 16 May 2012 21:13:36 +0000 (21:13 +0000)]
Add triples for test.
llvm-svn: 156949
Sean Callanan [Wed, 16 May 2012 21:03:38 +0000 (21:03 +0000)]
Enabled C++11 in the expression parser. auto and
various other syntactic sugar work. Lambdas do
not due to some problems relocating code containing
lambdas. Rvalue references work when returned from
expressions, but need more testing.
llvm-svn: 156948
Manuel Klimek [Wed, 16 May 2012 20:55:58 +0000 (20:55 +0000)]
Pulls diagnostics for temp file handling into the common diagnostic kinds.
llvm-svn: 156947
Greg Clayton [Wed, 16 May 2012 20:49:54 +0000 (20:49 +0000)]
Disassemble the signal number and also the mach exceptions when dumping stop reply packets.
llvm-svn: 156946
Greg Clayton [Wed, 16 May 2012 20:49:19 +0000 (20:49 +0000)]
Fixed an exception when parsing crash logs.
llvm-svn: 156945
Sean Callanan [Wed, 16 May 2012 20:48:19 +0000 (20:48 +0000)]
Updated LLVM to fix a problem where the Thumb
disassembler improperly sign-extended the target
for BL instructions in certain cases.
llvm-svn: 156944
Johnny Chen [Wed, 16 May 2012 20:41:28 +0000 (20:41 +0000)]
Update the comments for lldbtest module. The test driver is the only way to run the test suite.
llvm-svn: 156943
Chad Rosier [Wed, 16 May 2012 20:40:09 +0000 (20:40 +0000)]
[driver] Allow the driver to directly accept the -no-implicit-float option, so that the
generation of implicit floating point instructions can be disable for ARM.
rdar://
11409142
llvm-svn: 156942
Jordy Rose [Wed, 16 May 2012 20:29:44 +0000 (20:29 +0000)]
[analyzer] Fix test for PR12206, which was failing on i386.
llvm-svn: 156941
Douglas Gregor [Wed, 16 May 2012 20:04:05 +0000 (20:04 +0000)]
Add _alignof and __builtin_alignof as aliases for __alignof in
Microsoft mode, from Will Wilson!
llvm-svn: 156940
Johnny Chen [Wed, 16 May 2012 19:43:14 +0000 (19:43 +0000)]
Make the script more friendly when running under python debugger.
llvm-svn: 156939
Chad Rosier [Wed, 16 May 2012 19:42:03 +0000 (19:42 +0000)]
Tweek r156937 a bit so that the suggestions are correct.
llvm-svn: 156938
Chad Rosier [Wed, 16 May 2012 19:28:02 +0000 (19:28 +0000)]
Warn about -Wno-foo where foo is an unknown warning option. This is helpful
for subtle misspellings such as -Wno-unused-command-line-arguments instead of
-Wno-unused-command-line-argument.
Also fix the diagnostic messages to properly handle -Wno- options. Previously,
the positive version was always emitted (i.e., -Wfoo was emitted for -Wno-foo).
rdar://
11461500
llvm-svn: 156937
Argyrios Kyrtzidis [Wed, 16 May 2012 19:22:47 +0000 (19:22 +0000)]
[libclang] Properly handle @encode() in RecursiveASTVisitor and traverse
its type source info. Fixes indexing references inside @encode().
llvm-svn: 156936
Simon Atanasyan [Wed, 16 May 2012 19:07:55 +0000 (19:07 +0000)]
Disable JITTest.FunctionIsRecompiledAndRelinked and JITTest.NoStubs
on MIPS where they are not implemented.
llvm-svn: 156935
Richard Trieu [Wed, 16 May 2012 19:04:59 +0000 (19:04 +0000)]
Move the warnings for extra semi-colons under -Wextra-semi. Also, added
a warning for an extra semi-colon after function definitions. Added logic
so that a block of semi-colons on a line will only get one warning instead
of a warning for each semi-colon.
llvm-svn: 156934
Danil Malyshev [Wed, 16 May 2012 18:50:11 +0000 (18:50 +0000)]
Added LLIMCJITMemoryManager to the lli. This manager will be used for MCJIT instead of DefaultJIMMemoryManager.
It's more flexible for MCJIT tasks, in addition it's provides a invalidation instruction cache for code sections which will be used before JIT code will be executed.
llvm-svn: 156933
Anna Zaks [Wed, 16 May 2012 18:46:25 +0000 (18:46 +0000)]
[analyzer] Revert a regression committed in r156920.
This breaks the build with -triple i386-apple-darwin9.
llvm-svn: 156932
Johnny Chen [Wed, 16 May 2012 18:32:05 +0000 (18:32 +0000)]
The redo.py script can take no argument where it uses heuristics to find the latest session directory.
llvm-svn: 156931
NAKAMURA Takumi [Wed, 16 May 2012 17:38:04 +0000 (17:38 +0000)]
clang/test/Tooling: Remove XFAIL in 5 tests to unveil the real failure.
FYI, they can pass on Cygwin w/o any tweaks.
llvm-svn: 156930
NAKAMURA Takumi [Wed, 16 May 2012 17:37:56 +0000 (17:37 +0000)]
clang/test/Tooling/clang-check-pwd.cpp: Add "REQUIRES: shell".
This passes on MSYS bash and Cygwin.
llvm-svn: 156929
Jim Ingham [Wed, 16 May 2012 17:16:59 +0000 (17:16 +0000)]
Don't do a stat compare of the module with its underlying file if we already matched the UUID.
llvm-svn: 156928
Jim Ingham [Wed, 16 May 2012 17:15:08 +0000 (17:15 +0000)]
Add GetID to the .i file.
llvm-svn: 156927
Douglas Gregor [Wed, 16 May 2012 17:01:33 +0000 (17:01 +0000)]
Clean up r156925, so that we only mark the capturing DeclRefExpr of a
lambda as referring to a local in an enclosing scope if we're in the
enclosing scope of the lambda (not it's function call operator). Also,
turn the test into an IR generation test, since that's where the
crashes occurred. Really fixes PR12746 / <rdar://problem/
11465120>.
llvm-svn: 156926
Douglas Gregor [Wed, 16 May 2012 16:50:20 +0000 (16:50 +0000)]
Fix code generation of variables reference expressions when mixing
blocks and lambdas, based heavily on a patch from Meador Inge. Fixes
PR12746 / <rdar://problem/
11465120>.
llvm-svn: 156925
Dmitry Vyukov [Wed, 16 May 2012 16:40:47 +0000 (16:40 +0000)]
tsan: improve addr2line symbolizer
-provide support for non-continous modules
-ignore not loaded sections
-more debug output
llvm-svn: 156924
Douglas Gregor [Wed, 16 May 2012 16:31:58 +0000 (16:31 +0000)]
Fix ASTReader handling of ImportDecls, from Meador Inge!
llvm-svn: 156923
Douglas Gregor [Wed, 16 May 2012 16:11:17 +0000 (16:11 +0000)]
Use a llvm::SmallString rather than std::string for duplicate-case errors
llvm-svn: 156922
Jordy Rose [Wed, 16 May 2012 16:01:14 +0000 (16:01 +0000)]
[analyzer] Fix RUN lines for old XFAIL tests, one of which actually works.
llvm-svn: 156921
Jordy Rose [Wed, 16 May 2012 16:01:10 +0000 (16:01 +0000)]
[analyzer] Convert many existing tests to use clang_analyzer_eval.
llvm-svn: 156920
Jordy Rose [Wed, 16 May 2012 16:01:07 +0000 (16:01 +0000)]
[analyzer] Introduce clang_analyzer_eval for regression test constraint checks.
The new debug.ExprInspection checker looks for calls to clang_analyzer_eval,
and emits a warning of TRUE, FALSE, or UNKNOWN (or UNDEFINED) based on the
constrained value of its (boolean) argument. It does not modify the analysis
state though the conditions tested can result in branches (e.g. through the
use of short-circuit operators).
llvm-svn: 156919
Filipe Cabecinhas [Wed, 16 May 2012 15:07:07 +0000 (15:07 +0000)]
Cleanup after functionalities/alias/TestAliases.py
This test is run after TestAbbreviations and was making runCmd("h") fail
in that test, on the second tested architecture (two commands would be
avilable for "h": "help" and "hello").
Later I'm sending a patch for review to add some information to the error
message for that case.
llvm-svn: 156918
Benjamin Kramer [Wed, 16 May 2012 15:03:55 +0000 (15:03 +0000)]
Hexagon: Remove unused command line option.
llvm-svn: 156917
Benjamin Kramer [Wed, 16 May 2012 12:44:25 +0000 (12:44 +0000)]
StringSwitchify. No functionality change.
llvm-svn: 156916
Duncan Sands [Wed, 16 May 2012 12:25:43 +0000 (12:25 +0000)]
I noticed that named metadata doesn't provide a direct way of getting at the
named metadata list, unlike all the other global objects (global variables,
functions, aliases), so add that for consistency.
llvm-svn: 156915
Benjamin Kramer [Wed, 16 May 2012 12:19:08 +0000 (12:19 +0000)]
Factor sema for attributes unavailable and deprecated into a common function.
No functionality change.
llvm-svn: 156914
Chandler Carruth [Wed, 16 May 2012 08:32:49 +0000 (08:32 +0000)]
Teach the 'opt' tool about '-Os' and '-Oz', corresponding to the Clang
options, to enable easier testing of the innards of LLVM that are
enabled by such optimization strategies.
Note that this doesn't provide the (much needed) function attribute
support for -Oz (as opposed to -Os), but still seems like a positive
step to better test the logic that Clang currently relies on.
Patch by Patrik Hägglund.
llvm-svn: 156913
Kostya Serebryany [Wed, 16 May 2012 08:19:13 +0000 (08:19 +0000)]
[tsan] fix typo
llvm-svn: 156912
Chandler Carruth [Wed, 16 May 2012 08:18:58 +0000 (08:18 +0000)]
Clarify how libstdc++ and other bits of the system toolchain are found
on Linux in the getting started documentation.
Patch by Nathan Ridge.
llvm-svn: 156911
Kostya Serebryany [Wed, 16 May 2012 08:14:36 +0000 (08:14 +0000)]
[tsan] first version of ThreadSanitizer docs
llvm-svn: 156910
Duncan Sands [Wed, 16 May 2012 07:57:18 +0000 (07:57 +0000)]
Fix a thinko in DisintegrateMERGE_VALUES. Patch by Xiaoyi Guo.
llvm-svn: 156909
Kostya Serebryany [Wed, 16 May 2012 07:48:16 +0000 (07:48 +0000)]
[tsan] add tiny_test.c
llvm-svn: 156908
Kostya Serebryany [Wed, 16 May 2012 07:46:55 +0000 (07:46 +0000)]
[tsan] fix old-style makefile -- we still need them to run our tests
llvm-svn: 156907
Kostya Serebryany [Wed, 16 May 2012 06:36:00 +0000 (06:36 +0000)]
[tsan] add ThreadSanitizer linker flags on Linux and also copy the tsan-rt into the appropriate place at build time
llvm-svn: 156906
Chris Lattner [Wed, 16 May 2012 06:34:44 +0000 (06:34 +0000)]
Significantly reduce the compiled size of Functions.cpp by turning a big blob of tblgen
generated code (for Intrinsic::getType) into a table. This handles common cases right now,
but I plan to extend it to handle all cases and merge in type verification logic as well
in follow-on patches.
llvm-svn: 156905
Douglas Gregor [Wed, 16 May 2012 05:32:58 +0000 (05:32 +0000)]
Produce more useful 'duplicate case' diagnostics. Fixes PR9243, from Terry Long!
llvm-svn: 156904
Chris Lattner [Wed, 16 May 2012 04:51:09 +0000 (04:51 +0000)]
have tblgen emit cast<> instead of dyn_cast<> when we know it must succeed.
llvm-svn: 156902
David Blaikie [Wed, 16 May 2012 04:20:04 +0000 (04:20 +0000)]
Include the correct conversion context locations for condition expressions.
This improves the conversion diagnostics (by correctly pointing to the loop
construct for conversions that may've been caused by the contextual conversion
to bool caused by a condition expression) and also causes the NULL conversion
warnings to be correctly suppressed when crossing a macro boundary in such a
context. (previously, since the conversion context location was incorrect, the
suppression could not be performed)
Reported by Nico Weber as feedback to r156826.
llvm-svn: 156901
Greg Clayton [Wed, 16 May 2012 02:48:06 +0000 (02:48 +0000)]
Make sure that our thread list can't get out of date like was happening before Jims fix in revision 156894.
llvm-svn: 156898
Rafael Espindola [Wed, 16 May 2012 02:10:38 +0000 (02:10 +0000)]
Fix the visibility of instantiations of static data members.
Fixes pr12835.
llvm-svn: 156897
Evan Cheng [Wed, 16 May 2012 01:54:27 +0000 (01:54 +0000)]
Avoid creating a cycle when folding load / op with flag / store. PR11451474. rdar://
11451474
llvm-svn: 156896
Jim Ingham [Wed, 16 May 2012 01:32:14 +0000 (01:32 +0000)]
Always call RefreshStateAfterStop when we get a stop event. We were skipping doing it in the case where we had interrupted the target. Presumably at some point in the past RefreshStateAfterStop was done more directly when we handled the interrupt, but it isn't any more so now we need to do it all the time.
llvm-svn: 156894