Commit Graph

210379 Commits

Author SHA1 Message Date
Matthias Braun 06f9927930 RegisterPressure: constify getRegSetPressureAtPos()
llvm-svn: 247616
2015-09-14 21:06:37 +00:00
Sean Callanan 85aabaf935 ClangExpressionDeclMap should only disable the Clang parser-specific state on
Clang persistent variables.

llvm-svn: 247615
2015-09-14 21:03:44 +00:00
Gabor Horvath e30859959f [Static Analyzer] Turn on some nullability checks by default.
Differential Revision: http://reviews.llvm.org/D12858

llvm-svn: 247614
2015-09-14 20:34:06 +00:00
Rui Ueyama 9078f73fa0 Use C++11 member initializers. NFC.
llvm-svn: 247613
2015-09-14 20:32:41 +00:00
Gabor Horvath be87d5bb92 [Static Analyzer] Nullability checker optimization.
Differential Revision: http://reviews.llvm.org/D12848

llvm-svn: 247612
2015-09-14 20:31:46 +00:00
Douglas Katzman 553927a78a Driver should forward at most one gdwarf-N flag to cc1as.
llvm-svn: 247611
2015-09-14 20:31:28 +00:00
David Blaikie 6614d8d230 [opaque pointer types] Switch a few cases of getElementType over, since I had them lying around anyway
llvm-svn: 247610
2015-09-14 20:29:26 +00:00
Rafael Espindola 601771ebc0 Start adding the .hash output section.
It is still empty. Content will be added in the next patch.

llvm-svn: 247609
2015-09-14 20:20:34 +00:00
Todd Fiala ff1fa40cdf Final unexpected success cleanup for OS X.
Top of tree is running with no unexpected successes with this
change, on latest available El Capitan and Xcode betas.

llvm-svn: 247608
2015-09-14 20:16:34 +00:00
Chris Bieneman 679ab85a7c [CMake] Add options to control building sanitizers and builtins.
There are situations where a user may want to build only the compiler-rt builtins, or only the sanitizer runtimes. This exposes options to do that. Both default to On, so there should be no implicit change in behavior.

llvm-svn: 247607
2015-09-14 19:59:24 +00:00
Chris Bieneman fb92d9a249 [CMake] If COMPILER_RT_INCLUDE_TESTS is off we shouldn't include the root test directory.
llvm-svn: 247606
2015-09-14 19:54:12 +00:00
Todd Fiala a22006183f Fixes lldb-server commandline test xpass for OS X and Linux; resolves llvm.org/pr20273
llvm-svn: 247605
2015-09-14 19:53:00 +00:00
Dan Gohman 11ab0e155d Make AsmPrinter::EmitJumpTableInfo virtual
Targets that have non-traditional jump table mechanisms may need to do
something substantially different for jump tables than what
AsmPrinter::EmitJumpTableInfo does. This patch makes that function
virtual so that targets can override it.

Differential Revision:   http://reviews.llvm.org/D12786

llvm-svn: 247604
2015-09-14 19:44:29 +00:00
Rafael Espindola 8d4d9d2f67 [Solaris] Add -lc also when linking shared libraries
This is actually needed, otherwise libc won't be added at all. For
instance when building libclang.so all the libc symbols won't be
found, with ld warning about libc being an "implicit dependency".

Patch by Xan López!

llvm-svn: 247603
2015-09-14 19:30:53 +00:00
Todd Fiala a85feabe3a Another round of macosx unexpected success corrections.
llvm-svn: 247602
2015-09-14 19:25:22 +00:00
Todd Fiala 7b6fbcf365 OS X unexpected success cleanup
TestPersistObjCPointeeType and TestObjCNewSyntax marked up to expect
success on clang >= 7.0.0.

TestMultipleDebuggers passed 25/25 times, taking off intermittent.
If this changes, I'll make sure it goes into a flaky/flakey category.

llvm-svn: 247601
2015-09-14 19:12:56 +00:00
Michael Kruse fa62b1763c Run polly-check-format with unit tests
Add polly-check-format as dependency of check-polly if clang-format is 
available in the same build.

Differential Revision: http://reviews.llvm.org/D12850

llvm-svn: 247600
2015-09-14 19:11:48 +00:00
Rafael Espindola bfcdfb32af Correctly align sections.
We have to align the start, not the end.

This should fix crashes on systems where memcpy enforces the expected
alignment.

llvm-svn: 247599
2015-09-14 19:00:35 +00:00
Gabor Horvath dc6be2453f [Static Analyzer] Relaxing a caching out related assert.
Differential Revision: http://reviews.llvm.org/D12818

llvm-svn: 247598
2015-09-14 19:00:08 +00:00
John McCall f0f0b7a0eb Fix a nasty bug with the partial destruction of nested arrays;
it escaped notice because it's only used for heterogeneous
initialization.

rdar://21397946

llvm-svn: 247597
2015-09-14 18:57:08 +00:00
Ed Maste a5f384487a Remove expectedFailureFreeBSD from now-passing test
ExprCommandCallUserDefinedFunction::test_with_dwarf

llvm.org/pr20274

llvm-svn: 247596
2015-09-14 18:50:23 +00:00
Gabor Horvath dfedc0f884 [Static Analyzer] Moving nullability checkers out of alpha.
llvm-svn: 247595
2015-09-14 18:48:55 +00:00
Ed Maste 6052b4cd02 Correct XFAIL OS list after r247576
In ConstVariableTestCase::test_with_dwarf_and_run_command - the test
fails with Clang (and presumably ICC) also on FreeBSD.

llvm-svn: 247594
2015-09-14 18:40:52 +00:00
David Blaikie 2a791d7d21 [opaque pointer type] Fix a few uses of PointerType::getElementType in favor of uses of types already available elsewhere
These are a few cleanups I happened to have from trying to go in a
different direction recently, so just flushing them out while I have
them.

llvm-svn: 247593
2015-09-14 18:38:22 +00:00
Chris Bieneman de9588e049 [CMake] Add llvm-ar subdirectory explicitly.
This is required because ExternalProject_Add requires all targets specified in the DEPENDS argument must exist before calling ExternalProject_Add.

llvm-svn: 247592
2015-09-14 18:36:40 +00:00
Todd Fiala f9fe8b8d49 Fix up bad compiler spec on ConstVariableTestCase; fixup two more OS X unexpected successes.
llvm-svn: 247591
2015-09-14 18:34:36 +00:00
Gabor Horvath 2930735c1e [Static Analyzer] Moving nullability checkers to a top level package.
Differential Revision: http://reviews.llvm.org/D12852

llvm-svn: 247590
2015-09-14 18:31:34 +00:00
Jim Ingham a2fcee9cba Remove a debugging printf that got left in SymbolFileDWARFDebugMap.
llvm-svn: 247589
2015-09-14 18:28:28 +00:00
Matthias Braun 3f3934b010 RegisterPressure: Simplify close{Top|Bottom}()
- There are no duplicate registers in LiveRegs list we are copying from
  and so we do not need to sort the registers.
- Simply use SmallVector::apend instead of a loop between begin() and end()
  with push_back().

Differential Revision: http://reviews.llvm.org/D12813

llvm-svn: 247588
2015-09-14 18:24:15 +00:00
Chen Li 0d043b52eb [InstCombineCalls] Use isKnownNonNullAt() to check nullness of passing arguments at callsite
Summary: This patch replaces isKnownNonNull() with isKnownNonNullAt() when checking nullness of passing arguments at callsite. In this way it can handle cases where the argument does not have nonnull attribute but has a dominating null check from the CFG. It also adds assertions in isKnownNonNull() and isKnownNonNullFromDominatingCondition() to make sure the value checked is pointer type (as defined in LLVM document). These assertions might trip failures in things which are not  covered under llvm/test, but fixes should be pretty obvious. 

Reviewers: reames

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D12779

llvm-svn: 247587
2015-09-14 18:10:43 +00:00
David Blaikie aff29d3031 Revert "[opaque pointer type] update for LLVM API change"
This was the wrong direction to take anyway (because ultimately the
GlobalValue needed the pointee type again and /it/ used
PointerType::getElementType eventually anyway)... let's go a different way.

This reverts commit r236161.

llvm-svn: 247586
2015-09-14 18:02:04 +00:00
David Blaikie 16a2f3e302 Revert "[opaque pointer type] Pass GlobalAlias the actual pointer type rather than decomposing it into pointee type + address space"
This was a flawed change - it just caused the getElementType call to be
deferred until later, when we really need to remove it. Now that the IR
for GlobalAliases has been updated, the root cause is addressed that way
instead and this change is no longer needed (and in fact gets in the way
- because we want to pass the pointee type directly down further).

Follow up patches to push this through GlobalValue, bitcode format, etc,
will come along soon.

This reverts commit 236160.

llvm-svn: 247585
2015-09-14 18:01:59 +00:00
Samuel Antao c23a8b2d39 Update cxx-irgen.cpp test to allow signext in alwaysinline functions.
This was causing an error in Power8 targets.

llvm-svn: 247584
2015-09-14 17:41:32 +00:00
Jonathan Peyton 8977618773 Removing the Makefile/Perl build system.
This change deletes the Makefile+Perl build system and all files used by it
which aren't used by the CMake build system. This included many Perl files,
*.mk files, iomp* files.  This change also updates the README's and
index.html to instruct the user to use the CMake build system. All mentioning
of the Perl+Makefile based system are removed.

Differential Revision: http://reviews.llvm.org/D12331

llvm-svn: 247583
2015-09-14 17:20:30 +00:00
Davide Italiano 2c007d050a [llvm-mc] Better error handling in ENOENT case + test.
This is a follow up to r247518.
As a general note, I think we could do a much better job testing for
error conditions in tools. I already anticipated in a previous mail,
but while implementing this I noticed that the code coverage we have 
for error checking is pretty low. I can arbitrarily remove checks from 
several tools and the suite still passes.

Differential Revision:	 http://reviews.llvm.org/D12846

llvm-svn: 247582
2015-09-14 17:10:01 +00:00
Michael Kruse 69f3788c36 Revise polly-{update|check}-format targets
Summary:
Make clang-format run on each file independently using
add_custom_format (instead using a shell script in utils/). The targets
polly-{update|check}-format depend on these.

The primary motivation is to make them work on Windows, but also
improves them generally:
- Each file update/check can run in parallel (Although they do not take
  long to run anyway)
- Implicit dependency on clang-format, so it recompiles if necessary
- polly-check-format shows the formatting difference if failing

Differential Revision: http://reviews.llvm.org/D12837

llvm-svn: 247581
2015-09-14 16:59:50 +00:00
Alexander Kornienko 64aa388efa [clang-tidy] updated misc-sizeof-container docs.
llvm-svn: 247580
2015-09-14 16:56:57 +00:00
Stephane Sezer e0f603fad5 Use SI_KERNEL on platforms defining it
Summary:
Linux and FreeBSD occasionally send SI_KERNEL codes, nonexistent on other platforms.

Problem caught on NetBSD.

Reviewers: joerg, sas

Subscribers: sas, lldb-commits, emaste

Differential Revision: http://reviews.llvm.org/D12659

Change by Kamil Rytarowski <n54@gmx.com>

llvm-svn: 247579
2015-09-14 16:51:58 +00:00
Alexander Kornienko 6ae0a630b8 [clang-tidy] misc-sizeof-container: remove fix-it hints
This turned out to be a rather noisy check, so automated fixes will only do
harm. Remove them completely.

llvm-svn: 247578
2015-09-14 16:51:52 +00:00
Adrian Prantl 3565af4066 dsymutil: Factor out the DIE cloning into a DIECloner class. (NFC)
llvm-svn: 247577
2015-09-14 16:46:10 +00:00
Todd Fiala 5c37863daf Cleaned up a few unexpected successes on OS X
TestCallStdStringFunction
TestCallWithTimeout
TestConstVariables
TestClassTypes

llvm-svn: 247576
2015-09-14 16:25:34 +00:00
Jun Bum Lim 34b9bd0435 Improve ISel using across lane min/max reduction
In vectorized integer min/max reduction code, the final "reduce" step
is sub-optimal. In AArch64, this change wll combine :
  %svn0 = vector_shuffle %0, undef<2,3,u,u>
  %smax0 = smax %0, svn0
  %svn3 = vector_shuffle %smax0, undef<1,u,u,u>
  %sc = setcc %smax0, %svn3, gt
  %n0 = extract_vector_elt %sc, #0
  %n1 = extract_vector_elt %smax0, #0
  %n2 = extract_vector_elt $smax0, #1
  %result = select %n0, %n1, n2
becomes :
  %1 = smaxv %0
  %result = extract_vector_elt %1, 0

This change extends r246790.

llvm-svn: 247575
2015-09-14 16:19:52 +00:00
Pavel Labath 11282dcac6 Skip TestBatchMode for remote platforms
the test does not know how to run executables on the remote platform.

llvm-svn: 247574
2015-09-14 16:11:11 +00:00
Daniel Sanders 7d6d898826 [mips] Unified the MipsMemSimm9GPRAsmOperand and MipsMemSimm9AsmOperand operands, NFC.
Summary:
These operands had the same purpose, however the MipsMemSimm9GPRAsmOperand
operand was only for micromips32r6 and the MipsMemSimm9AsmOperand did not
have a ParserMatchClass.

Patch by Scott Egerton

Reviewers: vkalintiris, dsanders

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D12730

llvm-svn: 247573
2015-09-14 15:57:24 +00:00
Michael Kruse 2846877d88 Replace some SmallVector-typed parameters by ArrayRef
ArrayRef avoids making implementation details such as the number of stack elements to be part of the function signature.

llvm-svn: 247572
2015-09-14 15:45:33 +00:00
Tamas Berghammer f8fd9b5263 Fix a possible SEGV in SymbolFileDWARF
The iterator pointing to an element of a dense map was used after
the element from was removed from the map what isn't guaranteed to be
valid at that time.

llvm-svn: 247571
2015-09-14 15:44:29 +00:00
JF Bastien 26aca14b15 [MergeFuncs] Fix bug in merging GetElementPointers
GetElementPointers must have the first argument's type compared
for structural equivalence. Previously the code erroneously compared the
pointer's type, but this code was dead because all pointer types (of the
same address space) are the same. The pointee must be compared instead
(using the type stored in the GEP, not from the pointer type which will
be erased anyway).

Author: jrkoenig
Reviewers: dschuff, nlewycky, jfb
Subscribers: nlewycky, llvm-commits
Differential revision: http://reviews.llvm.org/D12820

llvm-svn: 247570
2015-09-14 15:37:48 +00:00
John Brawn 056e67865a [ARM] Extract shifts out of multiply-by-constant
Turning (op x (mul y k)) into (op x (lsl (mul y k>>n) n)) is beneficial when
we can do the lsl as a shifted operand and the resulting multiply constant is
simpler to generate.

Do this by doing the transformation when trying to select a shifted operand,
as that ensures that it actually turns out better (the alternative would be to
do it in PreprocessISelDAG, but we don't know for sure there if extracting the
shift would allow a shifted operand to be used).

Differential Revision: http://reviews.llvm.org/D12196

llvm-svn: 247569
2015-09-14 15:19:41 +00:00
Ed Maste 37366e5698 The pipe2(2) call is supported on NetBSD
Patch by Kamil Rytarowski.

Differential Revision:	http://reviews.llvm.org/D12746

llvm-svn: 247568
2015-09-14 15:12:49 +00:00
Todd Fiala e68a15e7bc Removed XFAIL marker from passing tests, rdars 18684124, 15367233
Related to these two test case classes:
test/driver/batch_mode/TestBatchMode.py
test/functionalities/inferior-assert/TestInferiorAssert.py

llvm-svn: 247567
2015-09-14 14:48:53 +00:00