summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [EarlyCSE] Sort includes. NFC.Geoff Berry2016-04-281-1/+1
| | | | | | | | | | Reviewers: mcrosier Subscribers: mcrosier, llvm-commits Differential Revision: http://reviews.llvm.org/D19617 llvm-svn: 267890
* Rangify for loops, NFC.Yaron Keren2016-04-281-22/+14
| | | | llvm-svn: 267889
* [Inliner] Formatting. NFC.Chad Rosier2016-04-281-36/+41
| | | | | | | Patch by Aditya Kumar! Differential Revision: http://reviews.llvm.org/D19047 llvm-svn: 267888
* [InstCombine] Remove trailing whitespace. NFC.Ahmed Bougacha2016-04-281-1/+1
| | | | | | r267873. llvm-svn: 267887
* Rename isRelRelativeRafael Espindola2016-04-283-12/+12
| | | | | | It was never a particularly good name and is now completely out of date. llvm-svn: 267886
* [FIX] Correct assumption simplificationJohannes Doerfert2016-04-283-6/+26
| | | | | | | | Assumptions and restrictions can both be simplified with the domain of a statement but not the same way. After this patch we will correctly distinguish them. llvm-svn: 267885
* Add a test showing that we can gc parts of .eh_frame.Rafael Espindola2016-04-281-0/+13
| | | | llvm-svn: 267884
* Fix build.Manuel Klimek2016-04-281-1/+1
| | | | llvm-svn: 267883
* Reland r267691 fixing PR27535.Vassil Vassilev2016-04-2812-41/+132
| | | | llvm-svn: 267882
* Add accidentally dropped test to r267880.Tim Northover2016-04-281-0/+10
| | | | | | Forgot "git add". llvm-svn: 267881
* ARMv7k: define __ARM_PCS_VFP since we're hard-float.Tim Northover2016-04-281-3/+4
| | | | | | | | It's a little debateable because we're not truly AAPCS, so I'm certainly not going to define __ARM_PCS, but __ARM_PCS_VFP seems to be really an "hard-float" define, which is a useful thing to have. llvm-svn: 267880
* [SystemZ] Support Swift calling conventionBryan Chan2016-04-282-2/+18
| | | | | | | | | | | | | | | Summary: Port rL265324 to SystemZ to allow using the 'swiftcall' attribute on that architecture. Depends on D19414. Reviewers: kbarton, rjmccall, uweigand Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D19432 llvm-svn: 267879
* Fixed mistype in comment. NFC.George Rimar2016-04-281-1/+1
| | | | llvm-svn: 267878
* Fix spuriously dematerializing reference bug. Fixes PR26612.Manuel Klimek2016-04-281-2/+4
| | | | llvm-svn: 267877
* [Clang][BuiltIn][AVX512] Adding intrinsics fot align{d|q} and palignr ↵Michael Zuckerman2016-04-289-2/+323
| | | | | | | | instruction set Differential Revision: http://reviews.llvm.org/D19588 llvm-svn: 267876
* test: Make test case independent of earlier instructionsTobias Grosser2016-04-281-5/+5
| | | | | | | Instead of matching for %6, we use a regexp to match for the result strings. This test case caused unrelated noise in http://reviews.llvm.org/D15722. llvm-svn: 267875
* BlockGenerator: Drop leftover debug statementTobias Grosser2016-04-281-1/+0
| | | | llvm-svn: 267874
* [InstCombine][SSE] Add MOVMSK support to SimplifyDemandedUseBitsSimon Pilgrim2016-04-282-27/+32
| | | | | | | | | | The MOVMSK instructions copies a vector elements' sign bits to the low bits of a scalar register and zeros the high bits. This patch adds MOVMSK support to SimplifyDemandedUseBits so that its aware that the upper bits are known to be zero. It also removes the call to MOVMSK if none of the lower bits are actually required and just returns zero. Differential Revision: http://reviews.llvm.org/D19614 llvm-svn: 267873
* [OPENMP 4.5] Initial codegen for 'taskloop simd' directive.Alexey Bataev2016-04-283-17/+217
| | | | | | | | | OpenMP 4.5 defines 'taskloop simd' directive, which is combined directive for 'taskloop' and 'simd' directives. Patch adds initial codegen support for this directive and its 2 basic clauses 'safelen' and 'simdlen'. llvm-svn: 267872
* Revert r267784, r267824 and r267830.Benjamin Kramer2016-04-2835-435/+209
| | | | | | | | | | It makes compiler-rt tests fail if the gold plugin is enabled. Revert "Rework interface for bitset-using features to use a notion of LTO visibility." Revert "Driver: only produce CFI -fvisibility= error when compiling." Revert "clang/test/CodeGenCXX/cfi-blacklist.cpp: Exclude ms targets. They would be non-cfi." llvm-svn: 267871
* Revert "[MS] Improved implementation of MS stack pragmas (vtordisp, *_seg)"Denis Zobnin2016-04-287-133/+86
| | | | | | This reverts commit r267866. llvm-svn: 267870
* PR27216: Only define __ARM_FEATURE_FMA when the target has VFPv4Silviu Baranga2016-04-284-6/+9
| | | | | | | | | | | | | | | | | | | | | Summary: According to the ACLE spec, "__ARM_FEATURE_FMA is defined to 1 if the hardware floating-point architecture supports fused floating-point multiply-accumulate". This changes clang's behaviour from emitting this macro for v7-A and v7-R cores to only emitting it when the target has VFPv4 (and therefore support for the floating point multiply-accumulate instruction). Fixes PR27216 Reviewers: t.p.northover, rengolin Subscribers: aemerson, rengolin, cfe-commits Differential Revision: http://reviews.llvm.org/D18963 llvm-svn: 267869
* [include-fixer] Add an option to minimize include paths.Benjamin Kramer2016-04-284-20/+95
| | | | | | | This will always pick the shortest possible path based on -I options. Based on the #include suggestion code for modules. llvm-svn: 267868
* Remote flaky decorator from TestSignalsAPI on linuxPavel Labath2016-04-281-1/+0
| | | | | | | The test seems to pass now, and the test does not seem to be doing anything unusual, so I don't expect it to cause problems. llvm-svn: 267867
* [MS] Improved implementation of MS stack pragmas (vtordisp, *_seg)Denis Zobnin2016-04-287-86/+133
| | | | | | | | | | | Rework implementation of several MS pragmas that use internal stack: vtordisp, {bss|code|const|data}_seg. This patch: 1. Makes #pragma vtordisp use PragmaStack class as *_seg pragmas do; 2. Fixes "#pragma vtordisp()" behavior: it shouldn't affect stack; 3. Saves/restores the stacks on enter/exit a C++ method body. llvm-svn: 267866
* Revert "[MSVC] PR27337: allow static_cast from private base to derived for WTL"Dmitry Polukhin2016-04-283-48/+4
| | | | | | This reverts commit r267534. llvm-svn: 267865
* [tsan] Fix Darwin GCD support after separation of Processor and ThreadStateKuba Brecka2016-04-282-6/+8
| | | | | | Recent TSan changes (r267678) which factor out parts of ThreadState into a Processor structure broke worker threads on OS X. This fixes it by properly calling ProcCreate for GCD worker threads and by replacing some CHECKs with RAW_CHECK in early process initialization. CHECK() in TSan calls the allocator, which requires a valid Processor. llvm-svn: 267864
* [OPENMP] Simplified interface for codegen of tasks, NFC.Alexey Bataev2016-04-284-245/+144
| | | | | | | Reduced number of arguments in member functions of runtime support library for task-based directives. llvm-svn: 267863
* [OPENMP 4.5] Codegen for 'grainsize/num_tasks' clauses of 'taskloop'Alexey Bataev2016-04-284-21/+42
| | | | | | | | | | | | | | | | | | | | | | | directive. OpenMP 4.5 defines 'taskloop' directive and 2 additional clauses 'grainsize' and 'num_tasks' for this directive. Patch adds codegen for these clauses. These clauses are generated as arguments of the '__kmpc_taskloop' libcall and are encoded the following way: void __kmpc_taskloop(ident_t *loc, int gtid, kmp_task_t *task, int if_val, kmp_uint64 *lb, kmp_uint64 *ub, kmp_int64 st, int nogroup, int sched, kmp_uint64 grainsize, void *task_dup); If 'grainsize' is specified, 'sched' argument must be set to '1' and 'grainsize' argument must be set to the value of the 'grainsize' clause. If 'num_tasks' is specified, 'sched' argument must be set to '2' and 'grainsize' argument must be set to the value of the 'num_tasks' clause. It is possible because these 2 clauses are mutually exclusive and can't be used at the same time on the same directive. If none of these clauses is specified, 'sched' argument must be set to '0'. llvm-svn: 267862
* Revert "Fixed a bug where const this would cause parser errors about ↵Pavel Labath2016-04-288-120/+9
| | | | | | | | | | $__lldb_expr." This reverts commit r267833 as it breaks the build. It looks like some work in progress got committed together with the actual fix, but I'm not sure which one is which, so I'll revert the whole patch and let author resumbit it after fixing the build error. llvm-svn: 267861
* removed redundant '#'Eric Liu2016-04-281-1/+0
| | | | llvm-svn: 267860
* Addressed reviewer's post-submission comments from ↵Eric Liu2016-04-285-70/+61
| | | | | | | | | | | | | | http://reviews.llvm.org/D18551. Summary: Make SourceManager in Environment, WhitespaceManager, and FormatTokenAnalyzer etc constant members. Reviewers: djasper, klimek Subscribers: cfe-commits, klimek Differential Revision: http://reviews.llvm.org/D19587 llvm-svn: 267859
* Addressed review's comments.Eric Liu2016-04-282-2/+4
| | | | llvm-svn: 267858
* Add missing newline in clang-rename output.Manuel Klimek2016-04-281-1/+1
| | | | | | | | Patch by Miklos Vajna. Differential Revision: http://reviews.llvm.org/D18957 llvm-svn: 267855
* [X86] Remove unused operand from a function and all its callers. NFCCraig Topper2016-04-285-10/+8
| | | | llvm-svn: 267854
* [CodeGen] Default CTTZ_ZERO_UNDEF/CTLZ_ZERO_UNDEF to Expand in ↵Craig Topper2016-04-2815-85/+14
| | | | | | TargetLoweringBase. This is what the majority of the targets want and removes a bunch of code. Set it to Legal explicitly in the few cases where that's the desired behavior. llvm-svn: 267853
* Remove names of unreferenced parameters. Patch from STL@microsoft.comEric Fiselier2016-04-2816-20/+20
| | | | llvm-svn: 267852
* CodeGen: Add DetectDeadLanes pass.Matthias Braun2016-04-287-0/+946
| | | | | | | | | | | | | | | | | | | | The DetectDeadLanes pass performs a dataflow analysis of used/defined subregister lanes across COPY instructions and instructions that will get lowered to copies. It detects dead definitions and uses reading undefined values which are obscured by COPY and subregister usage. These dead definitions cause trouble in the register coalescer which cannot deal with definitions suddenly becoming dead after coalescing COPY instructions. For now the pass only adds dead and undef flags to machine operands. It should be possible to extend it in the future to remove the dead instructions and redo the analysis for the affected virtual registers. Differential Revision: http://reviews.llvm.org/D18427 llvm-svn: 267851
* TableGen: Produce CoveredBySubRegs summary for register classesMatthias Braun2016-04-284-3/+12
| | | | | | This will be used in the upcoming "DetectDeadLanes" pass. llvm-svn: 267850
* TargetRegisterInfo: Introduce reverseComposeSubRegIndexLaneMask()Matthias Braun2016-04-282-12/+48
| | | | | | | | | This function performs the reverse computation of composeSubRegIndexLaneMask(). It will be used in the upcoming "DetectDeadLanes" pass. llvm-svn: 267849
* TableGen: Support lanemasks for classes without subregistersMatthias Braun2016-04-282-39/+51
| | | | | | | | | | | | | Previously using lanemasks on registers without any subregisters was not well defined. This commit extends TargetRegisterInfo/tablegen to: - Report a lanemask of 1 for regclasses without subregisters - Do the right thing when mapping a 0/1 lanemask from a class without subregisters into a class with subregisters in TargetRegisterInfo::composeSubRegIndexLaneMasks(). This will be used in the upcoming "DetectDeadLanes" patch. llvm-svn: 267848
* Add comment.Rui Ueyama2016-04-281-0/+12
| | | | llvm-svn: 267847
* CGOpenMPRuntime.h: Prune extra comma in \param. [-Wdocumentation]NAKAMURA Takumi2016-04-281-1/+1
| | | | llvm-svn: 267845
* Add braces, move braces, and rename variables to avoid shadowing. Patch from ↵Eric Fiselier2016-04-285-4/+10
| | | | | | STL@microsoft.com llvm-svn: 267844
* Provide member function definitions to avoid warnings. Patch from ↵Eric Fiselier2016-04-281-1/+1
| | | | | | STL@microsoft.com llvm-svn: 267843
* Fix an inefficiency in the handling of $__lldb_local_vars in expressions.Jim Ingham2016-04-282-1/+3
| | | | | | | | | | | | | | The code in ClangExpressionDeclMap::FindExternalVisibleDecls figures out what the token means, and adds the namespace to the lookup context, but since it doesn't mark it as special in the search context, we go on to pass the name $__lldb_local_vars to the ASTSource for further lookup. Unless we've done our job wrong, those lookups will always fail, but the can be costly. So I added a bit to m_found & use that to short-circuit the lookup. <rdar://problem/25613384> llvm-svn: 267842
* FindAllSymbolsTest.CTypedefTest: Tweak for LLP64 like x86_64-win32.NAKAMURA Takumi2016-04-281-2/+2
| | | | | | | | | | In file included from symbol.cc:1: symbols.h:2:24: error: typedef redefinition with different types ('unsigned int' vs 'unsigned long long') typedef unsigned size_t; ^ llvm-svn: 267841
* LiveIntervalAnalysis: Fix handleMove() using wrong value numbersMatthias Braun2016-04-281-2/+1
| | | | | | | | | | handleMove() was incorrectly swapping two value numbers. This was missed before because the problem only occured when moving subregister definitions and needed -verify-machineinstrs to be detected. I cannot add a testcase as long as I cannot reapply r260905/r260806. llvm-svn: 267840
* Do not call hasArg and getLastArg for the same option.Rui Ueyama2016-04-282-8/+7
| | | | llvm-svn: 267839
* Rename function parameters to avoid shadowing. Patch from STL@microsoft.comEric Fiselier2016-04-281-4/+4
| | | | llvm-svn: 267838
OpenPOWER on IntegriCloud