platform/upstream/llvm.git
11 years agoFix a place where the declaration didn't use LLVM_ENABLE_DUMP but the
Chandler Carruth [Tue, 20 Nov 2012 10:23:50 +0000 (10:23 +0000)]
Fix a place where the declaration didn't use LLVM_ENABLE_DUMP but the
definition did.

The last part of PR14324.

llvm-svn: 168363

11 years agoUse LLVM_ENABLE_DUMP for the variables used in printing as well as the
Chandler Carruth [Tue, 20 Nov 2012 10:23:07 +0000 (10:23 +0000)]
Use LLVM_ENABLE_DUMP for the variables used in printing as well as the
printing functions themselves.

Part of PR14324 (which should have just been a patch to the list, but
hey...)

llvm-svn: 168362

11 years agoFix PR14132 and handle OOB loads speculated throuh PHI nodes.
Chandler Carruth [Tue, 20 Nov 2012 10:02:19 +0000 (10:02 +0000)]
Fix PR14132 and handle OOB loads speculated throuh PHI nodes.

The issue is that we may end up with newly OOB loads when speculating
a load into the predecessors of a PHI node, and this confuses the new
integer splitting logic in some cases, triggering an assertion failure.
In fact, the branch in question must be dead code as it loads from
a too-narrow alloca. Add code to handle this gracefully and leave the
requisite FIXMEs for both optimizing more aggressively and doing more to
aid sanitizing invalid code which triggers these patterns.

llvm-svn: 168361

11 years agoFix physical register liveness calculations:
Tim Northover [Tue, 20 Nov 2012 09:56:11 +0000 (09:56 +0000)]
Fix physical register liveness calculations:

+ Take account of clobbers
+ Give outputs priority over inputs since they happen later.

llvm-svn: 168360

11 years agoIntel OCL built-ins calling conventions now support MacOS 32-bit.
Elena Demikhovsky [Tue, 20 Nov 2012 09:37:57 +0000 (09:37 +0000)]
Intel OCL built-ins calling conventions now support MacOS 32-bit.

llvm-svn: 168359

11 years ago[asan] better support for powerpc and sparc targets (thanks to H.J. Liu and David...
Kostya Serebryany [Tue, 20 Nov 2012 08:57:26 +0000 (08:57 +0000)]
[asan] better support for powerpc and sparc targets (thanks to H.J. Liu and David Miller)

llvm-svn: 168358

11 years agoMarking remote mcjit tests as XFAIL for MIPS.
Simon Atanasyan [Tue, 20 Nov 2012 07:25:17 +0000 (07:25 +0000)]
Marking remote mcjit tests as XFAIL for MIPS.

llvm-svn: 168357

11 years ago[asan] more support for powerpc, patch by Peter Bergner
Kostya Serebryany [Tue, 20 Nov 2012 07:00:42 +0000 (07:00 +0000)]
[asan] more support for powerpc, patch by Peter Bergner

llvm-svn: 168356

11 years agoUpdate method calls to the new interface re r168354.
Bill Wendling [Tue, 20 Nov 2012 05:09:43 +0000 (05:09 +0000)]
Update method calls to the new interface re r168354.

llvm-svn: 168355

11 years agoMake the AttrListPtr object a part of the LLVMContext.
Bill Wendling [Tue, 20 Nov 2012 05:09:20 +0000 (05:09 +0000)]
Make the AttrListPtr object a part of the LLVMContext.

When code deletes the context, the AttributeImpls that the AttrListPtr points to
are now invalid. Therefore, instead of keeping a separate managed static for the
AttrListPtrs that's reference counted, move it into the LLVMContext and delete
it when deleting the AttributeImpls.

llvm-svn: 168354

11 years agoNote Freescale's contributions in the PPC release notes.
Hal Finkel [Tue, 20 Nov 2012 04:20:31 +0000 (04:20 +0000)]
Note Freescale's contributions in the PPC release notes.

This mainly reflects the work of Tobias von Koch.

llvm-svn: 168352

11 years agodocs: Sphinxify LLVMBuild documentation.
Sean Silva [Tue, 20 Nov 2012 03:13:53 +0000 (03:13 +0000)]
docs: Sphinxify LLVMBuild documentation.

llvm-svn: 168348

11 years agoAdd a comment to associate a FIXME with a PR where it is matters.
Chandler Carruth [Tue, 20 Nov 2012 01:27:48 +0000 (01:27 +0000)]
Add a comment to associate a FIXME with a PR where it is matters.

llvm-svn: 168347

11 years agoRework the rewriting of loads and stores for vector and integer allocas
Chandler Carruth [Tue, 20 Nov 2012 01:12:50 +0000 (01:12 +0000)]
Rework the rewriting of loads and stores for vector and integer allocas
to properly handle the combinations of these with split integer loads
and stores. This essentially replaces Evan's r168227 by refactoring the
code in a different way, and trynig to mirror that refactoring in both
the load and store sides of the rewriting.

Generally speaking there was some really problematic duplicated code
here that led to poorly founded assumptions and then subtle bugs. Now
much of the code actually flows through and follows a more consistent
style and logical path. There is still a tiny bit of duplication on the
store side of things, but it is much less bad.

This also changes the logic to never re-use a load or store instruction
as that was simply too error prone in practice.

I've added a few tests (one a reduction of the one in Evan's original
patch, which happened to be the same as the report in PR14349). I'm
going to look at adding a few more tests for things I found and fixed in
passing (such as the volatile tests in the vectorizable predicate).

This patch has survived bootstrap, and modulo one bugfix survived
Duncan's test suite, but let me know if anything else explodes.

llvm-svn: 168346

11 years agoReST-ify some markup in the LIT document
Eli Bendersky [Tue, 20 Nov 2012 00:26:08 +0000 (00:26 +0000)]
ReST-ify some markup in the LIT document

llvm-svn: 168345

11 years ago80-column and whitespace fixups.
Eric Christopher [Tue, 20 Nov 2012 00:15:36 +0000 (00:15 +0000)]
80-column and whitespace fixups.

llvm-svn: 168344

11 years agoRest of the fix for Thread
Filipe Cabecinhas [Tue, 20 Nov 2012 00:11:13 +0000 (00:11 +0000)]
Rest of the fix for Thread

llvm-svn: 168343

11 years agoRemove unneeded const qualifier
Filipe Cabecinhas [Tue, 20 Nov 2012 00:03:38 +0000 (00:03 +0000)]
Remove unneeded const qualifier

llvm-svn: 168342

11 years agoAllow using MemoryBuffers with yaml::Stream directly.
Sean Silva [Mon, 19 Nov 2012 23:21:47 +0000 (23:21 +0000)]
Allow using MemoryBuffers with yaml::Stream directly.

The rationale is to get YAML filenames in diagnostics from
yaml::Stream::printError -- currently the filename is hard-coded as
"YAML" because there's no buffer information available.

Patch by Kim Gräsman!

llvm-svn: 168341

11 years agoFix some trailing whitespace (on a blank line) to cycle/test bots.
David Blaikie [Mon, 19 Nov 2012 23:12:51 +0000 (23:12 +0000)]
Fix some trailing whitespace (on a blank line) to cycle/test bots.

llvm-svn: 168340

11 years agoRemove unused member variable.
Filipe Cabecinhas [Mon, 19 Nov 2012 23:00:57 +0000 (23:00 +0000)]
Remove unused member variable.

llvm-svn: 168339

11 years agoRemove a function argument and propagate const around accordingly.
Eric Christopher [Mon, 19 Nov 2012 22:42:15 +0000 (22:42 +0000)]
Remove a function argument and propagate const around accordingly.

llvm-svn: 168338

11 years agoWhitespace and 80-col.
Eric Christopher [Mon, 19 Nov 2012 22:42:10 +0000 (22:42 +0000)]
Whitespace and 80-col.

llvm-svn: 168337

11 years agodocs: Fix reference to "bold" part of code example.
Sean Silva [Mon, 19 Nov 2012 21:18:50 +0000 (21:18 +0000)]
docs: Fix reference to "bold" part of code example.

Fixes PR14380.

The prose was referring to a "bold" part of the code example, where the
boldness was lost in the transition from HTML. Unlike HTML, where one
can easily have a <b> inside a <pre>, reStructuredText is generally
unable to represent such nested markup.

Hack around it with the :emphasise-lines: option to the  code-block
directive to single out the regions instead. Thankfully the regions are
close-enough to being full lines for this to work.

llvm-svn: 168329

11 years agoMake AsmPrinter::EmitTTypeReference() more robust - put
Anton Korobeynikov [Mon, 19 Nov 2012 21:17:20 +0000 (21:17 +0000)]
Make AsmPrinter::EmitTTypeReference() more robust - put
the zero GV check inside, so we won't forget it at the caller side.

llvm-svn: 168328

11 years agoPR14381: Never skip constexpr function bodies when code-completing. We may need
Richard Smith [Mon, 19 Nov 2012 21:13:18 +0000 (21:13 +0000)]
PR14381: Never skip constexpr function bodies when code-completing. We may need
them in order to parse the rest of the file.

llvm-svn: 168327

11 years agoFactor out type info emission into separate routine.
Anton Korobeynikov [Mon, 19 Nov 2012 21:06:26 +0000 (21:06 +0000)]
Factor out type info emission into separate routine.
It turned out that ARM wants different layout of type infos.
This is yet another patch in attempt to fix PR7187

llvm-svn: 168325

11 years agoTemporarily skip tests known to hang on Linux
Daniel Malea [Mon, 19 Nov 2012 20:55:52 +0000 (20:55 +0000)]
Temporarily skip tests known to hang on Linux
- opened bugzilla defects #14384 and #14385

llvm-svn: 168323

11 years agoLinux fix: remove reference to cellspu (backend removed in llvm r167984)
Daniel Malea [Mon, 19 Nov 2012 19:46:04 +0000 (19:46 +0000)]
Linux fix: remove reference to cellspu (backend removed in llvm r167984)

llvm-svn: 168322

11 years agoMove section label emission to module end. Nothing should be
Eric Christopher [Mon, 19 Nov 2012 19:43:59 +0000 (19:43 +0000)]
Move section label emission to module end. Nothing should be
depending on them being emitted before the text and/or data
sections and testing didn't uncover any.

llvm-svn: 168321

11 years agoHandle mixed normal and early-clobber defs on inline asm.
Jakob Stoklund Olesen [Mon, 19 Nov 2012 19:31:10 +0000 (19:31 +0000)]
Handle mixed normal and early-clobber defs on inline asm.

PR14376.

llvm-svn: 168320

11 years agoFix a pasto.
Eric Christopher [Mon, 19 Nov 2012 19:31:02 +0000 (19:31 +0000)]
Fix a pasto.

Noticed by Dimitri Andric!

llvm-svn: 168319

11 years ago80 cols
Joe Abbey [Mon, 19 Nov 2012 19:22:55 +0000 (19:22 +0000)]
80 cols

llvm-svn: 168318

11 years agoWhen adding a NamedDecl to a correction, add the underlying Decl (via
Kaelyn Uhrain [Mon, 19 Nov 2012 18:49:53 +0000 (18:49 +0000)]
When adding a NamedDecl to a correction, add the underlying Decl (via
getUnderlyingDecl()) so that derivatives of
CorrectionCandidateCallback::ValidateCandidate(...) don't have to worry
about being thrown by UsingDecls and such.

llvm-svn: 168317

11 years agoEnable MCJIT tests on PowerPC.
Ulrich Weigand [Mon, 19 Nov 2012 17:57:07 +0000 (17:57 +0000)]
Enable MCJIT tests on PowerPC.
Disable old JIT tests on PowerPC.

llvm-svn: 168316

11 years agoAdded malloc introspection commands for Mac OS X for both GDB and LLDB.
Greg Clayton [Mon, 19 Nov 2012 17:47:29 +0000 (17:47 +0000)]
Added malloc introspection commands for Mac OS X for both GDB and LLDB.

llvm-svn: 168315

11 years agoAdd more info for shell commands being used by DebugSymbols.framework.
Greg Clayton [Mon, 19 Nov 2012 17:38:24 +0000 (17:38 +0000)]
Add more info for shell commands being used by DebugSymbols.framework.

llvm-svn: 168314

11 years agoAdd myself as owner of the Hexagon backend.
Anshuman Dasgupta [Mon, 19 Nov 2012 15:40:22 +0000 (15:40 +0000)]
Add myself as owner of the Hexagon backend.

llvm-svn: 168312

11 years agoMake polly -Wdocumentation clean
Tobias Grosser [Mon, 19 Nov 2012 12:26:25 +0000 (12:26 +0000)]
Make polly -Wdocumentation clean

llvm-svn: 168311

11 years agoAdd -ldl for non-static libgcc in Android.
Logan Chien [Mon, 19 Nov 2012 12:04:11 +0000 (12:04 +0000)]
Add -ldl for non-static libgcc in Android.

According to Android ABI, we have to link with
libdl.so, if we are linking with non-static libgcc.

Besides, this also fixes MIPS link error of
undefined references to `_Unwind_Find_FDE' and
`dl_iterate_phdr'.

llvm-svn: 168310

11 years agoEnable -fuse-init-array for Android X86/MIPS.
Logan Chien [Mon, 19 Nov 2012 11:45:31 +0000 (11:45 +0000)]
Enable -fuse-init-array for Android X86/MIPS.

The dynamic linker of Android does not support .ctors/.dtors.
We should emit .init_array and .fini_array regardless the
gcc version.

NOTE: This patch does not affect the ARM backend, because
it is required to generate .init_array and .fini_array
for program targeting ARM AAPCS and AEABI.

llvm-svn: 168309

11 years ago[ASan] use raw Exit() to kill the program in case ASan finds an error while reporting...
Alexey Samsonov [Mon, 19 Nov 2012 11:22:22 +0000 (11:22 +0000)]
[ASan] use raw Exit() to kill the program in case ASan finds an error while reporting the error in the same thread

llvm-svn: 168308

11 years ago[asan] support x32 mode in the fast stack unwinder. Patch by H.J. Lu
Kostya Serebryany [Mon, 19 Nov 2012 10:31:00 +0000 (10:31 +0000)]
[asan] support x32 mode in the fast stack unwinder. Patch by H.J. Lu

llvm-svn: 168306

11 years ago[ASan] change interface of GetAccumulatedStats() function to prevent Clang from inser...
Alexey Samsonov [Mon, 19 Nov 2012 10:25:17 +0000 (10:25 +0000)]
[ASan] change interface of GetAccumulatedStats() function to prevent Clang from inserting memcpy() call into runtime.

llvm-svn: 168305

11 years agoPromote the constant 1 to long long, 1LL or 1ULL in int64_t-sensitive context.
NAKAMURA Takumi [Mon, 19 Nov 2012 10:03:09 +0000 (10:03 +0000)]
Promote the constant 1 to long long, 1LL or 1ULL in int64_t-sensitive context.

llvm-svn: 168304

11 years agoclang/test: Suppress two tests on LLP64 target, Windows x64.
NAKAMURA Takumi [Mon, 19 Nov 2012 10:00:59 +0000 (10:00 +0000)]
clang/test: Suppress two tests on LLP64 target, Windows x64.

llvm-svn: 168303

11 years agoFirst version of Polly release notes for 3.2
Tobias Grosser [Mon, 19 Nov 2012 08:58:29 +0000 (08:58 +0000)]
First version of Polly release notes for 3.2

llvm-svn: 168302

11 years ago[asan] support PowerPC and SPARC in sanitizer_linux.cc
Kostya Serebryany [Mon, 19 Nov 2012 07:53:36 +0000 (07:53 +0000)]
[asan] support PowerPC and SPARC in sanitizer_linux.cc

llvm-svn: 168301

11 years agoClean up handling of always-inline functions in the inliner.
Bob Wilson [Mon, 19 Nov 2012 07:04:35 +0000 (07:04 +0000)]
Clean up handling of always-inline functions in the inliner.

This patch moves the isInlineViable function from the InlineAlways pass into
the InlineCostAnalyzer and then changes the InlineCost computation to use that
simple check for always-inline functions. All the special-case checks for
AlwaysInline in the CallAnalyzer can then go away.

llvm-svn: 168300

11 years agoSome comment fixes.
Bob Wilson [Mon, 19 Nov 2012 07:04:30 +0000 (07:04 +0000)]
Some comment fixes.

llvm-svn: 168299

11 years agoCompletely re-work how the Clang driver interprets PIC and PIE options.
Chandler Carruth [Mon, 19 Nov 2012 03:52:03 +0000 (03:52 +0000)]
Completely re-work how the Clang driver interprets PIC and PIE options.

There were numerous issues here that were all entangled, and so I've
tried to do a general simplification of the logic.
1) The logic was mimicing actual GCC bugs, rather than "features". These
   have been fixed in trunk GCC, and this fixes Clang as well. Notably,
   the logic was always intended to be last-match-wins like any other
   flag.
2) The logic for handling '-mdynamic-no-pic' was preposterously unclear.
   It also allowed the use of this flag on non-Darwin platforms where it
   has no actual meaning. Now this option is handled directly based on
   tests of how llvm-gcc behaves, and it is only supported on Darwin.
3) The APIs for the Driver's ToolChains had the implementation ugliness
   of dynamic-no-pic leaking through them. They also had the
   implementation details of the LLVM relocation model flag names
   leaking through.
4) The actual results of passing these flags was incorrect on Darwin in
   many cases. For example, Darwin *always* uses PIC level 2 if it uses
   in PIC level, and Darwin *always* uses PIC on 64-bit regardless of
   the flags specified, including -fPIE. Darwin never compiles in PIE
   mode, but it can *link* in PIE mode.
5) Also, PIC was not always being enabled even when PIE was. This isn't
   a supported mode at all and may have caused some fallout in builds
   with complex PIC and PIE interactions.

The result is (I hope) cleaner and clearer for readers. I've also left
comments and tests about some of the truly strage behavior that is
observed on Darwin platforms. We have no real testing of Windows
platforms and PIC, but I don't have the tools handy to figure that out.
Hopefully others can beef up our testing here.

Unfortunately, I can't test this for every platform. =/ If folks have
dependencies on these flags that aren't covered by tests, they may
break. I've audited and ensured that all the changes in behavior of the
existing tests are intentional and good. In particular I've tried to
make sure the Darwin behavior (which is more suprising than the Linux
behavior) also matches that of 'gcc' on my mac.

llvm-svn: 168297

11 years agoRemove a no-op 'const' from a by-value return type.
Chandler Carruth [Mon, 19 Nov 2012 03:52:00 +0000 (03:52 +0000)]
Remove a no-op 'const' from a by-value return type.

llvm-svn: 168296

11 years agoRecursiveASTVisitor.h: Rework Doug's r160404, "Eliminating the GCC_CAST hack, take...
NAKAMURA Takumi [Mon, 19 Nov 2012 00:51:37 +0000 (00:51 +0000)]
RecursiveASTVisitor.h: Rework Doug's r160404, "Eliminating the GCC_CAST hack, take two."

With this, ARCMT tests would not crash on certain hosts with g++ -O2, eg. cygwin g++-4.5.3.

r160404 crashed mingw32-g++-4.4.0. I guess method's pointer in conditional expression could not be handled.

llvm-svn: 168295

11 years agoMove else onto line with preceding closing brace.
Craig Topper [Mon, 19 Nov 2012 00:11:50 +0000 (00:11 +0000)]
Move else onto line with preceding closing brace.

llvm-svn: 168294

11 years agoRemove redundant (duplicated) check.
Dmitri Gribenko [Sun, 18 Nov 2012 22:28:42 +0000 (22:28 +0000)]
Remove redundant (duplicated) check.

llvm-svn: 168293

11 years agoRemove the last bit of constant folding from LinearizeExprTree (most of it was
Duncan Sands [Sun, 18 Nov 2012 20:15:36 +0000 (20:15 +0000)]
Remove the last bit of constant folding from LinearizeExprTree (most of it was
removed in commit 168035, but I missed this bit).

llvm-svn: 168292

11 years agoFix PR14060, an infinite loop in reassociate. The problem was that one of the
Duncan Sands [Sun, 18 Nov 2012 19:27:01 +0000 (19:27 +0000)]
Fix PR14060, an infinite loop in reassociate.  The problem was that one of the
operands of the expression being written was wrongly thought to be reusable as
an inner node of the expression resulting in it turning up as both an inner node
*and* a leaf, creating a cycle in the def-use graph.  This would have caused the
verifier to blow up if things had gotten that far, however it managed to provoke
an infinite loop first.

llvm-svn: 168291

11 years agoSystemLibrary.rst: remove reference to a bug that was closed long time ago
Dmitri Gribenko [Sun, 18 Nov 2012 18:42:18 +0000 (18:42 +0000)]
SystemLibrary.rst: remove reference to a bug that was closed long time ago

llvm-svn: 168290

11 years agoDocumentation: convert SystemLibrary documentation to reST
Dmitri Gribenko [Sun, 18 Nov 2012 18:40:21 +0000 (18:40 +0000)]
Documentation: convert SystemLibrary documentation to reST

llvm-svn: 168289

11 years agoDocumentation: remove a copy of the FileCheck man page from TestingGuide
Dmitri Gribenko [Sun, 18 Nov 2012 18:28:14 +0000 (18:28 +0000)]
Documentation: remove a copy of the FileCheck man page from TestingGuide

llvm-svn: 168288

11 years agoDocumentation: use a :doc: link instead of an absolute http:// link.
Dmitri Gribenko [Sun, 18 Nov 2012 10:35:18 +0000 (10:35 +0000)]
Documentation: use a :doc: link instead of an absolute  link.

llvm-svn: 168286

11 years agoDocumentation: fix broken link.
Dmitri Gribenko [Sun, 18 Nov 2012 10:32:14 +0000 (10:32 +0000)]
Documentation: fix broken link.

llvm-svn: 168285

11 years agoUse a full triple for a PPC test case for asm syntax.
Andrew Trick [Sun, 18 Nov 2012 06:21:03 +0000 (06:21 +0000)]
Use a full triple for a PPC test case for asm syntax.

llvm-svn: 168283

11 years agoMCJIT: [cygming] Give noop to __main also in RecordingMemoryManger. It is emitted...
NAKAMURA Takumi [Sun, 18 Nov 2012 06:16:32 +0000 (06:16 +0000)]
MCJIT: [cygming] Give noop to __main also in RecordingMemoryManger. It is emitted in @main().

XFAIL(s) can be removed.

llvm-svn: 168282

11 years agotest/ExecutionEngine/MCJIT/stubs-remote.ll: Prune DOSish CRLF.
NAKAMURA Takumi [Sun, 18 Nov 2012 06:16:21 +0000 (06:16 +0000)]
test/ExecutionEngine/MCJIT/stubs-remote.ll: Prune DOSish CRLF.

llvm-svn: 168281

11 years agoDon't try to calculate the alignment of an unsigned type. Fixes PR14371!
Nick Lewycky [Sun, 18 Nov 2012 05:39:39 +0000 (05:39 +0000)]
Don't try to calculate the alignment of an unsigned type. Fixes PR14371!

llvm-svn: 168280

11 years agoutils: use rmdir instead of rm to remove empty dirs
Sebastian Pop [Sun, 18 Nov 2012 04:34:31 +0000 (04:34 +0000)]
utils: use rmdir instead of rm to remove empty dirs

as suggested by Sven Verdoolaege <skimo-polly@kotnet.org>

llvm-svn: 168279

11 years agoclang/test/Sema/warn-documentation.cpp: Try to fix up the testcase in r168277.
NAKAMURA Takumi [Sun, 18 Nov 2012 02:34:33 +0000 (02:34 +0000)]
clang/test/Sema/warn-documentation.cpp: Try to fix up the testcase in r168277.

llvm-svn: 168278

11 years agoDocumentation parsing: propely handle a lone '\endverbatim' and emit a warning.
Dmitri Gribenko [Sun, 18 Nov 2012 00:30:31 +0000 (00:30 +0000)]
Documentation parsing: propely handle a lone '\endverbatim' and emit a warning.

We actually used to assert on this.

Thanks to NAKAMURA Takumi for noticing this!

llvm-svn: 168277

11 years agoFix Doxygen comment start sequence.
Dmitri Gribenko [Sat, 17 Nov 2012 23:53:22 +0000 (23:53 +0000)]
Fix Doxygen comment start sequence.

llvm-svn: 168276

11 years agodocs: CodingStandards should follow the coding standards.
Sean Silva [Sat, 17 Nov 2012 23:25:33 +0000 (23:25 +0000)]
docs: CodingStandards should follow the coding standards.

Some variables in code examples were not LikeThis.

llvm-svn: 168275

11 years agoClean up code according to coding standards
Andy Gibbs [Sat, 17 Nov 2012 22:17:28 +0000 (22:17 +0000)]
Clean up code according to coding standards

llvm-svn: 168274

11 years agoBump sphinx config to 3.3.
Benjamin Kramer [Sat, 17 Nov 2012 22:12:59 +0000 (22:12 +0000)]
Bump sphinx config to 3.3.

llvm-svn: 168273

11 years agoKick off 3.3 cycle for LLVM trunk.
Benjamin Kramer [Sat, 17 Nov 2012 22:01:08 +0000 (22:01 +0000)]
Kick off 3.3 cycle for LLVM trunk.

llvm-svn: 168272

11 years agodocs: Add link to HowToSetUpLLVMStyleRTTI
Sean Silva [Sat, 17 Nov 2012 21:01:44 +0000 (21:01 +0000)]
docs: Add link to HowToSetUpLLVMStyleRTTI

llvm-svn: 168271

11 years agoobjective-C: Do not issue deprecated warning about implementation
Fariborz Jahanian [Sat, 17 Nov 2012 20:53:53 +0000 (20:53 +0000)]
objective-C: Do not issue deprecated warning about implementation
of a deprecated method in original class (or category), only
in overrides. // rdar://12717705

llvm-svn: 168270

11 years agoFix crash on end-of-file after \ in a char literal, fixes PR14369.
Nico Weber [Sat, 17 Nov 2012 20:25:54 +0000 (20:25 +0000)]
Fix crash on end-of-file after \ in a char literal, fixes PR14369.

This makes LexCharConstant() look more like LexStringLiteral(), which doesn't
have this bug. Add tests for eof after \ for several other cases.

llvm-svn: 168269

11 years agoPrevent premature macro expansion in __has_builtin, __has_feature,
Andy Gibbs [Sat, 17 Nov 2012 19:18:27 +0000 (19:18 +0000)]
Prevent premature macro expansion in __has_builtin, __has_feature,
__has_attribute, __has_extension, making them behave more akin to
conventional macros.

llvm-svn: 168268

11 years agoMade the "expected string literal" diagnostic more expressive
Andy Gibbs [Sat, 17 Nov 2012 19:16:52 +0000 (19:16 +0000)]
Made the "expected string literal" diagnostic more expressive

llvm-svn: 168267

11 years agoRefactored duplicate string literal lexing code within Preprocessor, into a
Andy Gibbs [Sat, 17 Nov 2012 19:15:38 +0000 (19:15 +0000)]
Refactored duplicate string literal lexing code within Preprocessor, into a
common LexStringLiteral function.  In doing so, some consistency problems have
been ironed out (e.g. where the first token in the string literal was lexed
with macro expansion, but subsequent ones were not) and also an erroneous
diagnostic has been corrected.

LexStringLiteral is complemented by a FinishLexStringLiteral function which
can be used in the situation where the first token of the string literal has
already been lexed.

llvm-svn: 168266

11 years agoFix handling of invalid uses of the __has_warning builtin macro
Andy Gibbs [Sat, 17 Nov 2012 19:14:53 +0000 (19:14 +0000)]
Fix handling of invalid uses of the __has_warning builtin macro

llvm-svn: 168265

11 years agoTypo
James Molloy [Sat, 17 Nov 2012 17:59:44 +0000 (17:59 +0000)]
Typo

llvm-svn: 168263

11 years agoAdd a new function to ConstantExpr - getAsInstruction. This returns its Instruction...
James Molloy [Sat, 17 Nov 2012 17:56:30 +0000 (17:56 +0000)]
Add a new function to ConstantExpr - getAsInstruction. This returns its Instruction* corollary, which may be useful if a user
wishes to transform a ConstantExpr so that one of its operands is no longer constant.

llvm-svn: 168262

11 years agoEnable inlining of 4 byte atomic ops on ppc32, 8 byte atomic ops on ppc64.
Benjamin Kramer [Sat, 17 Nov 2012 17:30:55 +0000 (17:30 +0000)]
Enable inlining of 4 byte atomic ops on ppc32, 8 byte atomic ops on ppc64.

Also fixes a bit/byte mismatch when checking if a target supports atomic ops of a certain size.

llvm-svn: 168260

11 years agoPlug a memory leak in the GCOV profiling emitter, which never released the edge table...
Benjamin Kramer [Sat, 17 Nov 2012 13:49:37 +0000 (13:49 +0000)]
Plug a memory leak in the GCOV profiling emitter, which never released the edge table memory.

llvm-svn: 168259

11 years agoRemove copy ctor that provides no value over the default.
Benjamin Kramer [Sat, 17 Nov 2012 09:14:31 +0000 (09:14 +0000)]
Remove copy ctor that provides no value over the default.

It's also simpler to just copy the words than mangling bits like this ctor did.

llvm-svn: 168258

11 years agoFurther reduce "-fsyntax-only -Wuninitialized" time on sqlite3.c by another 2.5%...
Ted Kremenek [Sat, 17 Nov 2012 07:18:30 +0000 (07:18 +0000)]
Further reduce "-fsyntax-only -Wuninitialized" time on sqlite3.c by another 2.5% using intelligent pruning of blocks during the final reporting pass.

llvm-svn: 168257

11 years agoreally fix permissions
Pawel Wodnicki [Sat, 17 Nov 2012 06:38:44 +0000 (06:38 +0000)]
really fix permissions

llvm-svn: 168256

11 years agofix permissions
Pawel Wodnicki [Sat, 17 Nov 2012 06:35:19 +0000 (06:35 +0000)]
fix permissions

llvm-svn: 168255

11 years agoadding whose code is it anywa tools
Pawel Wodnicki [Sat, 17 Nov 2012 06:24:37 +0000 (06:24 +0000)]
adding whose code is it anywa tools

llvm-svn: 168254

11 years agoRemoving utf-8 smart quote and trailing whitespace
Joe Abbey [Sat, 17 Nov 2012 05:13:16 +0000 (05:13 +0000)]
Removing utf-8 smart quote and trailing whitespace

llvm-svn: 168253

11 years agoutils: remove the isl directory after cloning cloog
Sebastian Pop [Sat, 17 Nov 2012 04:57:41 +0000 (04:57 +0000)]
utils: remove the isl directory after cloning cloog

This fixes my previous commit, thanks to "Dmitry N. Mikushin"
<maemarcus@gmail.com>

llvm-svn: 168252

11 years agoSuppressing the 'direct base ‘{anonymous}::S1’ inaccessible in ‘{anonymous}::D9’
Joe Abbey [Sat, 17 Nov 2012 04:54:22 +0000 (04:54 +0000)]
Suppressing the 'direct base ‘{anonymous}::S1’ inaccessible in ‘{anonymous}::D9’
due to ambiguity' warning.

llvm-svn: 168251

11 years agoutils: remove existing cloog and isl dirs before git cloning
Sebastian Pop [Sat, 17 Nov 2012 03:43:48 +0000 (03:43 +0000)]
utils: remove existing cloog and isl dirs before git cloning

Patch adapted from "Dmitry N. Mikushin" <maemarcus@gmail.com>.

llvm-svn: 168250

11 years agoSilence the buildbots for this test while I figure out the triple
Andrew Trick [Sat, 17 Nov 2012 03:39:26 +0000 (03:39 +0000)]
Silence the buildbots for this test while I figure out the triple

llvm-svn: 168249

11 years agoBroaden isSchedulingBoundary to check aliases of SP.
Andrew Trick [Sat, 17 Nov 2012 03:35:11 +0000 (03:35 +0000)]
Broaden isSchedulingBoundary to check aliases of SP.

On PPC the stack pointer is X1, but ADJCALLSTACK writes R1.

Fixes PR14315: Register regmask dependency problem with misched.

llvm-svn: 168248

11 years agoPhi speculation improvement for BasicAA
Hal Finkel [Sat, 17 Nov 2012 02:33:15 +0000 (02:33 +0000)]
Phi speculation improvement for BasicAA

This is a partial solution to PR14351. It removes some of the special
significance of the first incoming phi value in the phi aliasing checking logic
in BasicAA. In the context of a loop, the old logic assumes that the first
incoming value is the interesting one (meaning that it is the one that comes
from outside the loop), but this is often not the case.  With this change, we
now test first the incoming value that comes from a block other than the parent
of the phi being tested.

llvm-svn: 168245

11 years agoPer agreement with Doug, take ownership of Clang's libSema.
Richard Smith [Sat, 17 Nov 2012 02:26:54 +0000 (02:26 +0000)]
Per agreement with Doug, take ownership of Clang's libSema.

llvm-svn: 168244

11 years agoSwitch -Wuninitialized to use a reverse-post order traversal as
Ted Kremenek [Sat, 17 Nov 2012 02:00:00 +0000 (02:00 +0000)]
Switch -Wuninitialized to use a reverse-post order traversal as
an initial baseline for enqueued blocks, but use a simple DFS stack
for propagating changes quickly up back edges.

This provides a 3.5% reduction in -fsyntax-only time on sqlite3.c.

llvm-svn: 168241

11 years agoMark FP_EXTEND form v2f32 to v2f64 as "expand" for ARM NEON. Patch by Pete Couperus.
Eli Friedman [Sat, 17 Nov 2012 01:52:46 +0000 (01:52 +0000)]
Mark FP_EXTEND form v2f32 to v2f64 as "expand" for ARM NEON.  Patch by Pete Couperus.

llvm-svn: 168240