summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [ARM64] Teach Targets.cpp about Cortex-A53 and Cortex-A57, and enable more ↵James Molloy2014-04-172-0/+20
| | | | | | tests. llvm-svn: 206463
* [ARM64] Plumb in big-endian - add arm64_be to the many switches where it was ↵James Molloy2014-04-174-3/+23
| | | | | | missing. llvm-svn: 206462
* [ARM64] Default to the 'generic' CPU, unless -arch is present for backwards ↵James Molloy2014-04-172-2/+13
| | | | | | compatibility. llvm-svn: 206461
* Preventing future MSVC 2012 surprises with SimpleArray by giving it an ↵Aaron Ballman2014-04-171-0/+12
| | | | | | explicit move assignment operator. llvm-svn: 206460
* Inliner::OptimizationRemark: Fix crash in ↵NAKAMURA Takumi2014-04-172-2/+6
| | | | | | | | clang/test/Frontend/optimization-remark.c on some hosts, including --vg. DebugLoc in Callsite would not live after Inliner. It should be copied before Inliner. llvm-svn: 206459
* clang-format: Respect BinPackParameters in Cpp11BracedListStyle.Daniel Jasper2014-04-173-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | With BinPackParameters=false and Cpp11BracedListStyle=true (i.e. mostly for Chromium): Before: const Aaaaaa aaaaa = {aaaaa, bbbbb, ccccc, ddddd, eeeee, ffffff, ggggg, hhhhhh, iiiiii, jjjjjj, kkkkkk}; After: const Aaaaaa aaaaa = {aaaaa, bbbbb, ccccc, ddddd, eeeee, ffffff, ggggg, hhhhhh, iiiiii, jjjjjj, kkkkkk}; This fixes llvm.org/PR19359. I am not sure we'll want this in all cases in the long run, but I'll guess we'll get feedback on that. llvm-svn: 206458
* Fix PR19408 - Missing static this adjustment in a vtordisp thunkTimur Iskhodzhanov2014-04-172-10/+123
| | | | | | | | Also fix a few other vtordisp-related bugs. Reviewed at http://reviews.llvm.org/D3400 llvm-svn: 206457
* ARM64: remove holes from *all* HFAs on the stack.Tim Northover2014-04-173-13/+28
| | | | | | | | | | My first attempt to make sure HFAs were contiguous was in the block dealing with padding registers, which meant it only triggered on the first stack-based HFA. This should extend it to the rest as well. Another part of PR19432. llvm-svn: 206456
* [LCG] Remove a dead declaration. This stopped being used when I switchedChandler Carruth2014-04-171-3/+0
| | | | | | | to a more normal move operation on the graph itself. The definition already got removed, but I missed the declaration. llvm-svn: 206455
* [LCG] Move the call graph node class into the graph class's definition.Chandler Carruth2014-04-171-38/+38
| | | | | | | This will become necessary to build up the SCC iterators and SCC definitions. Moving it now so that subsequent diffs are incremental. llvm-svn: 206454
* Make the User::value_op_iterator a random access iterator. I had writtenChandler Carruth2014-04-173-12/+136
| | | | | | | | | this code ages ago and lost track of it. Seems worth doing though -- this thing can get called from places that would benefit from knowing that std::distance is O(1). Also add a very fledgeling unittest for Users and make sure various aspects of this seem to work reasonably. llvm-svn: 206453
* SemaTemplate.cpp: Rework r206451. Removing an argument was really bad idea.NAKAMURA Takumi2014-04-171-4/+5
| | | | llvm-svn: 206452
* SemaTemplate.cpp: Appease msvc to get rid of default argument in lambda ↵NAKAMURA Takumi2014-04-171-2/+2
| | | | | | | | definition. clang\lib\Sema\SemaTemplate.cpp(1826) : error C2064: term does not evaluate to a function taking 1 arguments llvm-svn: 206451
* [LCG] Just move the allocator (now that we can) when moving a callChandler Carruth2014-04-172-34/+17
| | | | | | | | | graph. This simplifies the custom move constructor operation to one of walking the graph and updating the 'up' pointers to point to the new location of the graph. Switch the nodes from a reference to a pointer for the 'up' edge to facilitate this. llvm-svn: 206450
* [LCG] Remove the Module reference member which we weren't using forChandler Carruth2014-04-172-5/+3
| | | | | | anything and doesn't make sense if assigning. llvm-svn: 206449
* [Allocator] Make SpecificBumpPtrAllocator also movable and moveChandler Carruth2014-04-171-3/+7
| | | | | | assignable. llvm-svn: 206448
* [X86] Add disassembler support for the 0x0f 0x7f form of movq %mm, %mm.Craig Topper2014-04-172-0/+8
| | | | llvm-svn: 206447
* objdump: identify WoA WinCOFF/ARM correctlySaleem Abdulrasool2014-04-171-0/+6
| | | | | | | | | | | | Since LLVM currently only supports WinCOFF, assume that the input is WinCOFF rather than another type of COFF file (ECOFF/XCOFF). If the architecture is detected as thumb (e.g. the file has a IMAGE_FILE_MACHINE_ARMNT magic) then use a triple of thumbv7-windows. This allows for objdump to properly handle WoA object files without having to specify the target triple manually. llvm-svn: 206446
* MC: rework static_assert to be MSVC compatibleSaleem Abdulrasool2014-04-171-4/+2
| | | | | | | | Visual Studio does not permit referencing a structure member as a static field for sizeof calculations. Resort to a pointer cast which is compatible across Visual Studio and other compilers. llvm-svn: 206445
* PR19340: If we see a declaration of a member of an unspecialized class templateRichard Smith2014-04-173-45/+62
| | | | | | | that looks like it might be an explicit specialization, don't recover as an explicit specialization (bypassing the check that would reject that). llvm-svn: 206444
* When writing YAML in libclang, use yaml::escape instead of write_escapedBen Langmuir2014-04-172-4/+25
| | | | | | | | The YAMLParser has its own escaped string representation, and does not handle octal escape sequences. When writing the virtual file system to a YAML file, use yaml::escape(). llvm-svn: 206443
* Refactor all the checking for missing 'template<>'s when a declaration has aRichard Smith2014-04-176-102/+96
| | | | | | template-id after its scope specifier into a single place. llvm-svn: 206442
* Don't emit an ExtWarn on declarations of variable template specializations;Richard Smith2014-04-173-42/+14
| | | | | | | we'll already have issued the relevant diagnostic when we saw the declaration of the primary template. llvm-svn: 206441
* [Parser] Remove "add -fmodules" from the "use of '@import' when modules are ↵Argyrios Kyrtzidis2014-04-172-2/+2
| | | | | | | | | disabled, add -fmodules" error. We disable modules for C++, at which point this is confusing. rdar://16641918 llvm-svn: 206440
* Adding type info for f16c floating-point type. This is consistent with theYunzhong Gao2014-04-172-1/+7
| | | | | | | | Itanium ABI in 2.9.2 Place of Emission. Differential Revision: http://reviews.llvm.org/D2750 llvm-svn: 206439
* Support: Move OnDiskHashTable from clang to llvmJustin Bogner2014-04-171-0/+544
| | | | | | | | | This introduces clang's Basic/OnDiskHashTable.h into llvm as Support/OnDiskHashTable.h. I've taken the opportunity to add doxygen comments and run the file through clang-format, but other than the namespace changing from clang:: to llvm:: the API is identical. llvm-svn: 206438
* R600/SI: Fix zext from i1 to i64Matt Arsenault2014-04-173-2/+34
| | | | llvm-svn: 206437
* Implement [over.match.oper]p3 properly, by filtering the non-candidates outRichard Smith2014-04-1711-132/+120
| | | | | | | when building the candidate set, rather than trying to contort name lookup into handling this. llvm-svn: 206436
* PR19452: Implement more of [over.match.oper]p3's restrictions on which ↵Richard Smith2014-04-175-19/+56
| | | | | | non-member overloaded operators can be found when no operand is of class type. We used to fail to implement this rule if there was an operand of dependent type. llvm-svn: 206435
* Further simplify r206430.Adrian Prantl2014-04-171-13/+4
| | | | | | rdar://problem/16636569. llvm-svn: 206434
* [ARM64] Fix "Cannot select" for vector ctpopAdam Nemet2014-04-172-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit of r205855: Author: Arnold Schwaighofer <aschwaighofer@apple.com> Date: Wed Apr 9 14:20:47 2014 +0000 SLPVectorizer: Only vectorize intrinsics whose operands are widened equally The vectorizer only knows how to vectorize intrinics by widening all operands by the same factor. Patch by Tyler Nowicki! exposed a backend bug causing a regression (Cannot select ctpop). The commit msg is a bit confusing because the patch actually changes the behavior for the loop-vectorizer as well. As things got refactored into a helper ctpop got snuck in to the trivially-vectorizable helper which is now used by both vectorizers. In other words, we started seeing vector-ctpops in the backend. This change makes ctpop LegalizeAction::Expand for the types not supported by the byte-only CNT instruction. We may be able to custom-lower these later to a single CNT but this is to fix the compiler crash first. Fixes <rdar://problem/16578951> llvm-svn: 206433
* Silence the test failure on FreeBSD for now.Rui Ueyama2014-04-171-0/+2
| | | | | | | It's hard to debug this failure on remote machine only with lit logs. I'm trying to reproduce it locally on a FreeBSD machine. llvm-svn: 206432
* Rename lib/Headers/module.map to module.modulemapBen Langmuir2014-04-174-6/+6
| | | | | | Don't install a file using the legacy spelling. llvm-svn: 206431
* Debug info: When collecting the parameters of C++ partial templateAdrian Prantl2014-04-172-4/+41
| | | | | | | | | | | | specializations collect all arguments and not just the ones from the class template partial specialization from which this class template specialization was instantiated. The debug info does not represent the partial specialization otherwise and so specialized parameters would go missing. rdar://problem/16636569. llvm-svn: 206430
* Inline a function when the always_inline attributeGerolf Hoflehner2014-04-173-3/+35
| | | | | | | | | | is set even when it contains a indirect branch. The attribute overrules correctness concerns like the escape of a local block address. This is for rdar://16501761 llvm-svn: 206429
* Second attempt to unbreak the buildbot.Rui Ueyama2014-04-161-4/+4
| | | | llvm-svn: 206428
* Replace bzero with memsetJonathan Roelofs2014-04-161-8/+9
| | | | | | ... so that we can use newlib as the c library. llvm-svn: 206427
* Teach LLVMConfigVersion.cmake to behave as find_package() expects.Eric Christopher2014-04-162-1/+16
| | | | | | Patch by Brad King llvm-svn: 206426
* Add support for a patch version to the cmake system.Eric Christopher2014-04-162-0/+2
| | | | | | Patch by Brad King llvm-svn: 206425
* Remove some unnecessary noexcept conditions. Thanks to Richard Smith for the ↵Marshall Clow2014-04-162-4/+0
| | | | | | catch. llvm-svn: 206424
* Move pthread_cond_* interceptors from sanitizer_common with all the ugly ↵Alexey Samsonov2014-04-168-166/+154
| | | | | | hacks to TSan llvm-svn: 206423
* [c++11] Tidy up AsmPrinter.cpp.Jim Grosbach2014-04-162-96/+78
| | | | | | | Range'ify loops and tidy up some by-reference handling. No functional change. llvm-svn: 206422
* iterator_range for machine block terminators.Jim Grosbach2014-04-161-0/+6
| | | | llvm-svn: 206421
* Attempting to unbreak the MSVC 2012 build a second time.Aaron Ballman2014-04-161-0/+8
| | | | llvm-svn: 206420
* Attempt to unbreak FreeBSD/AMD64 buildbot.Rui Ueyama2014-04-161-1/+2
| | | | llvm-svn: 206419
* Added dump method for global module index.John Thompson2014-04-162-0/+18
| | | | llvm-svn: 206418
* [ELF] Support --defsym=<symbol>=<symbol>.Rui Ueyama2014-04-167-18/+158
| | | | | | | | | | | | | | | | | | | | | Currently LLD supports --defsym only in the form of --defsym=<symbol>=<integer>, where the integer is interpreted as the absolute address of the symbol. This patch extends it to allow other symbol name to be given as an RHS value. If a RHS value is a symbol name, the LHS symbol will be defined as an alias for the RHS symbol. Internally, a LHS symbol is represented as a zero-size defined atom who has an LayoutAfter reference to an undefined atom, whose name is the RHS value. Everything else is already implemented -- Resolver will resolve the undefined symbol, and the layout pass will layout the two atoms at the same location. Looks like it's working fine. Note that GNU LD supports --defsym=<symbol>=<symbol>+<addend>. That feature is out of scope of this patch. Differential Revision: http://reviews.llvm.org/D3332 llvm-svn: 206417
* Handle -m32 for NetBSD/sparc64 correctly. Extend test case to also checkJoerg Sonnenberger2014-04-169-12/+27
| | | | | | ARM, MIPS and i386 ABIs. llvm-svn: 206416
* Revert "Move -fms-extensions predefined macros into InitPreprocessor"Reid Kleckner2014-04-163-18/+15
| | | | | | | | | | This reverts commit r206413. This was proposed before, but it's not clear if this is really a good idea: http://reviews.llvm.org/D3034 llvm-svn: 206415
* Attempting to unbreak the MSVC 2012 build.Aaron Ballman2014-04-161-0/+1
| | | | llvm-svn: 206414
OpenPOWER on IntegriCloud