summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [AMDGPU] add AMDGPU target support to ELFObjectFile.h headerValery Pykhtin2016-03-095-0/+38
| | | | | | Differential Revision: http://reviews.llvm.org/D17144 llvm-svn: 263026
* Implement support for [[maybe_unused]] in C++1z that is based off existing ↵Aaron Ballman2016-03-0913-17/+128
| | | | | | support for unused, and treat it as an extension pre-C++1z. This also means extending the existing unused attribute so that it can be placed on an enum and enumerator, in addition to the other subjects. llvm-svn: 263025
* [AArch64] Minor cleanup/remove redundant code. NFC.Chad Rosier2016-03-092-12/+8
| | | | llvm-svn: 263024
* NFC fix documentation build by rL263015Dmitry Polukhin2016-03-091-0/+1
| | | | llvm-svn: 263023
* SelectionDAG: Fix a crash on inline asm when output register supports ↵Tom Stellard2016-03-092-3/+19
| | | | | | | | | | | | | | | | multiple types Summary: The code in SelectionDAG did not handle the case where the register type and output types were different, but had the same size. Reviewers: arsenm, echristo Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D17940 llvm-svn: 263022
* [TII] Allow getMemOpBaseRegImmOfs() to accept negative offsets. NFC.Chad Rosier2016-03-0912-22/+23
| | | | | | http://reviews.llvm.org/D17967 llvm-svn: 263021
* Split locale management out of locale_win32. NFCIBen Craig2016-03-092-18/+35
| | | | | | | | | | | | | | | | | | For the locale refactor, the locale management functions (newlocale, freelocale, uselocale) are needed in a separate header from the various _l functions. This is because some platforms implement the _l functions in terms of a locale switcher RAII helper, and the locale switcher RAII helper needs the locale management functions. This patch helps pave the way by getting all the functions in the right files, so that later diffs aren't completely horrible. Unfortunately, the Windows, Cygwin, and MinGW builds seemed to have bit-rotted, so I wasn't able to test this completely. I don't think I made things any worse than they already are though. http://reviews.llvm.org/D17419 llvm-svn: 263020
* [OpenMP] Add support for multidimensional array sections in map clause SEMA.Samuel Antao2016-03-093-27/+268
| | | | | | | | | | | | Summary: In some cases it can be proved statically that multidimensional array section refer to contiguous storage and can therefore be allowed in a map clause. This patch adds support for those cases in SEMA. Reviewers: hfinkel, carlo.bertolli, arpith-jacob, kkwli0, ABataev Subscribers: cfe-commits, fraggamuffin, caomhin Differential Revision: http://reviews.llvm.org/D17547 llvm-svn: 263019
* [test/sanitizer-common] Linux/sanitizer_set_death_callback_test.cc -> ↵Filipe Cabecinhas2016-03-091-0/+0
| | | | | | Posix/sanitizer_set_death_callback_test.cc llvm-svn: 263018
* [test/sanitizer-common] Move getpass.cc from Linux into PosixFilipe Cabecinhas2016-03-091-0/+4
| | | | llvm-svn: 263017
* Reorganize _LIBCPP_LOCALE__L_EXTENSIONSBen Craig2016-03-094-438/+230
| | | | | | | | | | | | | | | | Instead of checking _LIBCPP_LOCALE_L_EXTENSIONS all over, instead check it once, and define the various *_l symbols once. The private redirector symbol names are all prefixed with _libcpp_* so that they won't conflict with user symbols, and so they won't conflict with future C library symbols. In particular, glibc likes providing private symbols such as __locale_t, so we should follow a different naming pattern (like _libcpp_*) to avoid problems on that front. Tested on Linux with glibc. Hoping for the best on OSX and the various BSDs. http://reviews.llvm.org/D17456 llvm-svn: 263016
* [GCC] PR23529 Sema part of attrbute abi_tag supportDmitry Polukhin2016-03-098-2/+233
| | | | | | | | | | | | | | | | | Original patch by Stefan Bühler http://reviews.llvm.org/D12834 Difference between original and this one: - fixed all comments in original code review - added more tests, all new diagnostics now covered by tests - moved abi_tag on re-declaration checks to Sema::mergeDeclAttributes where they actually may work as designed - clang-format + other stylistic changes Mangle part will be sent for review as a separate patch. Differential Revision: http://reviews.llvm.org/D17567 llvm-svn: 263015
* Fix build error due to unsigned compare >= 0 in r263008 (NFC)Teresa Johnson2016-03-091-1/+1
| | | | | | | | | | | | Fixes error from building with clang: /usr/local/google/home/tejohnson/llvm/llvm_15/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp:407:12: error: comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-compare] if ((Imm >= 0x000) && (Imm <= 0x0ff)) { ~~~ ^ ~~~~~ llvm-svn: 263014
* Simplify: SHN_ABS is >= SHN_LORESERVE.Rafael Espindola2016-03-091-1/+1
| | | | llvm-svn: 263012
* Reland r262337 "calculate builtin_object_size if arg is a removable pointer"Petar Jovanovic2016-03-092-8/+59
| | | | | | | | | | | | | | | | | | Original commit message: calculate builtin_object_size if argument is a removable pointer This patch fixes calculating correct value for builtin_object_size function when pointer is used only in builtin_object_size function call and never after that. Patch by Strahinja Petrovic. Differential Revision: http://reviews.llvm.org/D17337 Reland the original change with a small modification (first do a null check and then do the cast) to satisfy ubsan. llvm-svn: 263011
* Add ARM EHABI support to gcc_personality_v0.Logan Chien2016-03-091-5/+36
| | | | | | | | | | | | | | | | Until now the only exception APIs supported by gcc_personality_v0 are DWARF EH and SJLJ. This adds support for ARM EHABI as well. This is achieved by a) changing the function signature on ARM EHABI, b) unwinding the stack before returning _URC_CONTINUE_UNWIND. See "Exception Handling ABI for the ARM Architecture" for details (http://infocenter.arm.com/help/topic/com.arm.doc.ihi0038b/IHI0038B_ehabi.pdf). Patch by Timon Van Overveldt. llvm-svn: 263010
* Update comments following the addition of PredicatedScalarEvolution. NFC.Silviu Baranga2016-03-092-9/+10
| | | | | | | | | | We changed several functions in LoopAccessAnalysis to use PSE instead of taking SE and a SCEV predicate as arguments, but didn't update the comments. This also fixes a comment in ScalarEvolution, where we refered to Preds when the argument name was A. llvm-svn: 263009
* [AMDGPU] Assembler: Support DPP instructions.Sam Kolton2016-03-0911-52/+499
| | | | | | | | | | | | | | | | | | | | Supprot DPP syntax as used in SP3 (except several operands syntax). Added dpp-specific operands in td-files. Added DPP flag to TSFlags to determine if instruction is dpp in InstPrinter. Support for VOP2 DPP instructions in td-files. Some tests for DPP instructions. ToDo: - VOP2bInst: - vcc is considered as operand - AsmMatcher doesn't apply mnemonic aliases when parsing operands - v_mac_f32 - v_nop - disable instructions with 64-bit operands - change dpp_ctrl assembler representation to conform sp3 Review: http://reviews.llvm.org/D17804 llvm-svn: 263008
* Fixing wrong header title name. Michael Zuckerman2016-03-092-2/+2
| | | | | | Differential Revision: http://reviews.llvm.org/D17917 llvm-svn: 263007
* [AMDGPU] Assembler: Support abs() syntax.Nikolay Haustov2016-03-092-2/+63
| | | | | | | | | Support legacy SP3 abs(v1) syntax. InstPrinter still uses |v1|. Add tests. Differential Revision: http://reviews.llvm.org/D17887 llvm-svn: 263006
* [AMDGPU] Assembler: Fix s_setpc_b64Nikolay Haustov2016-03-092-3/+3
| | | | | | | | s_setpc_b64 has just one 64-bit source which is the address of instruction to jump to. Differential Revision: http://reviews.llvm.org/D17888 llvm-svn: 263005
* Pacify gcc's parenthesis warning, which doesn't realize that parens don't ↵Manuel Klimek2016-03-091-3/+2
| | | | | | matter here. llvm-svn: 263004
* [OPENMP 4.5] Codegen for data members in 'linear' clauseAlexey Bataev2016-03-094-32/+302
| | | | | | | | OpenMP 4.5 allows privatization of non-static data members in OpenMP constructs. Patch adds proper codegen support for data members in 'linear' clause llvm-svn: 263003
* [OPENMP 4.5] Codegen for data members in 'linear' clause.Alexey Bataev2016-03-099-27/+69
| | | | | | | OpenMP 4.5 allows to use data members in private clauses. Patch adds codegen support for 'linear' clause. llvm-svn: 263002
* [DFSan] Fix test_inet_pton for big endian archsMohit K. Bhakkad2016-03-091-1/+1
| | | | | | | | | | Reviewers: samsonov Subscribers: ed, jaydeep, sagar, llvm-commits Differential Revision: http://reviews.llvm.org/D17751 llvm-svn: 263001
* [Compiler-rt][MIPS] Defining macros for MIPS archsMohit K. Bhakkad2016-03-091-0/+15
| | | | | | | | | | Reviewers: samsonov Subscribers: filcab, jaydeep, sagar, llvm-commits Differential Revision: http://reviews.llvm.org/D17881 llvm-svn: 263000
* Fix uninitialized member bool. Detected by ASan.Richard Trieu2016-03-091-1/+1
| | | | llvm-svn: 262999
* [LoopDataPrefetch] Add stats and debug outputAdam Nemet2016-03-091-0/+9
| | | | llvm-svn: 262998
* [LAA] Improve comment for isStridedPtrAdam Nemet2016-03-091-2/+5
| | | | llvm-svn: 262997
* Accept absolute paths in the -fuse-ld option.Peter Zotov2016-03-092-13/+26
| | | | | | | | | | | | | | | | | | | | | | | | This patch extends the -fuse-ld option to accept a full path to an executable and use it verbatim to invoke the linker. There are generally two reasons to desire this. The first reason relates to the sad truth is that Clang is retargetable, Binutils are not. While any Clang from a binary distribution is sufficient to compile code for a wide range of architectures and prefixed BFD linkers (e.g. installed as /usr/bin/arm-none-linux-gnueabi-ld) as well as cross-compiled libc's (for non-bare-metal targets) are widely available, including on all Debian derivatives, it is impossible to use them together because the -fuse-ld= option allows to specify neither a linker prefix nor a full path to one. The second reason is linker development, both when porting existing linkers to new architectures and when working on a new linker such as LLD. Differential Revision: http://reviews.llvm.org/D17952 llvm-svn: 262996
* [WebAssembly] Update comments about irreducible control flow.Dan Gohman2016-03-092-8/+13
| | | | llvm-svn: 262995
* Use lto_bool_t instead of a raw `bool` (fixup for r262977).Sean Silva2016-03-091-1/+1
| | | | | | | Hopefully this should bring llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast back to life. llvm-svn: 262994
* Fix ThinLTO test: depends on the X86 backendMehdi Amini2016-03-093-0/+3
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 262993
* [lto] Avoid duplicate symbol error for appending linkage.Sean Silva2016-03-092-0/+8
| | | | | | | | | | | | | | | | Summary: Is there any other code needed for correctly handling appending linkage? Do we need to do something more with @llvm.global_ctors in SymbolTable.cpp:addBitcodeFile; otherwise the combined bitcode module won't have all the global ctors. Reviewers: rafael Subscribers: Bigcheese, llvm-commits, joker.eph Differential Revision: http://reviews.llvm.org/D17975 llvm-svn: 262992
* [index] Add a message for the assertion, NFC.Argyrios Kyrtzidis2016-03-091-1/+2
| | | | llvm-svn: 262991
* void foo() is not a valid C prototype, one has to write void foo(void)Mehdi Amini2016-03-092-2/+2
| | | | | | | Remove a warning introduced in r262977 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 262990
* Return StringRef instead of a naked char*; NFCSanjoy Das2016-03-091-2/+2
| | | | llvm-svn: 262989
* [IRCE] Reflow comments; NFCSanjoy Das2016-03-091-4/+2
| | | | llvm-svn: 262988
* Fix library dependency for llvm-lto after r262977Mehdi Amini2016-03-092-1/+2
| | | | | | | | It is a transitive dependency, so static build are OK but not build with individual DSO for each LLVM library. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 262987
* Last round of preliminary cleanup in my refactoring of aliases.Enrico Granata2016-03-094-107/+124
| | | | | | | | | | | | | | The next step is to actually turn CommandAlias into a full-blown CommandObject citizen. This is tricky given the current architecture of the CommandInterpreter but I think I have found a reasonable path forward. The current plan is to make class CommandAlias : public CommandObject, and have all the several GetCommand calls not actually traverse through the alias to the underlying command object The only times that an alias will be traversed are: a) execution; when time comes to run an alias, I will just grab the underlying command and options, and make the interpreter execute that according to its current algorithm b) subcommand traversal; if one has an alias to a multiword command, grabbing a subcommand will see through to the subcommand Other operations, e.g. command listing, command names, command helps, ..., will all use the alias directly. This will, in turn, lead to the removal of the separate alias dictionary, and just mix user commands and aliases in one map llvm-svn: 262986
* [index] libclang: Make sure to treat forward ObjC protocols as ↵Argyrios Kyrtzidis2016-03-093-4/+17
| | | | | | | | ObjCProtocolRef declarations, and fix related crash. rdar://25035376 llvm-svn: 262985
* [index] Fix assertion hit when indexing re-declarations of built-in functions.Argyrios Kyrtzidis2016-03-092-0/+6
| | | | llvm-svn: 262984
* Avoid unnecessary qualification.Sean Silva2016-03-091-1/+1
| | | | | | Thanks to Rui for spotting this. llvm-svn: 262983
* [WebAssembly] Implement irreducible control flow.Dan Gohman2016-03-096-35/+385
| | | | | | | | This implements a very simple conservative transformation that doesn't require more than linear code size growth. There's room for much more optimization in this space. llvm-svn: 262982
* Fix GOLD plugin build after r262976Mehdi Amini2016-03-091-1/+1
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 262981
* Remove trailing newline from test case; NFCSanjoy Das2016-03-091-1/+0
| | | | llvm-svn: 262980
* [SCEV] Slightly generalize getRangeViaFactoringSanjoy Das2016-03-092-13/+76
| | | | | | | | | Building on the previous change, this generalizes ScalarEvolution::getRangeViaFactoring to work with {Ext(C?A:B)+k0,+,Ext(C?A:B)+k1} where Ext can be a zero extend, sign extend or truncate operation, and k0 and k1 are constants. llvm-svn: 262979
* [SCEV] Slightly generalize getRangeViaFactoringSanjoy Das2016-03-092-25/+104
| | | | | | | | This change generalizes ScalarEvolution::getRangeViaFactoring to work with {Ext(C?A:B),+,Ext(C?A:B)} where Ext can be a zero extend, sign extend or truncate operation. llvm-svn: 262978
* libLTO: add a ThinLTOCodeGenerator on the model of LTOCodeGenerator.Mehdi Amini2016-03-0913-3/+1444
| | | | | | | | | | | | | | | | | This is intended to provide a parallel (threaded) ThinLTO scheme for linker plugin use through the libLTO C API. The intent of this patch is to provide a first implementation as a proof-of-concept and allows linker to start supporting ThinLTO by definiing the libLTO C API. Some part of the libLTO API are left unimplemented yet. Following patches will add support for these. The current implementation can link all clang/llvm binaries. Differential Revision: http://reviews.llvm.org/D17066 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 262977
* FunctionIndex is not optional for renameModuleForThinLTO(), make it a ↵Mehdi Amini2016-03-094-8/+8
| | | | | | | reference (NFC) From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 262976
OpenPOWER on IntegriCloud