summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Commiting for http://reviews.llvm.org/D20365Mads Ravn2016-05-232-0/+6
| | | | llvm-svn: 270470
* fix typo; NFCSanjay Patel2016-05-231-1/+1
| | | | llvm-svn: 270469
* Fork performance improvementsJonathan Peyton2016-05-233-31/+51
| | | | | | | | | | | Most of this is modifications to check for differences before updating data fields in team struct. There is also some rearrangement of the team struct. Patch by Diego Caballero Differential Revision: http://reviews.llvm.org/D20487 llvm-svn: 270468
* use range-loop; NFCISanjay Patel2016-05-231-4/+2
| | | | llvm-svn: 270467
* llvm-dwp: More error handling around invalid compressed sectionsDavid Blaikie2016-05-234-8/+7
| | | | llvm-svn: 270466
* fix formatting; NFCSanjay Patel2016-05-231-4/+2
| | | | llvm-svn: 270465
* Allow unit testing on WindowsJonathan Peyton2016-05-236-3/+74
| | | | | | | | | | | | | | These changes allow testing on Windows using clang.exe. There are two main changes: 1. Only link to -lm when it actually exists on the system 2. Create basic versions of pthread_create() and pthread_join() for windows. They are not POSIX compliant by any stretch but will allow any existing and future tests to use pthread_create() and pthread_join() for testing interactions of libomp with os threads. Differential Revision: http://reviews.llvm.org/D20391 llvm-svn: 270464
* [WebAssembly] Speed up LiveIntervals updating.Dan Gohman2016-05-231-6/+9
| | | | | | | | Use the more specific LiveInterval::removeSegment instead of LiveInterval::shrinkToUses when we know the specific range that's being removed. llvm-svn: 270463
* llvm-dwp: Ensure compressed sections are preserved long enough for use in ↵David Blaikie2016-05-231-2/+2
| | | | | | | | | | | | | | | | the string pool Now that the string pool is referential rather than maintaining its own copy of string data, compressed sections (well, technically only the debug_str section*) need to be preserved for the lifetime of the pool to match. * I'm not currently optimizing for memory footprint with compressed input - the major memory limit I'm hitting is on dwp+dwp merge steps and we aren't currently compressing contents in dwp files, just in the .dwo inputs. llvm-svn: 270462
* Address post-commit review feedback to r270457David Majnemer2016-05-233-0/+5
| | | | | | | | | | | Add two tests which show our error handling behavior for invalid parameters in the layout_version and empty_bases attributes. Amend our documentation to make it more clear that __declspec(empty_bases) and __declspec(layout_version) can only apply to classes, structs, and unions. llvm-svn: 270461
* Always rerun all tests on Windows.Zachary Turner2016-05-232-0/+4
| | | | | | | | There is flakiness somewhere in the core infrastructure on Windows, so to get the buildbot reliably green we need to mark all tests as flaky. llvm-svn: 270460
* [Hexagon] Move some debug-only variable declarations into DEBUGKrzysztof Parzyszek2016-05-231-19/+21
| | | | llvm-svn: 270459
* Clang support for __is_assignable intrinsicDavid Majnemer2016-05-2311-0/+62
| | | | | | | | | | | | | | | | | | | MSVC now supports the __is_assignable type trait intrinsic, to enable easier and more efficient implementation of the Standard Library's is_assignable trait. As of Visual Studio 2015 Update 3, the VC Standard Library implementation uses the new intrinsic unconditionally. The implementation is pretty straightforward due to the previously existing is_nothrow_assignable and is_trivially_assignable. We handle __is_assignable via the same code as the other two except that we skip the extra checks for nothrow or triviality. Patch by Dave Bartolomeo! Differential Revision: http://reviews.llvm.org/D20492 llvm-svn: 270458
* [MS ABI] Implement __declspec(empty_bases) and __declspec(layout_version)David Majnemer2016-05-239-25/+394
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The layout_version attribute is pretty straightforward: use the layout rules from version XYZ of MSVC when used like struct __declspec(layout_version(XYZ)) S {}; The empty_bases attribute is more interesting. It tries to get the C++ empty base optimization to fire more often by tweaking the MSVC ABI rules in subtle ways: 1. Disable the leading and trailing zero-sized object flags if a class is marked __declspec(empty_bases) and is empty. This means that given: struct __declspec(empty_bases) A {}; struct __declspec(empty_bases) B {}; struct C : A, B {}; 'C' will have size 1 and nvsize 0 despite not being annotated __declspec(empty_bases). 2. When laying out virtual or non-virtual bases, disable the injection of padding between classes if the most derived class is marked __declspec(empty_bases). This means that given: struct A {}; struct B {}; struct __declspec(empty_bases) C : A, B {}; 'C' will have size 1 and nvsize 0. 3. When calculating the offset of a non-virtual base, choose offset zero if the most derived class is marked __declspec(empty_bases) and the base is empty _and_ has an nvsize of 0. Because of the ABI rules, this does not mean that empty bases reliably get placed at offset 0! For example: struct A {}; struct B {}; struct __declspec(empty_bases) C : A, B { virtual ~C(); }; 'C' will be pointer sized to account for the vfptr at offset 0. 'A' and 'B' will _not_ be at offset 0 despite being empty! Instead, they will be located right after the vfptr. This occurs due to the interaction betweeen non-virtual base layout and virtual function pointer injection: injection occurs after the nv-bases and shifts them down by the size of a pointer. llvm-svn: 270457
* SBValue::CreateValueFromData didn’t check whether the SBType passed into ↵Enrico Granata2016-05-231-3/+4
| | | | | | | | it is in fact a valid type - this can lead to LLDB crashing upon access Committing on behalf of Sebastian Theophil llvm-svn: 270456
* Do not split mergeable sections if they are gc'ed.Rui Ueyama2016-05-234-7/+36
| | | | | | | | | | | | | | | | | | | | | Previously, mergeable section's constructors did more than just setting member variables; it split section contents into small pieces. It is not always computationally cheap task because if the section is a mergeable string section, it needs to scan the entire section to split them by NUL characters. If a section would be thrown away by GC, that cost ended up being a waste of time. It is going to be larger problem if the section is compressed -- the whole time to uncompress it and split it up is going to be a waste. Luckily, we can defer section splitting after GC. We just have to remember which offsets are in use during GC and apply that later. This patch implements it. Differential Revision: http://reviews.llvm.org/D20516 llvm-svn: 270455
* SDAG: Remove the transitional default Select() implementationJustin Bogner2016-05-231-33/+1
| | | | | | | | | In r268693, we started requiring that SelectionDAGISel::Select return void, but provided a default implementation that did just that by calling into the old interface. Now that all targets have been updated, we'll just remove the default implementation. llvm-svn: 270454
* llvm-dwp: Fix the build by moving DWPStringPool into the llvm namespaceDavid Blaikie2016-05-231-0/+2
| | | | llvm-svn: 270453
* Extract renaming from D19181Amaury Sechet2016-05-233-9/+4
| | | | | | | | | | | | Summary: This needs to get in before anything is released concerning attribute. If the old name gets in the wild, then we are stuck with it forever. Putting it in its own diff should getting that part at least in fast. Reviewers: Wallbraker, whitequark, joker.eph, echristo, rafael, jyknight Subscribers: llvm-commits, joker.eph Differential Revision: http://reviews.llvm.org/D20417 llvm-svn: 270452
* Fix typos.Rui Ueyama2016-05-231-2/+2
| | | | llvm-svn: 270451
* [profile] show more statisticsXinliang David Li2016-05-232-3/+22
| | | | | | Add value profile statistics with the 'show' command. llvm-svn: 270450
* llvm-dwp: Add an abstraction for the DWP string poolDavid Blaikie2016-05-233-30/+88
| | | | | | | Also reference strings in the memory mapped file, reduces memory usage on a large test case by 18.5%. llvm-svn: 270449
* Remove EhFrameHeader<ELFT>::reserveFde. NFC.Rui Ueyama2016-05-232-18/+10
| | | | llvm-svn: 270448
* Changed parameter names in Fortran modules to correspond with OpenMP 4.5 ↵Jonathan Peyton2016-05-232-76/+76
| | | | | | specification llvm-svn: 270447
* Remove dead code.Rui Ueyama2016-05-231-7/+0
| | | | | | | Since now we always set SHT_PROGBITS to .eh_frame sections, this code path is not executed at runtime. llvm-svn: 270446
* Make .eh_frame a singleton output object.Rui Ueyama2016-05-233-30/+28
| | | | | | | | .eh_frame_hdr assumes that there is only one .eh_frame and ensures it by assertions. This patch makes .eh_frame a real singleton object to simplify. llvm-svn: 270445
* Removing a switch statement that contains only a default label; NFC.Aaron Ballman2016-05-231-3/+1
| | | | llvm-svn: 270444
* Do not propagate section name and attributes to .eh_frame.Rui Ueyama2016-05-237-10/+10
| | | | | | | | .eh_frame is always ".eh_frame" and its attribute is fixed. No need to copy from inputs to outputs. GNU gold also sets SHT_PROGBITS. llvm-svn: 270443
* Rename EHOutputSection -> EhOutputSection for consistency.Rui Ueyama2016-05-233-20/+20
| | | | llvm-svn: 270442
* [clang][AVX512][Builtin] adding missing intrinsics for ↵Michael Zuckerman2016-05-235-4/+151
| | | | | | | | vpmultishiftqb{128|256|512} instruction set . Differential Revision: http://reviews.llvm.org/D20521 llvm-svn: 270441
* [BPF] Remove exit-on-error flag in test (PR27766)Diana Picus2016-05-233-5/+11
| | | | | | | | | | | | | | The exit-on-error flag on the many_args1.ll test is needed to avoid an unreachable in BPFTargetLowering::LowerCall. We can also avoid it by ignoring any superfluous arguments to the call (i.e. any arguments after the first 5). Fixes PR27766. Differential Revision: http://reviews.llvm.org/D20471 v2 of r270419 llvm-svn: 270440
* [ScopInfo] Remove unused typedef OutgoingValueMapTy. NFC.Michael Kruse2016-05-231-2/+0
| | | | llvm-svn: 270439
* [ScopInfo] Change removeMemoryAccesses to remove only one access. NFC.Michael Kruse2016-05-232-16/+14
| | | | | | | This exposes the more basic operation for use by code not related to invariant code hoisting. llvm-svn: 270438
* [X86][RTM] _xabort() should not have "noreturn" attributeAsaf Badouh2016-05-232-3/+17
| | | | | | Differential Revision: http://reviews.llvm.org/D20518 llvm-svn: 270437
* [InlineAsm] Avoid creating extra string instances in ConstraintInfo::Parse()Alexander Potapenko2016-05-231-4/+4
| | | | | | | Don't create unnecessary std::string objects when pushing back to |pCodes|. NFC. llvm-svn: 270436
* Test commitJacob Baungard Hansen2016-05-231-0/+1
| | | | llvm-svn: 270435
* [X86][AVX] Added tests that access ymm registers before and after explicit ↵Simon Pilgrim2016-05-231-6/+60
| | | | | | vzeroupper/vzeroall calls llvm-svn: 270434
* Reverts "[BPF] Remove exit-on-error flag in test (PR27766)"Renato Golin2016-05-233-9/+5
| | | | | | | | This patch reverts r270419 because it broke a lot of buildbots, mostly Windows. We'd like help in investigating the issues, but for now, it should stay out. llvm-svn: 270433
* Remove some unused local variables. NFC.Michael Kruse2016-05-232-19/+0
| | | | | | | Found by clang static analyzer (http://llvm.org/reports/scan-build/) and Visual Studio. llvm-svn: 270432
* [X86][SSE] Regenerated scalar load folding testsSimon Pilgrim2016-05-231-22/+46
| | | | llvm-svn: 270431
* [X86][SSE] Regenerated partial register update testsSimon Pilgrim2016-05-231-38/+46
| | | | llvm-svn: 270430
* Use the SCoP directly for canSynthesize [NFC]Johannes Doerfert2016-05-235-13/+13
| | | | llvm-svn: 270429
* Simplify ScopInfo function interfaces [NFC]Johannes Doerfert2016-05-232-52/+43
| | | | llvm-svn: 270428
* Allow to check for dominance wrt. a SCoP [NFC]Johannes Doerfert2016-05-232-1/+8
| | | | llvm-svn: 270427
* Duplicate part of the Region interface in the Scop class [NFC]Johannes Doerfert2016-05-237-37/+49
| | | | | | | This allows to use the SCoP directly for various queries, thus to hide the underlying region more often. llvm-svn: 270426
* [X86][SSE] Updated sse/avx cvtsi2sd tests to use non-constant valueSimon Pilgrim2016-05-232-14/+10
| | | | llvm-svn: 270425
* Add and use Scop::contains(Loop/BasicBlock/Instruction) [NFC]Johannes Doerfert2016-05-235-28/+34
| | | | llvm-svn: 270424
* [X86][SSE2] Regenerated sse2 upgraded intrinsics testsSimon Pilgrim2016-05-231-5/+18
| | | | llvm-svn: 270423
* [X86][AVX] Regenerated avx upgraded intrinsics testsSimon Pilgrim2016-05-231-41/+77
| | | | llvm-svn: 270422
* Directly access information through the Scop class [NFC]Johannes Doerfert2016-05-238-32/+26
| | | | llvm-svn: 270421
OpenPOWER on IntegriCloud