Aaron Ballman [Tue, 16 Feb 2016 15:35:51 +0000 (15:35 +0000)]
A signed bitfield's range is [-1,0], so assigning 1 is technically an overflow. However, the other bitfield requires a signed value (it supports negative offsets), so it is slightly better to retain a signed 1-bit bitfield and use -1 instead of 1. Silences an MSVC warning.
llvm-svn: 260973
Aaron Ballman [Tue, 16 Feb 2016 15:29:06 +0000 (15:29 +0000)]
Reverting r260922-260923; they cause link failures with MSVC.
http://lab.llvm.org:8011/builders/lldb-x86-windows-msvc2015/builds/15436/steps/build/logs/stdio
http://bb.pgr.jp/builders/msbuild-llvmclang-x64-msc18-DA/builds/961/steps/build_llvm/logs/stdio
llvm-svn: 260972
Dan Gohman [Tue, 16 Feb 2016 15:17:21 +0000 (15:17 +0000)]
[WebAssembly] Create new registers instead of reusing old ones in RegStackify.
This avoids some complications updating LiveIntervals to be aware of the new
register lifetimes, because we can just compute new intervals from scratch
rather than describe how the old ones have been changed.
llvm-svn: 260971
Rafael Espindola [Tue, 16 Feb 2016 15:16:00 +0000 (15:16 +0000)]
Reapply r260489.
Original commit message:
[readobj] Dump DT_JMPREL relocations when outputting dynamic relocations.
The bits of r260488 it depends on have been committed.
llvm-svn: 260970
Tamas Berghammer [Tue, 16 Feb 2016 15:14:36 +0000 (15:14 +0000)]
Revert "Use BKPT instead of UDF for arm/thumb breakpoints"
This reverts commit
293c18e067d663e0fe93e6f3d800c2a4bfada2b0.
The BKPT instruction generates SIGBUS instead of SIGTRAP in the Linux
kernel on Nexus 6 - 5.1.1 (kernel version 3.10.40). Revert the CL
until we can figure out how can we hanble the SIGBUS or how to get
back a SIGTRAP using the BKPT instruction.
llvm-svn: 260969
Dan Gohman [Tue, 16 Feb 2016 15:14:23 +0000 (15:14 +0000)]
[WebAssembly] Implement support for custom NaN bit patterns.
llvm-svn: 260968
Rafael Espindola [Tue, 16 Feb 2016 14:50:39 +0000 (14:50 +0000)]
Introduce a getAsRange helper.
This requires making an error message a bit more generic, but that seems
a reasonable tradeoff.
Extracted from r260488 but simplified a bit.
llvm-svn: 260967
Marshall Clow [Tue, 16 Feb 2016 14:42:23 +0000 (14:42 +0000)]
Add some comments
llvm-svn: 260966
Tobias Grosser [Tue, 16 Feb 2016 14:37:24 +0000 (14:37 +0000)]
ScopDectect: Allow memory accesses with different element types by default (try 3)
First support for this feature was committed in r259784. Support for
loop invariant load hoisting with different types was added by
Johannes Doerfert in r260045 and r260886.
llvm-svn: 260965
Marshall Clow [Tue, 16 Feb 2016 14:35:56 +0000 (14:35 +0000)]
Added a (private) status page for the Jacksonville meeting
llvm-svn: 260964
Rafael Espindola [Tue, 16 Feb 2016 14:27:33 +0000 (14:27 +0000)]
Move DynRegionInfo out of the ELFDumper.
This reduces indentation in preparation to adding a bit more code to it.
Extracted from r260488.
llvm-svn: 260963
Rafael Espindola [Tue, 16 Feb 2016 14:17:48 +0000 (14:17 +0000)]
This reverts commit r260488 and r260489.
Original messages:
Revert "[readobj] Handle ELF files with no section table or with no program headers."
Revert "[readobj] Dump DT_JMPREL relocations when outputting dynamic relocations."
r260489 depends on r260488 and among other issues r260488 deleted error
handling code.
llvm-svn: 260962
Vasileios Kalintiris [Tue, 16 Feb 2016 14:15:27 +0000 (14:15 +0000)]
Issue a warning instead of fatal errors when checks for libatomic fail.
This should fix PR26631, PR26622 and has the nice property that the addition
of the CheckLibcxxAtomic.cmake module acts as an NFC on the platforms of the
reporters (at least for the time being).
As these bug reports explain, CMake fails the atomic check because the
include headers might not exist in the host environment. We could
potentially point to the headers provided by libcxx itself.
llvm-svn: 260961
Rafael Espindola [Tue, 16 Feb 2016 13:12:55 +0000 (13:12 +0000)]
Start adding release notes for lld.
llvm-svn: 260960
Andrey Turetskiy [Tue, 16 Feb 2016 12:47:45 +0000 (12:47 +0000)]
[X86] PR26575: Fix LEA optimization pass.
Add a missing check for a type of address displacement operand of the load/store instruction being a candidate for LEA substitution.
Ref: https://llvm.org/bugs/show_bug.cgi?id=26575
Differential Revision: http://reviews.llvm.org/D17261
llvm-svn: 260959
Johannes Doerfert [Tue, 16 Feb 2016 12:36:14 +0000 (12:36 +0000)]
Replace getLoopForInst by getLoopForStmt
This patch was extracted from http://reviews.llvm.org/D13611.
llvm-svn: 260958
Alexey Bataev [Tue, 16 Feb 2016 12:13:49 +0000 (12:13 +0000)]
[OPENMP] Allow to use compound assignment operators.
Loop-based directives allow to use iterators as loop counters. Iterators are allowed to define their own operators. This patch allows to use compound assignment operators for iterators.
llvm-svn: 260957
Johannes Doerfert [Tue, 16 Feb 2016 12:11:03 +0000 (12:11 +0000)]
Set AST Build for all statements [NFC]
llvm-svn: 260956
Johannes Doerfert [Tue, 16 Feb 2016 12:10:42 +0000 (12:10 +0000)]
[FIX] LICM test case
llvm-svn: 260955
Alexey Bataev [Tue, 16 Feb 2016 11:18:12 +0000 (11:18 +0000)]
[OPENMP] Improved handling of pseudo-captured expressions in OpenMP.
Expressions inside 'schedule'|'dist_schedule' clause must be captured in
combined directives to avoid possible crash during codegen. Patch
improves handling of such constructs
llvm-svn: 260954
Haojian Wu [Tue, 16 Feb 2016 10:36:51 +0000 (10:36 +0000)]
[clang-tidy] Fix an assert failure in `modernize-loop-convert`.
Summary:
The test code will trigger following an assert failure:
assert.h assertion failed at LoopConvertUtils.cpp:560 in
bool clang::tidy::modernize::ForLoopIndexUseVisitor::TraverseMemberExpr(clang::MemberExpr*): ExprType->isPointerType() && "Operator-> returned non-pointer type"
Reviewers: alexfh
Differential Revision: http://reviews.llvm.org/D17287
llvm-svn: 260953
Haojian Wu [Tue, 16 Feb 2016 10:31:33 +0000 (10:31 +0000)]
[clang-tidy] Fix an assert failure of ForStmt in `readability-braces-around-statements` check.
Reviewers: alexfh
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D17134
llvm-svn: 260952
Pavel Labath [Tue, 16 Feb 2016 09:58:50 +0000 (09:58 +0000)]
Bump up timeout in TestChangeProcessGroup
The test fails very rarely. I suspect this is simply because the inferior does not have enough
time to create the file under heavy load.
llvm-svn: 260951
Pavel Labath [Tue, 16 Feb 2016 09:58:47 +0000 (09:58 +0000)]
Mark TestLldbGdbServer.test_written_M_content_reads_back_correctly as flaky on linux
I believe the root cause is the asynchronous arrival of inferior stdio (pr25652).
llvm-svn: 260950
Benjamin Kramer [Tue, 16 Feb 2016 09:53:47 +0000 (09:53 +0000)]
[Hexagon] Hoist nonnull assert up.
Once a pointer is turned into a reference it cannot be nullptr, clang
rightfully warns about this assert being a tautology. Put the assert
before the reference is created.
llvm-svn: 260949
Alexander Kornienko [Tue, 16 Feb 2016 09:49:05 +0000 (09:49 +0000)]
[clang-tidy] Enhance modernize-redundant-void-arg check to apply fixes to header files
Fixes http://llvm.org/PR25894
Patch by Richard Thomson!
Differential revision: http://reviews.llvm.org/D16953
llvm-svn: 260948
Amaury Sechet [Tue, 16 Feb 2016 08:37:01 +0000 (08:37 +0000)]
Make sure the functions' range is empty before going through it in the LLVM C API test
llvm-svn: 260947
Mohit K. Bhakkad [Tue, 16 Feb 2016 08:33:37 +0000 (08:33 +0000)]
[Compiler-rt][MSan][MIPS] Resolve gethostbyname_r_erange for MIPS
Reviewers: eugenis, kcc, samsonov
Subscribers: jaydeep, sagar, llvm-commits
Differential Revision: http://reviews.llvm.org/D17135
llvm-svn: 260946
NAKAMURA Takumi [Tue, 16 Feb 2016 08:13:36 +0000 (08:13 +0000)]
clang-tools-extra/test/Unit/lit.site.cfg.in: Prune on_clone. I guess it has been unused since r188006.
llvm-svn: 260944
Craig Topper [Tue, 16 Feb 2016 07:45:07 +0000 (07:45 +0000)]
[X86] Fix typos. NFC
llvm-svn: 260943
Craig Topper [Tue, 16 Feb 2016 07:45:04 +0000 (07:45 +0000)]
[X86] Use range-based for loop. NFC
llvm-svn: 260942
Amaury Sechet [Tue, 16 Feb 2016 07:33:23 +0000 (07:33 +0000)]
Do some refactoring in constant generation in the C API echo test. NFC
llvm-svn: 260941
Craig Topper [Tue, 16 Feb 2016 07:28:03 +0000 (07:28 +0000)]
[X86] Fix typo in comment. NFC
llvm-svn: 260940
Amaury Sechet [Tue, 16 Feb 2016 07:08:49 +0000 (07:08 +0000)]
Generate functions in 2 steps in the C API echo test. NFC
llvm-svn: 260939
Junmo Park [Tue, 16 Feb 2016 06:46:58 +0000 (06:46 +0000)]
[SCEVExpander] Make findExistingExpansion smarter
Summary:
Extending findExistingExpansion can use existing value in ExprValueMap.
This patch gives 0.3~0.5% performance improvements on
benchmarks(test-suite, spec2000, spec2006, commercial benchmark)
Reviewers: mzolotukhin, sanjoy, zzheng
Differential Revision: http://reviews.llvm.org/D15559
llvm-svn: 260938
Argyrios Kyrtzidis [Tue, 16 Feb 2016 05:39:33 +0000 (05:39 +0000)]
[Frontend] Make sure WrapperFrontendAction updates CurrentInput after calling BeginSourceFileAction.
I don't have a test case to add unfortunately.
llvm-svn: 260937
Amaury Sechet [Tue, 16 Feb 2016 05:11:24 +0000 (05:11 +0000)]
Restore the capability to manipulate datalayout from the C API
Summary:
This consist in variosu addition to the C API:
LLVMTargetDataRef LLVMGetModuleDataLayout(LLVMModuleRef M);
void LLVMSetModuleDataLayout(LLVMModuleRef M, LLVMTargetDataRef DL);
LLVMTargetDataRef LLVMCreateTargetMachineData(LLVMTargetMachineRef T);
Reviewers: joker.eph, Wallbraker, echristo
Subscribers: axw
Differential Revision: http://reviews.llvm.org/D17255
llvm-svn: 260936
Craig Topper [Tue, 16 Feb 2016 04:24:58 +0000 (04:24 +0000)]
[TableGen] Fix inconsistent spacing. NFC
llvm-svn: 260935
Craig Topper [Tue, 16 Feb 2016 04:24:56 +0000 (04:24 +0000)]
[TableGen] Stop passing by reference an integer that doesn't get modified. NFC
llvm-svn: 260934
Craig Topper [Tue, 16 Feb 2016 04:24:54 +0000 (04:24 +0000)]
[TableGen] Remove unused member variable. NFC
llvm-svn: 260933
Jason Molenda [Tue, 16 Feb 2016 04:20:56 +0000 (04:20 +0000)]
Fix buildbot failure because I got an include path wrong.
llvm-svn: 260932
Craig Topper [Tue, 16 Feb 2016 04:17:42 +0000 (04:17 +0000)]
Remove an unnecessary std::move to fix -Wpessimizing-move warning.
llvm-svn: 260931
Jason Molenda [Tue, 16 Feb 2016 04:14:33 +0000 (04:14 +0000)]
Add -Wimplicit-fallthrough command line option to clang in
the xcode project file to catch switch statements that have a
case that falls through unintentionally.
Define LLVM_FALLTHROUGH to indicate instances where a case has code
and intends to fall through. This should be in llvm/Support/Compiler.h;
Peter Collingbourne originally checked in there (r237766), then
reverted (r237941) because he didn't have time to mark up all the
'case' statements that were intended to fall through. I put together
a patch to get this back in llvm http://reviews.llvm.org/D17063 but
it hasn't been approved in the past week. I added a new
lldb-private-defines.h to hold the definition for now.
Every place in lldb where there is a comment that the fall-through
is intentional, I added LLVM_FALLTHROUGH to silence the warning.
I haven't tried to identify whether the fallthrough is a bug or
not in the other places.
I haven't tried to add this to the cmake option build flags.
This warning will only work for clang.
This build cleanly (with some new warnings) on macosx with clang
under xcodebuild, but if this causes problems for people on other
configurations, I'll back it out.
llvm-svn: 260930
NAKAMURA Takumi [Tue, 16 Feb 2016 03:17:13 +0000 (03:17 +0000)]
clang/test/Driver/ps4-linker-win.c: Tweak substitutions if %PATH% ends with '\\', or lit complains with "parser error".
llvm-svn: 260929
Craig Topper [Tue, 16 Feb 2016 02:48:30 +0000 (02:48 +0000)]
[TableGen] Use range-based for loop. NFC
llvm-svn: 260928
Vedant Kumar [Tue, 16 Feb 2016 02:14:44 +0000 (02:14 +0000)]
Simplify users of StringRef::{l,r}trim (clang) (NFC)
r260925 introduced a version of the *trim methods which is preferable
when trimming a single kind of character. Update all users in clang.
llvm-svn: 260927
Vedant Kumar [Tue, 16 Feb 2016 02:06:01 +0000 (02:06 +0000)]
Simplify users of StringRef::{l,r}trim (NFC)
r260925 introduced a version of the *trim methods which is preferable
when trimming a single kind of character. Update all users in llvm.
llvm-svn: 260926
Vedant Kumar [Tue, 16 Feb 2016 01:48:39 +0000 (01:48 +0000)]
[ADT] Add StringRef::{l,r}trim(char) overloads (NFC)
Add support for trimming a single kind of character from a StringRef.
This makes the common case of trimming null bytes much neater. It's also
probably a bit speedier too, since it avoids creating a std::bitset in
find_{first,last}_not_of.
llvm-svn: 260925
Quentin Colombet [Tue, 16 Feb 2016 01:38:09 +0000 (01:38 +0000)]
[GlobalISel][IRTranslator] Override getPassName.
llvm-svn: 260924
Quentin Colombet [Tue, 16 Feb 2016 01:05:16 +0000 (01:05 +0000)]
[GlobalISel] Add missing file in previous commit.
llvm-svn: 260923
Quentin Colombet [Tue, 16 Feb 2016 00:57:44 +0000 (00:57 +0000)]
[GlobalISel] Get rid of the ifdefs in TargetLowering.
Introduce a new API used only by GlobalISel: CallLowering.
This API will contain target hooks dedicated to call lowering.
llvm-svn: 260922
Akira Hatanaka [Tue, 16 Feb 2016 00:46:03 +0000 (00:46 +0000)]
Remove unnecessary regex in the test cases I fixed in r260496.
llvm-svn: 260921
Amaury Sechet [Tue, 16 Feb 2016 00:23:52 +0000 (00:23 +0000)]
Deprecate LLVMGetDataLayout and replace it by LLVMGetDataLayoutStr
Summary: The name is confusing as it matche another method on the module.
Reviewers: joker.eph, Wallbraker, echristo
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D17283
llvm-svn: 260920
Amaury Sechet [Tue, 16 Feb 2016 00:22:02 +0000 (00:22 +0000)]
Kill LLVMAddTargetData
Summary: It's red, it's dead.
Reviewers: joker.eph, Wallbraker, echristo
Subscribers: llvm-commits, axw
Differential Revision: http://reviews.llvm.org/D17282
llvm-svn: 260919
NAKAMURA Takumi [Tue, 16 Feb 2016 00:17:56 +0000 (00:17 +0000)]
MITests: Update libdeps. llvm/Target/TargetOptions.h depends on MC.
llvm-svn: 260918
Zia Ansari [Mon, 15 Feb 2016 23:44:13 +0000 (23:44 +0000)]
Implemented stack symbol table ordering/packing optimization to improve data locality and code size from SP/FP offset encoding.
Differential Revision: http://reviews.llvm.org/D15393
llvm-svn: 260917
Amaury Sechet [Mon, 15 Feb 2016 23:40:06 +0000 (23:40 +0000)]
Rename LLVMSetDataLayout's argument to match what they stand for
llvm-svn: 260916
Matthias Braun [Mon, 15 Feb 2016 22:09:38 +0000 (22:09 +0000)]
unittests/MI: Add Core library reference
llvm-svn: 260915
Saleem Abdulrasool [Mon, 15 Feb 2016 21:50:28 +0000 (21:50 +0000)]
Silence some clang warnings
Silences -Wmissing-brace and -Wformat-pedantic warnings from clang on Linux. NFC.
llvm-svn: 260914
Matthias Braun [Mon, 15 Feb 2016 21:38:42 +0000 (21:38 +0000)]
SmallPtrSet: Avoid initializing Array in the small case.
This patch avoids the initial memset at the cost of making iterators
slightly more complex. This should be beneficial as most SmallPtrSets
hold no or only a few elements, while iterating over them is less
common.
Differential Revision: http://reviews.llvm.org/D16672
llvm-svn: 260913
Sylvestre Ledru [Mon, 15 Feb 2016 20:38:54 +0000 (20:38 +0000)]
fix an indent issue in the doc which causes sphinx to fail with some versions
llvm-svn: 260912
Matthias Braun [Mon, 15 Feb 2016 20:06:22 +0000 (20:06 +0000)]
APInt: Slightly simplify countLeadingZerosSlowCase()
We always clear the unused bits in the most signifant word so there is
no need to mask them out in countLeadingZerosSlowCase().
Differential Revision: http://reviews.llvm.org/D16621
llvm-svn: 260911
Matthias Braun [Mon, 15 Feb 2016 20:06:19 +0000 (20:06 +0000)]
APInt: Further simplify APInt::EqualSlowCase as suggested by Duncan
llvm-svn: 260910
Jim Ingham [Mon, 15 Feb 2016 20:04:15 +0000 (20:04 +0000)]
Refinement of r260624. It is possible somebody might try to add to the map
while we are finalizing its elements. Prevent that.
<rdar://problem/
24554920>
llvm-svn: 260909
Ahmed Bougacha [Mon, 15 Feb 2016 19:32:54 +0000 (19:32 +0000)]
[X86] Remove now-dead variable and redundant assert. NFC.
The variable was made dead in NDEBUG by r260901, but the assert
was redundant anyway: get rid of both.
llvm-svn: 260908
Matthias Braun [Mon, 15 Feb 2016 19:30:11 +0000 (19:30 +0000)]
Fix typo in LiveIntervalTest
llvm-svn: 260907
Matthias Braun [Mon, 15 Feb 2016 19:25:36 +0000 (19:25 +0000)]
LiveIntervalAnalysis: Support moving of subregister defs in handleMove
This is an updated version which fixes a bug that happened with
uses tied to an earlyclobber operand which end at an unusual slotindex.
If two definitions write to independent subregisters then they can be
put in any order. LiveIntervalAnalysis::handleMove() did not support
this previously because it looks like moving a definition of a vreg past
another one.
This is a modified version of a patch proposed (two years ago) by
Vincent Lejeune! This version does not touch the read-undef flags and is
extended for the case of moving a subregister def behind all uses - this
can happen for subregister defs that are completely unused.
Differential Revision: http://reviews.llvm.org/D9067
llvm-svn: 260906
Matthias Braun [Mon, 15 Feb 2016 19:25:34 +0000 (19:25 +0000)]
Add unittest for LiveIntervalAnalysis::handleMove()
llvm-svn: 260905
Matthias Braun [Mon, 15 Feb 2016 19:25:31 +0000 (19:25 +0000)]
MachineVerifier: Add parameter to choose if MachineFunction::verify() aborts
The abort on error behaviour is unpractical for debugger and unittest
usage.
llvm-svn: 260904
Colin LeMahieu [Mon, 15 Feb 2016 18:47:55 +0000 (18:47 +0000)]
[NFC] Fixing naming convention, lowercase start of function name.
llvm-svn: 260903
Colin LeMahieu [Mon, 15 Feb 2016 18:42:07 +0000 (18:42 +0000)]
[Hexagon] Wrapping all MCExprs inside MCOperands within HexagonMCExpr to simplify handling and allow flags on the expression.
llvm-svn: 260902
Ahmed Bougacha [Mon, 15 Feb 2016 18:07:29 +0000 (18:07 +0000)]
[CodeGen] Document and use getConstant's splat-building feature. NFC.
Differential Revision: http://reviews.llvm.org/D17229
llvm-svn: 260901
Simon Pilgrim [Mon, 15 Feb 2016 17:57:40 +0000 (17:57 +0000)]
[X86][SSE2] Regenerated sse2 tests
llvm-svn: 260900
Jonas Paulsson [Mon, 15 Feb 2016 16:43:15 +0000 (16:43 +0000)]
[ScheduleDAGInstrs] isUnsafeMemoryObject() removed
This function was basically useless, since volatile memacesses or MIs with
unmodelled sideffects become global memory objects, and the other little
checks are also done elsewhere.
Reviewed by Andy Trick
http://reviews.llvm.org/D16881
llvm-svn: 260899
Tim Northover [Mon, 15 Feb 2016 16:38:10 +0000 (16:38 +0000)]
Darwin: fix stdlib handling when CLANG_DEFAULT_STDLIB is set
I'd accidentally skipped the CMake check in a premature optimisation. I'd also
put the original test in completely the wrong place.
Thanks Jonas Hahnfeld!
llvm-svn: 260898
Krzysztof Parzyszek [Mon, 15 Feb 2016 16:15:02 +0000 (16:15 +0000)]
[Hexagon] Missed testcase update in r260895
llvm-svn: 260897
Scott Egerton [Mon, 15 Feb 2016 16:11:51 +0000 (16:11 +0000)]
[mips] Implemented the .hword directive.
Summary:
In order to pass the tests, this required marking R_MIPS_16 relocations
as needing to point to the symbol and not the section.
Reviewers: vkalintiris, dsanders
Subscribers: dsanders, llvm-commits
Differential Revision: http://reviews.llvm.org/D17200
llvm-svn: 260896
Krzysztof Parzyszek [Mon, 15 Feb 2016 16:01:01 +0000 (16:01 +0000)]
[Hexagon] Use zero-extending loads for anyext
llvm-svn: 260895
Silviu Baranga [Mon, 15 Feb 2016 15:38:17 +0000 (15:38 +0000)]
[LV] Add support for insertelt/extractelt processing during type truncation
Summary:
While shrinking types according to the required bits, we can
encounter insert/extract element instructions. This will cause us to
reach an llvm_unreachable statement.
This change adds support for truncating insert/extract element
operations, and adds a regression test.
Reviewers: jmolloy
Subscribers: mzolotukhin, llvm-commits
Differential Revision: http://reviews.llvm.org/D17078
llvm-svn: 260893
Roman Gareev [Mon, 15 Feb 2016 14:48:50 +0000 (14:48 +0000)]
Tweak the LICM code to reuse the first sub-loop instead of creating a new one
LICM starts with an *empty* AST, and then merges in each sub-loop. While the
add code is appropriate for sub-loop 2 and up, it's utterly unnecessary for
sub-loop 1. If the AST starts off empty, we can just clone/move the contents
of the subloop into the containing AST.
Reviewed-by: Philip Reames <listmail@philipreames.com>
Differential Revision: http://reviews.llvm.org/D16753
llvm-svn: 260892
Simon Pilgrim [Mon, 15 Feb 2016 14:09:35 +0000 (14:09 +0000)]
[X86] More thorough partial-register division checks
For when grep counts are just not enough...
llvm-svn: 260891
Simon Pilgrim [Mon, 15 Feb 2016 14:04:05 +0000 (14:04 +0000)]
[X86] Regenerated 64/128 bit multiply tests
llvm-svn: 260890
Simon Pilgrim [Mon, 15 Feb 2016 13:50:48 +0000 (13:50 +0000)]
[X86][SSE] More thorough testing of all-ones vectors re-materialization
llvm-svn: 260889
Simon Pilgrim [Mon, 15 Feb 2016 13:41:41 +0000 (13:41 +0000)]
[X86][SSE] Regenerated uint2fp special case tests
llvm-svn: 260888
NAKAMURA Takumi [Mon, 15 Feb 2016 13:19:13 +0000 (13:19 +0000)]
Make llvm/test/tools/llvm-symbolizer/pdb/pdb.test Py3-compatible.
llvm-svn: 260887
Johannes Doerfert [Mon, 15 Feb 2016 12:42:05 +0000 (12:42 +0000)]
[FIX] Check the next base pointer for possible invariant loads
A load can only be invariant if its base pointer is invariant too. To
this end, we check if the base pointer is defined inside the region or
outside. In the former case we recursively check if we can (and
therefore will) hoist the base pointer too. Only if that happends we
can hoist the load.
llvm-svn: 260886
Simon Pilgrim [Mon, 15 Feb 2016 12:32:16 +0000 (12:32 +0000)]
[X86][SSE] Regenerated fast isel intrinsics tests
llvm-svn: 260885
Johannes Doerfert [Mon, 15 Feb 2016 12:21:11 +0000 (12:21 +0000)]
Revert "[FIX] Hoist accesses if AA stated they are invariant"
This reverts commit
98efa006c96ac981c00d2e386ec1102bce9f549a.
The fix was broken since we do not use AA in the ScopDetection anymore to
check for invariant accesses.
llvm-svn: 260884
Jonas Hahnfeld [Mon, 15 Feb 2016 11:28:15 +0000 (11:28 +0000)]
[compiler-rt] Fix test failures when switching default C++ library
1. Add two explicit -stdlib=libstdc++ in conjunction with -static-libstdc++
2. Pass -nostdinc++ when adding include paths for libc++ built for tsan. This
prevents clang finding the headers twice which would confuse #include_next
Differential Revision: http://reviews.llvm.org/D17189
llvm-svn: 260883
Andrey Bokhanko [Mon, 15 Feb 2016 10:44:27 +0000 (10:44 +0000)]
PR26449: Tests for builtin_classify_type fix
In my previous commit (rL260881) I forget to svn add tests. This commit adds
them.
Differential Revision: http://reviews.llvm.org/D16846
llvm-svn: 260882
Andrey Bokhanko [Mon, 15 Feb 2016 10:39:04 +0000 (10:39 +0000)]
PR26449: Fixes for bugs in __builtin_classify_type implementation
This patch fixes the following bugs in __builtin_classify_type implementation:
1) Support for member functions and fields
2) Same behavior as GCC in C mode (specifically, return integer_type_class for
enums and pointer_type_class for function pointers and arrays). Behavior in
C++ mode didn't changed.
Also, it refactors the whole implementation, by replacing a sequence of
if-else-if with a couple of switches.
Differential Revision: http://reviews.llvm.org/D16846
llvm-svn: 260881
Scott Egerton [Mon, 15 Feb 2016 10:04:38 +0000 (10:04 +0000)]
Reverted r260879 as it caused test failures in lld.
llvm-svn: 260880
Scott Egerton [Mon, 15 Feb 2016 09:34:15 +0000 (09:34 +0000)]
[mips] Removed the SHF_ALLOC flag from the .pdr section.
Summary:
This section is used for debug information and has no need to be
in memory at runtime. With this patch, LLVM now emits the same flags as
the GNU assembler. This patch also fixes an error when compiling
the Linux kernel, The error is that there are relocations within the
.pdr section in a VDSO.
Reviewers: vkalintiris, dsanders
Subscribers: llvm-commits, dsanders
Differential Revision: http://reviews.llvm.org/D17199
llvm-svn: 260879
Igor Breger [Mon, 15 Feb 2016 08:25:28 +0000 (08:25 +0000)]
AVX512: Change store size of kmask. Store size of v8i1, v4i1 , v2i1 and i1 are changed to 16 bits.
If KMOVB not supported (require AVX512DQ) only KMOVW can be used so store size should be 2 bytes.
Differential Revision: http://reviews.llvm.org/D17138
llvm-svn: 260878
Alexey Bataev [Mon, 15 Feb 2016 08:07:17 +0000 (08:07 +0000)]
[OPENMP] Remove extra sync barriers for 'firstprivate' clause.
Sync barrier will be emitted after generation of firstprivate variables
only if one of the firstprivate vars is used in lastprivate clause.
llvm-svn: 260877
Zia Ansari [Mon, 15 Feb 2016 05:11:51 +0000 (05:11 +0000)]
Fixed non-NULL terminating array bug in SanitizerCommon.StartSubprocessTest that caused them to fail sometimes and act flaky.
Differential Revision: http://reviews.llvm.org/D17228
llvm-svn: 260876
Junmo Park [Mon, 15 Feb 2016 04:30:37 +0000 (04:30 +0000)]
Minor code cleanups. NFC.
llvm-svn: 260875
NAKAMURA Takumi [Mon, 15 Feb 2016 04:29:36 +0000 (04:29 +0000)]
clangIndex requires LLVMIR as Core, since r260858 uses llvm/IR.
llvm-svn: 260874
Felix Berger [Mon, 15 Feb 2016 04:27:56 +0000 (04:27 +0000)]
[clang-tidy] ClangTidy check to flag uninitialized builtin and pointer fields.
Summary:
This patch is a continuation of http://reviews.llvm.org/D10553 by Jonathan B Coe.
The main additions are:
1. For C++11 the check suggests in-class field initialization as fix. This
makes the fields future proof towards the addition of new constructors.
2 For older language versions the fields are added in the right position
in the initializer list with more tests.
3. User documentation.
Reviewers: alexfh, jbcoe
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D16517
llvm-svn: 260873
Felix Berger [Mon, 15 Feb 2016 04:00:39 +0000 (04:00 +0000)]
Add isAnyPointer() matchers. Register missing matchers.
Summary:
The isAnyPointer() matcher is useful for http://reviews.llvm.org/D15623.
Reviewers: alexfh, klimek
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D15819
llvm-svn: 260872