summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* R600: Remove unnecessary part of computeKnownBitsForTargetNodeMatt Arsenault2014-10-151-5/+0
| | | | | | | Zero-width BFEs are combined away already, so there's no point in handling them. llvm-svn: 219868
* Move variable down to useMatt Arsenault2014-10-151-4/+4
| | | | llvm-svn: 219867
* Add MachOObjectFile::getUuid()Alexander Potapenko2014-10-152-1/+12
| | | | | | | This CL introduces MachOObjectFile::getUuid(). This function returns an ArrayRef to the object file's UUID, or an empty ArrayRef if the object file doesn't contain an LC_UUID load command. The new function is gonna be used by llvm-symbolizer. llvm-svn: 219866
* Give user_id a default invalid value so we don'tJason Molenda2014-10-151-1/+1
| | | | | | | possibly use it uninitialized in a log message later. clang static analyzer fixit. llvm-svn: 219865
* [Refactor][NfC] ReportLevel should be used as a bool not an intJohannes Doerfert2014-10-151-1/+1
| | | | llvm-svn: 219864
* Fix unused-variable warnings from the clang static analyzer.Jason Molenda2014-10-155-11/+5
| | | | llvm-svn: 219863
* Updating documentation based on my change to remove the template disambiguation.Chris Bieneman2014-10-151-3/+3
| | | | llvm-svn: 219862
* Fixing the build failure due to compiler warnings and unnecessary ↵Chris Bieneman2014-10-151-3/+2
| | | | | | disambiguation. llvm-svn: 219861
* [compiler-rt] compiler-rt's CMake append_if function clashes with LLVM's, ↵Kuba Brecka2014-10-1511-52/+52
| | | | | | | | | | let's rename it to append_list_if Doing s/append_if/append_list_if/, no functional change. http://reviews.llvm.org/D5739 llvm-svn: 219860
* CodeGen: Don't drop thread_local when emitting __thread aliasesDavid Majnemer2014-10-153-10/+23
| | | | | | | | | | | | CodeGen wouldn't mark the aliasee as thread_local if the aliasee was a tentative definition. Even if the definition was already emitted, it would never mark the alias as thread_local. This fixes PR21288. llvm-svn: 219859
* Move SanitizerBlacklist object from CodeGenModule to ASTContext.Alexey Samsonov2014-10-156-36/+37
| | | | | | | | Soon we'll need to have access to blacklist before the CodeGen phase (see http://reviews.llvm.org/D5687), so parse and construct the blacklist earlier. llvm-svn: 219857
* Mechanical change to FastDemangle to make it closer to the lldbJason Molenda2014-10-151-645/+839
| | | | | | | coding conventions. Lots of whitespace et al changes but no content changes. llvm-svn: 219856
* Avoid having "using namespace" for both "clang" and "llvm" namespaces.Alexey Samsonov2014-10-152-26/+24
| | | | | | | This is fragile, as there are classes with the same name in both namespaces (e.g. llvm::Module and clang::Module). llvm-svn: 219855
* Defining a new API for debug options that doesn't rely on static global ↵Chris Bieneman2014-10-157-12/+193
| | | | | | | | | | | | | | | | | | cl::opts. Summary: This is based on the discussions from the LLVMDev thread: http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-August/075886.html Reviewers: chandlerc Reviewed By: chandlerc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5389 llvm-svn: 219854
* This should keep the non-Xcode-based builds happyEnrico Granata2014-10-151-0/+1
| | | | llvm-svn: 219853
* Add synthetic children support for NSIndexPathEnrico Granata2014-10-155-0/+315
| | | | llvm-svn: 219852
* Sema: handle AttributedTypeLocs in C++14 auto deductionSaleem Abdulrasool2014-10-152-2/+15
| | | | | | | | | | | | | | When performing a type deduction from the return type, the FunctionDecl may be attributed with a calling convention. In such a case, the retrieved type location may be an AttributedTypeLoc. Performing a castAs<FunctionProtoTypeLoc> on such a type loc would result in an assertion as they are not derived types. Ensure that we correctly handle the attributed type location by looking through it to the modified type loc. Fixes an assertion triggered in C++14 mode. llvm-svn: 219851
* test: simplify test furtherSaleem Abdulrasool2014-10-151-4/+7
| | | | | | Remove the use of an unnecessary function. NFC. llvm-svn: 219850
* Change hasName() to take const std::string&, as it was taking before rL219792.Samuel Benzaquen2014-10-151-1/+1
| | | | llvm-svn: 219849
* R600/SI: Fix bug where immediates were being used in DS addr operandsTom Stellard2014-10-152-1/+22
| | | | | | | | | | | | | | | | | | | The SelectDS1Addr1Offset complex pattern always tries to store constant lds pointers in the offset operand and store a zero value in the addr operand. Since the addr operand does not accept immediates, the zero value needs to first be copied to a register. This newly created zero value will not go through normal instruction selection, so we need to manually insert a V_MOV_B32_e32 in the complex pattern. This bug was hidden by the fact that if there was another zero value in the DAG that had not been selected yet, then the CSE done by the DAG would use the unselected node for the addr operand rather than the one that was just created. This would lead to the zero value being selected and the DAG automatically inserting a V_MOV_B32_e32 instruction. llvm-svn: 219848
* Avoid caching the MachineFunction, we don't use it outside ofEric Christopher2014-10-151-9/+7
| | | | | | runOnMachineFunction. llvm-svn: 219847
* Wrong attribute. LLVM_ATTRIBUTE_UNUSED not LLVM_ATTRIBUTE_USEDSid Manning2014-10-151-1/+1
| | | | | | | | | This original fix for the build break was correct. LLVM_ATTRIBUTE_USED removes the warning message because it keeps the function in the object file. LLVM_ATTRIBUTE_UNUSED indicates that it may or may not be used depending on build settings. llvm-svn: 219846
* IR: Move NumOperands from User to Value, NFCDuncan P. N. Exon Smith2014-10-154-8/+18
| | | | | | | | | | | | | | | | | | Store `User::NumOperands` (and `MDNode::NumOperands`) in `Value`. On 64-bit host architectures, this reduces `sizeof(User)` and all subclasses by 8, and has no effect on `sizeof(Value)` (or, incidentally, on `sizeof(MDNode)`). On 32-bit host architectures, this increases `sizeof(Value)` by 4. However, it has no effect on `sizeof(User)` and `sizeof(MDNode)`, so the only concrete subclasses of `Value` that actually see the increase are `BasicBlock`, `Argument`, `InlineAsm`, and `MDString`. Moreover, I'll be shocked and confused if this causes a tangible memory regression. This has no functionality change (other than memory footprint). llvm-svn: 219845
* IR: Cleanup comments for Value, User, and MDNodeDuncan P. N. Exon Smith2014-10-157-233/+212
| | | | | | | | | | | | | A follow-up commit will modify the memory-layout of `Value`, `User`, and `MDNode`. First fix the comments to be doxygen-friendly (and to follow the coding standards). - Use "\brief" instead of "repeatedName -". - Add a brief intro where it was missing. - Remove duplicated comments from source files (and a couple of noisy/trivial comments altogether). llvm-svn: 219844
* [mach-o] avoid overly clever std::find_ifTim Northover2014-10-159-24/+71
| | | | | | | The bots were complaining (possibly because of a lack of traits on the iterator I was trying to use). No functional change. llvm-svn: 219843
* Move -fsanitize-blacklist to LangOpts from CodeGenOpts. NFC.Alexey Samsonov2014-10-155-7/+8
| | | | | | | | After http://reviews.llvm.org/D5687 is submitted, we will need SanitizerBlacklist before the CodeGen phase, so make it a LangOpt (as it will actually affect ABI / class layout). llvm-svn: 219842
* The NSDate formatter should use GMT instead of the local timezone. Fixes ↵Enrico Granata2014-10-151-1/+1
| | | | | | rdar://13416848 llvm-svn: 219841
* Move SanitizerBlacklist to clangBasic. NFC.Alexey Samsonov2014-10-155-8/+6
| | | | | | | | | | | | This change moves SanitizerBlacklist.h from lib/CodeGen to public Clang headers in include/clang/Basic. SanitizerBlacklist is currently only used in CodeGen to decide which functions/modules should be instrumented, but this will soon change as ASan will optionally modify class layouts during AST construction (http://reviews.llvm.org/D5687). We need blacklist machinery to be available at this point. llvm-svn: 219840
* As requested by Matt Thomas, use long long for intmax_t and int64_t onJoerg Sonnenberger2014-10-152-0/+111
| | | | | | PPC64/NetBSD. llvm-svn: 219839
* Set ABI and DescriptionString first to reduce OS specific logic.Joerg Sonnenberger2014-10-151-10/+13
| | | | | | Use switch for FreeBSD check to allow easier extension. llvm-svn: 219838
* Wrong attribute. LLVM_ATTRIBUTE_USED not LLVM_ATTRIBUTE_UNUSEDSid Manning2014-10-151-1/+1
| | | | llvm-svn: 219837
* [mach-o] make __unwind_info defer to __eh_frame when necessary.Tim Northover2014-10-1511-53/+237
| | | | | | | | | | | | Not all situations are representable in the compressed __unwind_info format, and when this happens the entry needs to point to the more general __eh_frame description. Just x86_64 implementation for now. rdar://problem/18208653 llvm-svn: 219836
* Allow forward references to section symbols.Rafael Espindola2014-10-152-1/+36
| | | | llvm-svn: 219835
* Teach ScalarEvolution to sharpen range information.Sanjoy Das2014-10-153-2/+78
| | | | | | | | | | | | If x is known to have the range [a, b) in a loop predicated by (icmp ne x, a), its range can be sharpened to [a + 1, b). Get ScalarEvolution and hence IndVars to exploit this fact. This change triggers an optimization to widen-loop-comp.ll, so it had to be edited to get it to pass. phabricator: http://reviews.llvm.org/D5639 llvm-svn: 219834
* Add LLVM_ATTRIBUTE_UNUSED to function currently just used in an assertSid Manning2014-10-151-0/+2
| | | | | | Fixes break when -Wunused-function is used. llvm-svn: 219833
* InstCombine: Narrow switch instructions using known bits.Akira Hatanaka2014-10-152-0/+92
| | | | | | | | | Truncate the operands of a switch instruction to a narrower type if the upper bits are known to be all ones or zeros. rdar://problem/17720004 llvm-svn: 219832
* Reapply "[FastISel][AArch64] Add custom lowering for GEPs."Juergen Ributzka2014-10-153-3/+119
| | | | | | | | | | | This is mostly a copy of the existing FastISel GEP code, but we have to duplicate it for AArch64, because otherwise we would bail out even for simple cases. This is because the standard fastEmit functions don't cover MUL at all and ADD is lowered very inefficientily. The original commit had a bug in the add emit logic, which has been fixed. llvm-svn: 219831
* [FastISel][AArch64] Factor out add with immediate emission into a helper ↵Juergen Ributzka2014-10-151-13/+28
| | | | | | | | function. NFC. Simplify add with immediate emission by factoring it out into a helper function. llvm-svn: 219830
* Correctly handle references to section symbols.Rafael Espindola2014-10-158-52/+160
| | | | | | | | | | | | | | | | | When processing assembly like .long .text we were creating a new undefined symbol .text. GAS on the other hand would handle that as a reference to the .text section. This patch implements that by creating the section symbols earlier so that they are visible during asm parsing. The patch also updates llvm-readobj to print the symbol number in the relocation dump so that the test can differentiate between two sections with the same name. llvm-svn: 219829
* Make this test case more resilient in the face of line-table and inlining ↵Enrico Granata2014-10-152-22/+16
| | | | | | changes llvm-svn: 219828
* [compiler-rt] Enable ASAN for powerpc64le-linuxWill Schmidt2014-10-154-4/+12
| | | | | | | | | | | | | | | | | | Whitespace update for lint check by myself (Will). Otherwise code and comments by Peter Bergner, as previously seen on llvm-commits. The following patch gets ASAN somewhat working on powerpc64le-linux. It currently assumes the LE kernel uses 46-bit addressing, which is true, but it doesn't solve the case for BE where it may be 44 or 46 bits. That can be fixed with a follow on patch. There are some test suite fails even with this patch that I haven't had time to solve yet, but this is better than the state it is in now. The limited debugging of those test suite fails seems to show that the address map for 46-bit addressing has changed and so we'll need to modify the shadow memory location slightly. Again, that can be fixed with a follow on patch. llvm-svn: 219827
* Enable the instruction printer in HexagonMCTargetDescSid Manning2014-10-154-4/+64
| | | | | | | | | | This adds the MCInstPrinter to the LLVMHexagonDesc library and removes the dependency LLVMHexagonAsmPrinter had on LLVMHexagonDesc. This is a prerequisite needed by the disassembler. Phabricator Revision: http://reviews.llvm.org/D5734 llvm-svn: 219826
* [CMake] Cleanup CMake rules after r219302. NFC.Alexey Samsonov2014-10-152-22/+2
| | | | llvm-svn: 219825
* [macho] Create references from __eh_frame FDEs to their function.Tim Northover2014-10-159-9/+151
| | | | | | | | | | | | | We'll also need references back to the CIE eventually, but for now making sure we can work out what an FDE is referring to is enough. The actual kind of reference needs to be different between architectures, probably because of MachO's chronic shortage of relocation types but I don't really want to know in case I find out something that distresses me even more. rdar://problem/18208653 llvm-svn: 219824
* R600/SI: Also try to use 0 base for misaligned 8-byte DS loads.Matt Arsenault2014-10-153-0/+73
| | | | llvm-svn: 219823
* [UBSan] [MIPS] Adding support of UBSan for mipsel arch Alexey Samsonov2014-10-151-1/+1
| | | | | | | | | | | | | | | | Summary: Changed files: config-ix.cmake: Added mipsel to UBSAN_SUPPORTED_ARCH Reviewers: rsmith, kcc, dsanders, petarj, samsonov Reviewed By: samsonov Subscribers: llvm-commits, mohit.bhakkad, farazs, kumarsukhani Differential Revision: http://reviews.llvm.org/D5750 llvm-svn: 219822
* Allow ThreadLauncher::LaunchThread() to specify a minimum stack byte size ↵Greg Clayton2014-10-153-6/+44
| | | | | | | | | | | | when launching threads. This defaults to zero, which means to use the system default. NOTE: Windows will need to implement this. <rdar://problem/18644448> llvm-svn: 219821
* Add llvm_unreachable after switch to avoid warnings about a missingKaelyn Takata2014-10-151-0/+1
| | | | | | | | return. Forgot to add this in r219818. llvm-svn: 219820
* R600: Fix miscompiles when BFE has multiple usesMatt Arsenault2014-10-152-7/+32
| | | | | | SimplifyDemandedBits would break the other uses of the operand. llvm-svn: 219819
* Drop unneccessary default case from switch introduced in r219809Kaelyn Takata2014-10-151-2/+0
| | | | | | | | This silences: ../tools/clang/tools/libclang/CIndex.cpp:6451:3: warning: default label in switch which covers all enumeration values [-Wcovered-switch-default] llvm-svn: 219818
OpenPOWER on IntegriCloud