summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [WebAssembly] Implement anyext.Dan Gohman2015-12-102-0/+20
| | | | llvm-svn: 255179
* [lld][MachO] Always reserve space for the empty string in the mach-o symbolLang Hames2015-12-101-1/+1
| | | | | | | | | | | | | table. The first entry in the MachO symbol table is always the empty string: make sure we reserve space for it, or we will overflow the symbol table by one byte. No test case - this manifests as an occasional memory error. In the near future I hope to set up a bot building and runnnig LLD with sanitizers - that should catch future instances of this issue. llvm-svn: 255178
* Remove visibility attributes from out-of-class method definitions in iostreams.Evgeniy Stepanov2015-12-094-86/+86
| | | | | | | | | | No point in pretending that these methods are hidden - they are actually exported from libc++.so. Extern template declarations make them part of libc++ ABI. This patch does not change libc++.so export list (at least on Linux). llvm-svn: 255177
* Fix crash on invalid initialization with std::initializer_listReid Kleckner2015-12-092-1/+27
| | | | | | | It is possible for CheckListElementTypes to fail without filling in any initializer list elements. llvm-svn: 255176
* [X86] Enable shrink-wrapping by default, but keep it disabled for stack framesQuentin Colombet2015-12-095-6/+168
| | | | | | | | without a frame pointer when unwind may happen. This is a workaround for a bug in the way we emit the CFI directives for frameless unwind information. See PR25614. llvm-svn: 255175
* Objective-C properties: loosen 'atomic' checking for readonly properties.Douglas Gregor2015-12-094-22/+112
| | | | | | | | | | | | | | | r251874 reworked the way we handle properties declared within Objective-C class extensions, which had the effective of tightening up property checking in a number of places. In this particular class of cases, we end up complaining about "atomic" mismatches between an implicitly-atomic, readonly property and a nonatomic, readwrite property, which doesn't make sense because "atomic" is essentially irrelevant to readonly properties. Therefore, suppress this diagnostic when the readonly property is implicitly atomic. Fixes rdar://problem/23803109. llvm-svn: 255174
* [PGO] Add cmake check to determine atomics op availabilityXinliang David Li2015-12-091-0/+30
| | | | | | | | | This allows the profile runtime to pick the right impl for cmp&swap for a given target. Differential Revision: http://reviews.llvm.org/D15248 llvm-svn: 255173
* [CMake] Pass CMAKE_MAKE_PROGRAM through to compiler-rt build.Chris Bieneman2015-12-091-0/+1
| | | | | | This is needed if your make tool is overridden. llvm-svn: 255172
* use range-based for loops; NFCISanjay Patel2015-12-091-6/+4
| | | | llvm-svn: 255171
* [CMake] Provide options for toggling on and off various runtime libraries.Chris Bieneman2015-12-0910-113/+98
| | | | | | | | | | | | | | | Summary: Rather than having to add new "experimental" options each time someone wants to work on bringing a sanitizer to a new platform, this patch makes options for all of them. The default values for the options are set by the platform checks that would have enabled them, but they can be overridden on or off. Reviewers: kubabrecka, samsonov Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14846 llvm-svn: 255170
* Synchronize the logic for deciding to link a gv.Rafael Espindola2015-12-093-1/+20
| | | | | | | We were deciding to not link an available_externally gv over a declaration, but then copying over the body anyway. llvm-svn: 255169
* [tsan] Move emptyset/oldset to ThreadSignalContext.Yabin Cui2015-12-091-5/+6
| | | | | | | | | | | | | | Summary: Android doesn't support __thread keyword. So move emptyset/oldset from THREADLOCAL to ThreadSignalContext. Reviewers: kcc, eugenis, dvyukov Subscribers: llvm-commits, tberghammer, danalbert Differential Revision: http://reviews.llvm.org/D15299 llvm-svn: 255168
* [tsan] Use REAL(malloc) instead of __libc_malloc for Android.Yabin Cui2015-12-092-2/+11
| | | | | | | | | | | | | | | Summary: Android doesn't have __libc_malloc and related allocation functions. As its dynamic linker doesn't use malloc, so we can use REAL(malloc) to replace __libc_malloc safely. Reviewers: kcc, eugenis, dvyukov Subscribers: llvm-commits, tberghammer, danalbert, srhines Differential Revision: http://reviews.llvm.org/D15297 llvm-svn: 255167
* Add 3 more missing inline/visibility attributes.Evgeniy Stepanov2015-12-092-0/+3
| | | | | | | | | These are the cases when an out-of-class definition of a method is marked _LIBCPP_INLINE_VISIBILITY, but the in-class declaration is not. This will start failing when (or if) we switch to attribute((internal_linkage)). llvm-svn: 255166
* Fix the target specific "-msse3" flag check in CMake. NFCSumanth Gundapaneni2015-12-091-9/+1
| | | | | | | | | | | msse3 is a target dependent flag and must be guarded as check_cxx_compiler_flag() checks only for compiler error messages and ignores warnings. Earlier COMPILER_RT_HAS_MSSE3_FLAG is set to "TRUE" for all targets as clang emits warnings and the compilation spits unnecessary warnings for non-X86 targets. This issue is fixed by coupling the flag with "-Werror" Differential Revision: http://reviews.llvm.org/D15362 llvm-svn: 255165
* [tsan] Disable interceptors not supported in Android.Yabin Cui2015-12-092-17/+21
| | | | | | | | | | Reviewers: kcc, eugenis, dvyukov Subscribers: llvm-commits, tberghammer, danalbert, srhines Differential Revision: http://reviews.llvm.org/D15295 llvm-svn: 255164
* fix typos; NFCSanjay Patel2015-12-093-5/+4
| | | | llvm-svn: 255163
* Use __make_integer_seq builtin for std::make_integer_sequence. Patch by K-ballo.Eric Fiselier2015-12-096-12/+68
| | | | llvm-svn: 255162
* enable timeout/exceptional exit support for xUnit formatterTodd Fiala2015-12-093-2/+97
| | | | | | | Also adds enable.py/disable.py script to simplify turning on and off the issue_verification tests helpful for testing a results formatter. llvm-svn: 255161
* asan_win_dynamic_runtime_thunk.cc: declare atexitHans Wennborg2015-12-091-0/+1
| | | | | | | MSVC apparently makes atexit available even without including stdlib.h, but clang-cl does not. This makes the file build also with clang-cl. llvm-svn: 255160
* Put progress.py back, apparently this can't be deleted.Zachary Turner2015-12-091-0/+154
| | | | llvm-svn: 255159
* [PGO] Rename the profdata filename to avoid the conflict b/w tests.Rong Xu2015-12-091-2/+2
| | | | | | | | Two tests diag_mismatch.ll and diag_no_funcprofdata.ll generates the same profdata filename which can conflict in current test runs. This patch renames them to have different names. llvm-svn: 255158
* IR: Make ConstantDataArray::getFP actually return a ConstantDataArrayJustin Bogner2015-12-093-1/+34
| | | | | | | | | | The ConstantDataArray::getFP(LLVMContext &, ArrayRef<uint16_t>) overload has had a typo in it since it was written, where it will create a Vector instead of an Array. This obviously doesn't work at all, but it turns out that until r254991 there weren't actually any callers of this overload. Fix the typo and add some test coverage. llvm-svn: 255157
* [ThinLTO] Release files read when creating combined index in gold pluginTeresa Johnson2015-12-091-0/+3
| | | | | | | This wasn't causing an issue since at HEAD we exit the linker completely after creating the combined index. llvm-svn: 255156
* [Float2Int] Don't operate on vector instructionsReid Kleckner2015-12-092-0/+12
| | | | | | | This fixes a crash bug. It's also not clear if we'd want to do this transform for vectors. llvm-svn: 255155
* [llvm-dwp] Sink debug_types.dwo emission into the code parsing the type ↵David Blaikie2015-12-091-15/+27
| | | | | | | | | | signatures (NFC) This is a preliminary change towards deduplicating type units based on their signatures. Next change will skip emission of types when their signature has already been seen. llvm-svn: 255154
* Remove the -P option from dotest.pyZachary Turner2015-12-095-175/+0
| | | | | | | | This was an option to display a graphical progress bar. Nobody is using this, and it doesn't work correctly anyway with the new result formatter. llvm-svn: 255153
* Delete the -n command line option from dotest.py.Zachary Turner2015-12-093-19/+7
| | | | | | | This removes the option to not print some one time version and diagnostic information when running the test suite. llvm-svn: 255152
* Remove the -i command line option from dotest.py.Zachary Turner2015-12-093-11/+0
| | | | | | | This is part of a larger effort to remove unused command line options from dotest.py. llvm-svn: 255151
* Delete the -F command line option from dotest.py.Zachary Turner2015-12-093-9/+0
| | | | | | | | This removes the failfast command line option as part of an effort to simplify dotest and remove unused command line options. You can still Ctrl+C any time you want to exit early. llvm-svn: 255150
* Don't assign a temporary string to a StringRef.Rafael Espindola2015-12-091-1/+1
| | | | | | Should fix the windows debug and asan bots. llvm-svn: 255149
* Use WeakVH to keep track of calls with operand bundles in CloneCodeInfoSanjoy Das2015-12-093-3/+37
| | | | | | | | `CloneAndPruneIntoFromInst` can DCE instructions after cloning them into the new function, and so an AssertingVH is too strong. This change switches CloneCodeInfo to use a std::vector<WeakVH>. llvm-svn: 255148
* Delete trailing whitespace; NFCSanjoy Das2015-12-091-1/+1
| | | | llvm-svn: 255147
* Delay context construction to when/if it is needed in gold plugin (NFC)Teresa Johnson2015-12-091-3/+3
| | | | llvm-svn: 255146
* clang-format order of gold-plugin includes (NFC)Teresa Johnson2015-12-091-2/+2
| | | | llvm-svn: 255144
* Remove -k command line option from dotest.py.Zachary Turner2015-12-095-97/+0
| | | | | | This is part of an effort to remove unused command line options. llvm-svn: 255143
* Remove -e option from dotest.py.Zachary Turner2015-12-097-27/+8
| | | | | | | This is part of an effort to clean up dotest command line options that are no longer used. llvm-svn: 255142
* Remove -libcxx option from dotest.pyZachary Turner2015-12-092-4/+0
| | | | | | | Nobody was using this, and plus it can be achieved just as well by using -E to set an environment variable. llvm-svn: 255141
* [ThinLTO] FunctionImport pass can take a const index pointer (NFC)Teresa Johnson2015-12-093-5/+5
| | | | llvm-svn: 255140
* Move XunitFormatter into its own xunit_formatter.py file.Todd Fiala2015-12-092-483/+505
| | | | llvm-svn: 255139
* Fix new summary to include exceptional exit count in determining exit valueTodd Fiala2015-12-092-14/+35
| | | | | | | | | | | | The main dotest.py should exit with a system return code of 1 on any issue. This change fixes a place where I omitted counting the exceptional exit value to determine if we should return 1 when using the new summary results. This change also puts a banner around the Issue Details section that comes before the Test Result Summary. llvm-svn: 255138
* [InstCombine] fold bitcasts around an extractelement (2nd try)Sanjay Patel2015-12-092-8/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a redo of r255124 (reverted at r255126) with an added check for a scalar destination type and an added test for the failure seen in Clang's test/CodeGen/vector.c. The extra test shows a different missing optimization. Original commit message: Example: bitcast (extractelement (bitcast <2 x float> %X to <2 x i32>), 1) to float ---> extractelement <2 x float> %X, i32 1 This is part of fixing PR25543: https://llvm.org/bugs/show_bug.cgi?id=25543 The next step will be to generalize this fold: trunc ( lshr ( bitcast X) ) -> extractelement (X) Ie, I'm hoping to replace the existing transform of: bitcast ( trunc ( lshr ( bitcast X))) added by: http://reviews.llvm.org/rL112232 with 2 less specific transforms to catch the case in the bug report. Differential Revision: http://reviews.llvm.org/D14879 llvm-svn: 255137
* [TSan] Try harder to avoid compiler-generated memset calls.Alexey Samsonov2015-12-095-6/+8
| | | | | | | | | | check_memcpy test added in r254959 fails on some configurations due to memset() calls inserted by Clang. Try harder to avoid them: * Explicitly use internal_memset() instead of empty braced-initializer. * Replace "new T()" with "new T", as the former generates zero-initialization for structs in C++11. llvm-svn: 255136
* [tsan] Define sigaction_t for Android.Yabin Cui2015-12-091-0/+12
| | | | | | | | | | Reviewers: kcc, eugenis, dvyukov Subscribers: llvm-commits, tberghammer, danalbert, srhines Differential Revision: http://reviews.llvm.org/D15298 llvm-svn: 255135
* Disable the issue verification tests.Todd Fiala2015-12-093-0/+0
| | | | llvm-svn: 255134
* Revert "Revert r253253 and r253126: "Don't recompute LCSSA after ↵Michael Zolotukhin2015-12-091-2/+12
| | | | | | | | | | | loop-unrolling when possible."" The bug in IndVarSimplify was fixed in r254976, r254977, so I'm reapplying the original patch for avoiding redundant LCSSA recomputation. This reverts commit ffe3b434e505e403146aff00be0c177bb6d13466. llvm-svn: 255133
* [PGO] Resubmit "MST based PGO instrumentation infrastructure" (r254021)Rong Xu2015-12-0929-1/+1570
| | | | | | | | | | | | | | | This new patch fixes a few bugs that exposed in last submit. It also improves the test cases. --Original Commit Message-- This patch implements a minimum spanning tree (MST) based instrumentation for PGO. The use of MST guarantees minimum number of CFG edges getting instrumented. An addition optimization is to instrument the less executed edges to further reduce the instrumentation overhead. The patch contains both the instrumentation and the use of the profile to set the branch weights. Differential Revision: http://reviews.llvm.org/D12781 llvm-svn: 255132
* create 3 issues for testbots: FAIL, ERROR (exceptional), and TIMEOUTTodd Fiala2015-12-094-0/+66
| | | | | | | | | | | | | This change is a trial balloon to verify that the default test summary output sends the right output for the buildbot issue detection script. The effect of this change will be reverted after verifying the testbot behavior. This change will not stay in as is and will knowingly create noise, see this thread: http://lists.llvm.org/pipermail/lldb-dev/2015-December/009048.html llvm-svn: 255131
* Turn on new test summary results by default.Todd Fiala2015-12-092-2/+9
| | | | llvm-svn: 255130
* unique_ptrify some collections in FileManagerDavid Blaikie2015-12-092-18/+12
| | | | llvm-svn: 255129
OpenPOWER on IntegriCloud