summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [MSVC] Handle out-of-line definition of static data member correctly (fix ↵Alexey Bataev2015-05-203-30/+53
| | | | | | | | | | | | | | | | | | for http://llvm.org/PR21164), by Alexey Frolov There are 3 cases of defining static const member: initialized inside the class, not defined outside the class. initialized inside the class, defined outside the class. not initialized inside the class, defined outside the class. Revision r213304 was supposed to fix the linkage problem of case (1), but mistakenly it made case (2) behave the same. As a result, out-of-line definition of static data member is not handled correctly. Proposed patch distinguishes between cases (1) and (2) and allows to properly emit static const members under –fms-compatibility option. This fixes http://llvm.org/PR21164. Differential Revision: http://reviews.llvm.org/D9850 llvm-svn: 237787
* [StatepointLowering] Support of the gc.relocates for invoke statepoints.Igor Laevsky2015-05-205-58/+252
| | | | | | | | | | This change implements support for lowering of the gc.relocates tied to the invoke statepoint. This is acomplished by storing frame indices of the lowered values in "StatepointRelocatedValues" map inside FunctionLoweringInfo instead of storing them in per-basic block structure StatepointLowering. After this change StatepointLowering is used only during "LowerStatepoint" call and it is not necessary to store it as a field in SelectionDAGBuilder anymore. Differential Revision: http://reviews.llvm.org/D7798 llvm-svn: 237786
* Use base-pointer address space when creating new access functionsTobias Grosser2015-05-202-3/+50
| | | | llvm-svn: 237785
* Allow skipping imports in the module visitor.Manuel Klimek2015-05-204-46/+124
| | | | | | | Skip imports when we know that we do not need to visit any imports because we've already deserialized the redecls from a module. llvm-svn: 237782
* Fix handling of hijacked events in synchronous modeIlia K2015-05-209-16/+127
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch includes the following changes: * Fix Target::Launch to handle hijacked event in synchronous mode * Improve MiStartupOptionsTestCase tests to expect *stopped (MI) * Add SBProcess::GetStopEventForStopID * Add ProcessModID::SetStopEventForLastNaturalStopID/GetStopEventForStopID * Add const qualifier to ProcessModID::GetLastNaturalStopID * Add SBProcess::GetStopEventForStopID * Don't broadcast hijacked event in Target::Launch * Add CMICmnLLDBDebugger::CheckIfNeedToRebroadcastStopEvent/RebroadcastStopEvent Test Plan: ./dotest.py -v --executable $BUILDDIR/bin/lldb tools/lldb-mi/startup_options/ Reviewers: zturner, jingham, clayborg, abidh Reviewed By: clayborg Subscribers: abidh, zturner, lldb-commits, clayborg, jingham Differential Revision: http://reviews.llvm.org/D9371 llvm-svn: 237781
* [mips] [IAS] Factor out .set nomacro warning. NFC.Toma Tabacu2015-05-201-8/+11
| | | | | | | | | | | | Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9772 llvm-svn: 237780
* Add printing and testing to ScopArrayInfoTobias Grosser2015-05-205-19/+50
| | | | | | | | | | | | Being here, we extend the interface to return the element type and not a pointer to the element type. We also provide a function to get the size (in bytes) of the elements stored in this array. We currently still store the element size as an innermost dimension in ScopArrayInfo, which is somehow inconsistent and should be addressed in future patches. llvm-svn: 237779
* [X86] Add _mm256_set_m128 and its 5 variants.Michael Kuperstein2015-05-202-0/+65
| | | | | | Differential Revision: http://reviews.llvm.org/D9855 llvm-svn: 237778
* Fix CGRecordLayouts description to say it maps clang types not llvm typesYaron Keren2015-05-201-12/+10
| | | | | | | and de-duplicate data fields names from comments according to the coding standard. llvm-svn: 237776
* [TableGen] Make some variable names consistent with their type names and ↵Craig Topper2015-05-202-33/+33
| | | | | | just generally consistent across all of the overloads. llvm-svn: 237775
* [TableGen] Fix a memory leak.Craig Topper2015-05-201-2/+2
| | | | llvm-svn: 237774
* [TableGen] Don't override convertValue for some of the Init types when it ↵Craig Topper2015-05-201-74/+7
| | | | | | does the same thing as the base class implementation. llvm-svn: 237773
* [X86] Implement the local-exec TLS model for Windows targetsDavid Majnemer2015-05-202-14/+48
| | | | | | | We know that _tls_index is zero for local-exec TLS variables because they are always defined in the executable. llvm-svn: 237772
* [clang-cl] Map /GA to -ftls-model=local-execDavid Majnemer2015-05-202-1/+5
| | | | | | | The /GA switch informs the compiler that it may assume that all TLS access refers to the executable's index: 0. llvm-svn: 237771
* MC: Use MCSymbol in most of ELFObjectWriter, NFCDuncan P. N. Exon Smith2015-05-201-36/+36
| | | | | | Stop using MCSymbolData where we also need MCSymbol. llvm-svn: 237770
* [OPENMP] -fopenmp enables OpenMP support (fix for http://llvm.org/PR23492)Alexey Bataev2015-05-20185-400/+384
| | | | | | | -fopenmp turns on OpenMP support and links libiomp5 as OpenMP library. Also there is -fopenmp={libiomp5|libgomp} option that allows to override effect of -fopenmp and link libgomp library (if -fopenmp=libgomp is specified). Differential Revision: http://reviews.llvm.org/D9736 llvm-svn: 237769
* Fix for aggregate copying of variable length arrays.Alexey Bataev2015-05-203-16/+43
| | | | | | | | | | | | | Patch fixes codegen for aggregate copying of VLAs. Currently method CodeGenFunction::EmitAggregateCopy() does not support copying of VLAs. Patch checks if the size of the type is 0, then checks if the type is actually a variable-length array. Then it calculates total length for this array and calculates total size of the array in bytes: <total number of elements in array> * aligned_sizeof(ElementType) (if copy assignment is requested). If simple copying is requested, size is calculated like: <total number of elements in array> * aligned_sizeof(ElementType) - aligned_sizeof(ElementType) + sizeof(ElementType). memcpy() is used with this calculated size of the VLA. Differential Revision: http://reviews.llvm.org/D9851 llvm-svn: 237768
* Fix building and testing libc++ with GCC.Eric Fiselier2015-05-204-6/+9
| | | | | | | | | | | | | | | | The changes in src/exception.cpp and cmake/Modules/HandleLibCXXABI.cmake fix a bug when building libc++ with GCC. Because GCC does not support __has_include we need to explicitly tell it that we are building against libc++abi via the preprocessor definition `LIBCXX_BUILDING_LIBCXXABI`. The changes in include/ratio are to work around CWG defect 1712 (constexpr variable template declarations). GCC 4.8 and before has not adopted the resolution to this defect. The changes in include/exception work around an issue where is_final is used without it being defined in type_traits. llvm-svn: 237767
* Support: Introduce LLVM_FALLTHROUGH macro.Peter Collingbourne2015-05-201-0/+12
| | | | llvm-svn: 237766
* Add a GCStrategy for CoreCLRSwaroop Sridhar2015-05-207-5/+105
| | | | | | | | | | | | | | This change adds a new GC strategy for supporting the CoreCLR runtime. This strategy is currently identical to Statepoint-example GC, but is necessary for several upcoming changes specific to CoreCLR, such as: 1. Base-pointers not explicitly reported for interior pointers 2. Different format for stack-map encoding 3. Location of Safe-point polls: polls are only needed before loop-back edges and before tail-calls (not needed at function-entry) 4. Runtime specific handshake between calls to managed/unmanaged functions. llvm-svn: 237753
* [GDBRemoteCommunicationClient] Increase timeout for qfProcessInfo packet.Siva Chandra2015-05-201-0/+3
| | | | | | | | | | | | | | | | | | | | | Summary: The test in TestPlatformCommand which runs "platform process list" has been timing out for Android when running running dosep.py with LLDB_TEST_THREADS=8. This patch increases the packet timeout to a large value of 1min to accommodate the long time required for a response for the qfProcessInfo packet on Android. Test Plan: LLDB_TEST_THREADS=8 ./dosep.py on Android. Reviewers: chaoren Reviewed By: chaoren Subscribers: tberghammer, lldb-commits Differential Revision: http://reviews.llvm.org/D9866 llvm-svn: 237752
* [bpf] fix buildAlexei Starovoitov2015-05-201-1/+1
| | | | llvm-svn: 237751
* MC: Take MCSymbol in MachObjectWriter::getSymbolAddress(), NFCDuncan P. N. Exon Smith2015-05-207-50/+37
| | | | | | | Pass through an `MCSymbol` instead of an `MCSymbolData` so we can get rid of the back pointer. llvm-svn: 237750
* MC: Use MCSymbol in MCAsmLayout::getSymbolOffset(), NFCDuncan P. N. Exon Smith2015-05-1910-35/+31
| | | | | | | Continue to canonicalize on MCSymbol instead of MCSymbolData when both are needed. llvm-svn: 237749
* Factor out LTO detection to common configuration.Peter Collingbourne2015-05-192-23/+30
| | | | | | This will allow us to test other sanitizers with LTO. llvm-svn: 237747
* CFI: Remove <utility> include.Peter Collingbourne2015-05-191-1/+0
| | | | | | It is unused, and causes a test failure on Darwin. llvm-svn: 237746
* Fix race condition in thread test.Eric Fiselier2015-05-191-8/+25
| | | | llvm-svn: 237745
* [PlaceSafepoints] Stop special casing some intrinsicsPhilip Reames2015-05-192-17/+56
| | | | | | We were special casing a handful of intrinsics as not needing a safepoint before them. After running into another valid case - memset - I took a closer look and realized that almost no intrinsics need to have a safepoint poll before them. Restructure the code to make that apparent so that we stop hitting these bugs. The only intrinsics which need a safepoint poll before them are ones which can run arbitrary code. llvm-svn: 237744
* Try to fix the build with MSVC 2015 by disabling sized deallocationReid Kleckner2015-05-191-0/+5
| | | | | | | | | | | I can't actually test this properly because uninstalling MSVC 2015 CTP 6 and reinstalling the 2015 RC takes hours. I can only verify that this doesn't mess up MSVC 2013 and 2015 CTP 6 builds, which is what I've done. Should fix PR23513. llvm-svn: 237743
* Remove trailing slash from dumping directory FileSpec.Chaoren Lin2015-05-192-4/+9
| | | | | | | | | | | | Reviewers: domipheus, ovyalov Reviewed By: ovyalov Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D9862 llvm-svn: 237741
* Address @danalberts comments on r237700Eric Fiselier2015-05-193-3/+3
| | | | llvm-svn: 237740
* Revert r237539: "Reapply r237520 with another fix for infinite looping"Hans Wennborg2015-05-196-162/+7
| | | | | | This caused PR23583. llvm-svn: 237739
* Fix uninitialized values and bad enum conversions found by UBSAN.Eric Fiselier2015-05-194-17/+17
| | | | llvm-svn: 237738
* Rename internal trait that used non-reserved name.Eric Fiselier2015-05-191-4/+4
| | | | llvm-svn: 237737
* Remove a stale commentPhilip Reames2015-05-191-3/+0
| | | | | | The todo was implemented a while ago; I just forgot to remove the comment. llvm-svn: 237736
* [lib/Fuzzer] change the meaning of -timeout flag: now timeout is applied to ↵Kostya Serebryany2015-05-196-7/+22
| | | | | | every unit of work separately llvm-svn: 237735
* Add a comment line that was accidentally dropped in r236671.Akira Hatanaka2015-05-191-0/+1
| | | | llvm-svn: 237734
* [DWARF parser] Make DWARF parser more robust against missing compile/type units.Alexey Samsonov2015-05-196-27/+33
| | | | | | | | | | | | | | | | | | DWARF standard claims that each compilation/type unit header in .debug_info/.debug_types section must be followed by corresponding compile/type unit DIE, possibly with its children. Two situations are possible: * compile/type unit DIE is missing because DWARF producer failed to emit it. * DWARF parser failed to parse unit DIE correctly, for instance if it contains some unsupported attributes (see r237721, for instance). In either of these cases, the library, and the tools that use it (llvm-dwarfdump, llvm-symbolizer) should not crash. Insert appropriate checks to protect against this. llvm-svn: 237733
* [opaque pointer type] Provide a convenience function for creating direct ↵David Blaikie2015-05-191-0/+5
| | | | | | | | | CallInsts to Functions in IRBuilder Might need a similar convenience in CallInst's ctor too, but we'll see/will add it when it becomes useful. llvm-svn: 237731
* Revert r237708 (MIR serialization) - incremental buildbots became unstable.Alex Lorenz2015-05-1921-414/+11
| | | | | | | | The incremental buildbots entered a pass-fail cycle where during the fail cycle one of the tests from this commit fails for an unknown reason. I have reverted this commit and will investigate the cause of this problem. llvm-svn: 237730
* [opaque pointer type] Pass the explicit call type when creating calls from ↵David Blaikie2015-05-191-17/+12
| | | | | | | | | | | LazyRuntimeFunctions The implicit conversion was causing issues for a helper being added that would take an llvm::Function rather than an llvm::Value to make the CallInst. Since we'll eventually need to specify the type of the call explicitly anyway, fix these up to avoid the future ambiguity. llvm-svn: 237729
* [opaque pointer type] Provide the ability to pass an explicit type when ↵David Blaikie2015-05-191-0/+6
| | | | | | | | | | | | | creating a CallInst through IRBuilder A use for this will be added to Clang shortly. I haven't hit the specific cases I want to cleanup in LLVM just yet. A utility that avoids the need for this in direct calls to llvm::Functions will be added too - since in that case the type can be retrieved from the llvm::Function directly. llvm-svn: 237728
* Makefile fix for testsuite -- Follow up to r237618Jonathan Peyton2015-05-191-1/+1
| | | | | | | | This changes INCLUDE_PATH to C_INCLUDE_PATH and misspelled CLASH to SLASH Patch by Sunita Chandrasekaran llvm-svn: 237727
* MachineInstr: Remove unused parameter.Matthias Braun2015-05-1914-27/+21
| | | | llvm-svn: 237726
* [ASan/Win] Add DLL thunk for new coverage hookReid Kleckner2015-05-191-0/+1
| | | | | | Should fix dll_host.cc test failing on bots. llvm-svn: 237725
* [Speculation] NFC: more header commentsJingyue Wu2015-05-191-0/+9
| | | | | | explaining how it differs from SpeculativeExecuteBB in SimplifyCFG. llvm-svn: 237724
* Fix MIR testcase committed in r237708 - remove target triple.Alex Lorenz2015-05-191-3/+0
| | | | | | | Remove the target specific triple and datalayout from the llvm IR in the MIR testcase file. llvm-svn: 237723
* Remove unnecessary cast. NFCPete Cooper2015-05-191-1/+1
| | | | llvm-svn: 237722
* [DWARF parser] Add basic support for DWZ DWARF multifile extensions.Alexey Samsonov2015-05-199-44/+82
| | | | | | | | | | | | | | | | | | | | | This change implements basic support for DWARF alternate sections proposal: http://www.dwarfstd.org/ShowIssue.php?issue=120604.1&type=open LLVM tools now understand new forms: DW_FORM_GNU_ref_alt and DW_FORM_GNU_strp_alt, which are used as references to .debug_info and .debug_str sections respectively, stored in a separate file, and possibly shared between different executables / shared objects. llvm-dwarfdump and llvm-symbolizer don't yet know how to access this alternate debug file (usually pointed by .gnu_debugaltlink section), but they can at lease properly parse and dump regular files, which refer to it. This change should fix crashes of llvm-dwarfdump and llvm-symbolizer on files produced by running "dwz" tool. Such files are already installed on some modern Linux distributions. llvm-svn: 237721
* Dereferenceable, dereferenceable_or_null metadata for loadsSanjoy Das2015-05-196-5/+215
| | | | | | | | | | | | | | | | | | | | Summary: Introduce dereferenceable, dereferenceable_or_null metadata for loads with the same semantic as corresponding attributes. This patch depends on http://reviews.llvm.org/D9253 Patch by Artur Pilipenko! Reviewers: hfinkel, sanjoy, reames Reviewed By: sanjoy, reames Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9365 llvm-svn: 237720
OpenPOWER on IntegriCloud