platform/upstream/llvm.git
12 years agoRemove incorrect pattern for ARM SMML instruction.
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

12 years agoAdded two missing const qualifiers.
Abramo Bagnara [Thu, 17 May 2012 12:44:05 +0000 (12:44 +0000)]
Added two missing const qualifiers.

llvm-svn: 156988

12 years agoCXXThisScopeRAII objects aren't free, don't compute one if it's unused.
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

12 years agoFix compile error.
Manuel Klimek [Thu, 17 May 2012 09:32:05 +0000 (09:32 +0000)]
Fix compile error.

llvm-svn: 156986

12 years agoSelectionDAGBuilder: CaseBlock, CaseRanges and CaseCmp changed representation of...
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

12 years ago[tsan] grammar fixes
Kostya Serebryany [Thu, 17 May 2012 08:49:14 +0000 (08:49 +0000)]
[tsan] grammar fixes

llvm-svn: 156984

12 years ago[tsan] fix dependency rules in Makefile.old
Kostya Serebryany [Thu, 17 May 2012 08:33:14 +0000 (08:33 +0000)]
[tsan] fix dependency rules in Makefile.old

llvm-svn: 156983

12 years agotsan: ValgrindSlowdown() should be weak for some time
Dmitry Vyukov [Thu, 17 May 2012 08:31:47 +0000 (08:31 +0000)]
tsan: ValgrindSlowdown() should be weak for some time

llvm-svn: 156982

12 years agotsan: add ValgrindSlowdown() "dynamic annotation"
Dmitry Vyukov [Thu, 17 May 2012 08:04:41 +0000 (08:04 +0000)]
tsan: add ValgrindSlowdown() "dynamic annotation"

llvm-svn: 156981

12 years agoGenericize the intrinsics descriptor decoding a bit to make room
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

12 years agofinish encoding all of the interesting details of intrinsics. Now intrinsics
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

12 years agostrengthen the intrinsic descriptor stuff to be able to handle sin, cos and other
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

12 years agosimplify code generated by tblgen that is not necessary since we dropped
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

12 years agoI forgot the #ifdef _MSC_VER guard in my last commit.
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

12 years agoMake sure to subtract one from the PC when doing the symbolication of stack frames...
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

12 years agoFix the MSVC 2010 build: disable the optimizer for a problematic function.
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

12 years agoBump to version 148.
Jason Molenda [Thu, 17 May 2012 01:49:53 +0000 (01:49 +0000)]
Bump to version 148.

llvm-svn: 156971

12 years agoUse the argument location instead of the format string location when warning
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

12 years ago[libclang/AST] When declaring a local class, don't neglect to set the end location
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

12 years ago[driver] Remove obsolete support for -A link option. The standard -A option is
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

12 years agoRecover better from a missing 'typename' in a function template definition.
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

12 years agoWarn the user when several commands match the input given.
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

12 years agoUse RegUnits to compute overlapping registers.
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

12 years agoSmallString Visual Studio visualizer by Will Wilson.
David Blaikie [Wed, 16 May 2012 22:28:47 +0000 (22:28 +0000)]
SmallString Visual Studio visualizer by Will Wilson.

llvm-svn: 156959

12 years agoThis patch adds the register class for MIPS16 as well as the ability for
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

12 years agoclang/test/Tooling: Remark as XFAIL again in 5 tests for msvc hosts.
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

12 years ago<rdar://problem/11439755>
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

12 years agoGrammar.
Eric Christopher [Wed, 16 May 2012 22:08:58 +0000 (22:08 +0000)]
Grammar.

llvm-svn: 156955

12 years agoXFAIL this test on MIPS.
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

12 years agoRemove unnecessary temporary.
Eric Christopher [Wed, 16 May 2012 22:02:36 +0000 (22:02 +0000)]
Remove unnecessary temporary.

llvm-svn: 156953

12 years agoFix a typo.
Johnny Chen [Wed, 16 May 2012 22:01:10 +0000 (22:01 +0000)]
Fix a typo.

llvm-svn: 156952

12 years agoSet sub-register <undef> flags more accurately.
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

12 years agoRename the driver option to -mno-implicit-float, per Eli's suggestion.
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

12 years agoAdd triples for test.
Jordy Rose [Wed, 16 May 2012 21:13:36 +0000 (21:13 +0000)]
Add triples for test.

llvm-svn: 156949

12 years agoEnabled C++11 in the expression parser. auto and
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

12 years agoPulls diagnostics for temp file handling into the common diagnostic kinds.
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

12 years agoDisassemble the signal number and also the mach exceptions when dumping stop reply...
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

12 years agoFixed an exception when parsing crash logs.
Greg Clayton [Wed, 16 May 2012 20:49:19 +0000 (20:49 +0000)]
Fixed an exception when parsing crash logs.

llvm-svn: 156945

12 years agoUpdated LLVM to fix a problem where the Thumb
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

12 years agoUpdate the comments for lldbtest module. The test driver is the only way to run...
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

12 years ago[driver] Allow the driver to directly accept the -no-implicit-float option, so that the
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

12 years ago[analyzer] Fix test for PR12206, which was failing on i386.
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

12 years agoAdd _alignof and __builtin_alignof as aliases for __alignof in
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

12 years agoMake the script more friendly when running under python debugger.
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

12 years agoTweek r156937 a bit so that the suggestions are correct.
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

12 years agoWarn about -Wno-foo where foo is an unknown warning option. This is helpful
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

12 years ago[libclang] Properly handle @encode() in RecursiveASTVisitor and traverse
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

12 years agoDisable JITTest.FunctionIsRecompiledAndRelinked and JITTest.NoStubs
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

12 years agoMove the warnings for extra semi-colons under -Wextra-semi. Also, added
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

12 years agoAdded LLIMCJITMemoryManager to the lli. This manager will be used for MCJIT instead...
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

12 years ago[analyzer] Revert a regression committed in r156920.
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

12 years agoThe redo.py script can take no argument where it uses heuristics to find the latest...
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

12 years agoclang/test/Tooling: Remove XFAIL in 5 tests to unveil the real failure.
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

12 years agoclang/test/Tooling/clang-check-pwd.cpp: Add "REQUIRES: shell".
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

12 years agoDon't do a stat compare of the module with its underlying file if we already matched...
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

12 years agoAdd GetID to the .i file.
Jim Ingham [Wed, 16 May 2012 17:15:08 +0000 (17:15 +0000)]
Add GetID to the .i file.

llvm-svn: 156927

12 years agoClean up r156925, so that we only mark the capturing DeclRefExpr of a
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

12 years agoFix code generation of variables reference expressions when mixing
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

12 years agotsan: improve addr2line symbolizer
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

12 years agoFix ASTReader handling of ImportDecls, from Meador Inge!
Douglas Gregor [Wed, 16 May 2012 16:31:58 +0000 (16:31 +0000)]
Fix ASTReader handling of ImportDecls, from Meador Inge!

llvm-svn: 156923

12 years agoUse a llvm::SmallString rather than std::string for duplicate-case errors
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

12 years ago[analyzer] Fix RUN lines for old XFAIL tests, one of which actually works.
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

12 years ago[analyzer] Convert many existing tests to use clang_analyzer_eval.
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

12 years ago[analyzer] Introduce clang_analyzer_eval for regression test constraint checks.
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

12 years agoCleanup after functionalities/alias/TestAliases.py
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

12 years agoHexagon: Remove unused command line option.
Benjamin Kramer [Wed, 16 May 2012 15:03:55 +0000 (15:03 +0000)]
Hexagon: Remove unused command line option.

llvm-svn: 156917

12 years agoStringSwitchify. No functionality change.
Benjamin Kramer [Wed, 16 May 2012 12:44:25 +0000 (12:44 +0000)]
StringSwitchify. No functionality change.

llvm-svn: 156916

12 years agoI noticed that named metadata doesn't provide a direct way of getting at the
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

12 years agoFactor sema for attributes unavailable and deprecated into a common function.
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

12 years agoTeach the 'opt' tool about '-Os' and '-Oz', corresponding to the Clang
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

12 years ago[tsan] fix typo
Kostya Serebryany [Wed, 16 May 2012 08:19:13 +0000 (08:19 +0000)]
[tsan] fix typo

llvm-svn: 156912

12 years agoClarify how libstdc++ and other bits of the system toolchain are found
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

12 years ago[tsan] first version of ThreadSanitizer docs
Kostya Serebryany [Wed, 16 May 2012 08:14:36 +0000 (08:14 +0000)]
[tsan] first version of ThreadSanitizer docs

llvm-svn: 156910

12 years agoFix a thinko in DisintegrateMERGE_VALUES. Patch by Xiaoyi Guo.
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

12 years ago[tsan] add tiny_test.c
Kostya Serebryany [Wed, 16 May 2012 07:48:16 +0000 (07:48 +0000)]
[tsan] add tiny_test.c

llvm-svn: 156908

12 years ago[tsan] fix old-style makefile -- we still need them to run our tests
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

12 years ago[tsan] add ThreadSanitizer linker flags on Linux and also copy the tsan-rt into...
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

12 years agoSignificantly reduce the compiled size of Functions.cpp by turning a big blob of...
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

12 years agoProduce more useful 'duplicate case' diagnostics. Fixes PR9243, from Terry Long!
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

12 years agohave tblgen emit cast<> instead of dyn_cast<> when we know it must succeed.
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

12 years agoInclude the correct conversion context locations for condition expressions.
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

12 years agoMake sure that our thread list can't get out of date like was happening before Jims...
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

12 years agoFix the visibility of instantiations of static data members.
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

12 years agoAvoid creating a cycle when folding load / op with flag / store. PR11451474. rdar...
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

12 years agoAlways call RefreshStateAfterStop when we get a stop event. We were skipping doing...
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

12 years agoAdd an accessor on SBBreakpointLocation to get its location ID.
Jim Ingham [Wed, 16 May 2012 00:51:15 +0000 (00:51 +0000)]
Add an accessor on SBBreakpointLocation to get its location ID.

llvm-svn: 156891

12 years ago[libclang/AST] Index references of protocols in "@protocol(...)" syntax.
Argyrios Kyrtzidis [Wed, 16 May 2012 00:50:02 +0000 (00:50 +0000)]
[libclang/AST] Index references of protocols in "@protocol(...)" syntax.

To do that, keep track of the location of the protocol id in the ObjCProtocolExpr
AST node.

rdar://11190837

llvm-svn: 156890

12 years agoBump debugserver version # to 187.
Jason Molenda [Wed, 16 May 2012 00:40:45 +0000 (00:40 +0000)]
Bump debugserver version # to 187.

llvm-svn: 156888

12 years agoBump version # to lldb-147.
Jason Molenda [Wed, 16 May 2012 00:40:14 +0000 (00:40 +0000)]
Bump version # to lldb-147.

llvm-svn: 156887

12 years agoAdd LLDB_DISABLE_PYTHON around newly added methods in
Jason Molenda [Wed, 16 May 2012 00:38:08 +0000 (00:38 +0000)]
Add LLDB_DISABLE_PYTHON around newly added methods in
DataVisualization.h / DataVisualization.cpp / ValueObject.cpp
and
FormatManager.h / FormatManager.cpp

llvm-svn: 156886

12 years agoSet the result status correctly for asynchronous step-in/out/over commands.
Jim Ingham [Wed, 16 May 2012 00:37:40 +0000 (00:37 +0000)]
Set the result status correctly for asynchronous step-in/out/over commands.

llvm-svn: 156885

12 years agoFix comment typeo.
Jason Molenda [Wed, 16 May 2012 00:36:41 +0000 (00:36 +0000)]
Fix comment typeo.

llvm-svn: 156884

12 years agoChange lockdown API use in RNBSocket::ConnectToService.
Jason Molenda [Wed, 16 May 2012 00:36:21 +0000 (00:36 +0000)]
Change lockdown API use in RNBSocket::ConnectToService.
<rdar://problem/10800927>

llvm-svn: 156883

12 years agoFix Makefile to pass the correct -arch flag to the toolchains.
Johnny Chen [Wed, 16 May 2012 00:33:34 +0000 (00:33 +0000)]
Fix Makefile to pass the correct -arch flag to the toolchains.

llvm-svn: 156882

12 years agoFixed grammar for the llvm.trap intrinsic description.
John Criswell [Wed, 16 May 2012 00:26:51 +0000 (00:26 +0000)]
Fixed grammar for the llvm.trap intrinsic description.

llvm-svn: 156881

12 years ago[objcmt] Accept char arrays for rewriting to @() syntax.
Argyrios Kyrtzidis [Wed, 16 May 2012 00:21:21 +0000 (00:21 +0000)]
[objcmt] Accept char arrays for rewriting to @() syntax.

Part of rdar://11438360

llvm-svn: 156880

12 years ago<rdar://problem/11246147>
Greg Clayton [Wed, 16 May 2012 00:11:54 +0000 (00:11 +0000)]
<rdar://problem/11246147>

Make sure our debugger STDIN read thread shuts down quickly when we are done with it. We had a case where the owner of the file handle was not closing it and caused spins.

llvm-svn: 156879

12 years agoEnable sub-sub-register copy coalescing.
Jakob Stoklund Olesen [Tue, 15 May 2012 23:31:35 +0000 (23:31 +0000)]
Enable sub-sub-register copy coalescing.

It is now possible to coalesce weird skewed sub-register copies by
picking a super-register class larger than both original registers. The
included test case produces code like this:

  vld2.32 {d16, d17, d18, d19}, [r0]!
  vst2.32 {d18, d19, d20, d21}, [r0]

We still perform interference checking as if it were a normal full copy
join, so this is still quite conservative. In particular, the f1 and f2
functions in the included test case still have remaining copies because
of false interference.

llvm-svn: 156878

12 years agoInclude llvm/ADT/STLExtras.h from lldb/Utility/Utils.h and use llvm::array_lengthof...
Johnny Chen [Tue, 15 May 2012 23:21:36 +0000 (23:21 +0000)]
Include llvm/ADT/STLExtras.h from lldb/Utility/Utils.h and use llvm::array_lengthof(), instead.

llvm-svn: 156876

12 years ago[analyzer] Add a test for dead stores, which uses OpaqueValExpr.
Anna Zaks [Tue, 15 May 2012 23:12:53 +0000 (23:12 +0000)]
[analyzer] Add a test for dead stores, which uses OpaqueValExpr.

llvm-svn: 156875