summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* xfail TestTopLevelExprs for Android API 21-22 (llvm.org/pr27787)Tamas Berghammer2016-05-171-2/+4
| | | | llvm-svn: 269759
* [include-fixer] Make the "extend to the right" hack support typos without ↵Benjamin Kramer2016-05-172-7/+27
| | | | | | | | nested names in the front. This handles cases where the initial namespace is unknown. llvm-svn: 269758
* [InstCombine] Don't crash when trying to take an element of a ConstantExpr.Benjamin Kramer2016-05-172-0/+13
| | | | | | Fixes PR27786. llvm-svn: 269757
* [WebAssembly] Remove our copy of PrologEpilogInserterDerek Schuff2016-05-173-1060/+0
| | | | | | It's no longer needed after r269750 llvm-svn: 269756
* [mips][microMIPS] Implement BEQZC and BNEZC instructionsZoran Jovanovic2016-05-178-3/+81
| | | | | | Differential Revision: http://reviews.llvm.org/D15417 llvm-svn: 269755
* [Mips] Set mips32 as default CPU for MIPS32 AndroidPetar Jovanovic2016-05-172-2/+4
| | | | | | | | Change default CPU for MIPS32 Android. Now it is mips32 (rev1). Differential Revision: http://reviews.llvm.org/D20313 llvm-svn: 269754
* [mips] Compact branch policy control for MIPSR6Simon Dardis2016-05-172-8/+62
| | | | | | | | | | | | | | | This patch adds the commandline option -mips-compact-branches={never,optimal,always), which controls how LLVM generates compact branches for MIPS targets. By default, the compact branch policy is 'optimal' where LLVM will (hopefully) pick the optimal branch for any situation. The 'never' policy will disable the generation of compact branches and 'always' will generate compact branches wherever possible. Reviewers: dsanders Differential Review: http://reviews.llvm.org/D20167 llvm-svn: 269753
* [mips][microMIPS][DSP] Implement BALIGN, BITREV, BPOSGE32, CMP*, CMPGDU*, ↵Zlatko Buljan2016-05-1713-19/+189
| | | | | | | | CMPGU* and CMPU* instructions Differential Revision: http://reviews.llvm.org/D16182 llvm-svn: 269752
* [OPENMP] Pass scalar firstprivate vars by value.Alexey Bataev2016-05-1722-446/+413
| | | | | | | | For better performance and to unify code with offloading part we pass scalar firstprivate values by value, instead of by reference. It will remove some extra copying operations. llvm-svn: 269751
* Factor PrologEpilogInserter around spilling, frame finalization, and scavengingDerek Schuff2016-05-177-88/+154
| | | | | | | | | | | | | | | PrologEpilogInserter has these 3 phases, which are related, but not all of them are needed by all targets. This patch reorganizes PEI's varous functions around those phases for more clear separation. It also introduces a new TargetMachine hook, usesPhysRegsForPEI, which is true for non-virtual targets. When it is true, all the phases operate as before, and PEI requires the AllVRegsAllocated property on MachineFunctions. Otherwise, CSR spilling and scavenging are skipped and only prolog/epilog insertion/frame finalization is done. Differential Revision: http://reviews.llvm.org/D18366 llvm-svn: 269750
* [asan] Don't raise false alarm to recv/recvfrom when MSG_TRUNC is present.Maxim Ostapenko2016-05-172-2/+38
| | | | | | | | | | | | | | | | | | Fix https://llvm.org/bugs/show_bug.cgi?id=27673. Currenty ASan checks the return value of real recv/recvfrom to see if the written bytes fit in the buffer. That works fine most of time. However, there is an exception: (from the RECV(2) man page) MSG_TRUNC (since Linux 2.2) ... return the real length of the packet or datagram, even when it was longer than the passed buffer. ... Some programs combine MSG_TRUNC, MSG_PEEK and a single-byte buffer to peek the incoming data size without reading (much of) them. In this case, the return value is usually longer than what's been written and ASan raises a false alarm here. To avoid such false positive reports, we can use min(res, len) in COMMON_INTERCEPTOR_WRITE_RANGE checks. Differential Revision: http://reviews.llvm.org/D20280 llvm-svn: 269749
* clang-format: [JS] simplify logic by parsing forward.Martin Probst2016-05-171-65/+36
| | | | | | | This also reduces complexity to O(n) from O(n^2) by avoiding backtracking re-parses, and fixes length calculation. llvm-svn: 269748
* clang-format: [JS] fix template string width counting.Martin Probst2016-05-172-45/+32
| | | | | | | | | | | | | | | Summary: Simply looking at the final text greatly simplifies the algorithm and also fixes a reported issue. This requires duplicating the "actual encoding width" logic, but that seems cleaner than the column acrobatics before. Reviewers: djasper, bkramer Subscribers: cfe-commits, klimek Differential Revision: http://reviews.llvm.org/D20208 llvm-svn: 269747
* [AVX512] Add parentheses around macro arguments in AVX512F intrinsics. ↵Craig Topper2016-05-171-2255/+2077
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269746
* [AVX512] Add parentheses around macro arguments in AVX512VL intrinsics. ↵Craig Topper2016-05-171-1346/+1165
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269745
* [AVX512] Add parentheses around macro arguments in AVX512VLDQ intrinsics. ↵Craig Topper2016-05-171-228/+238
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269744
* [AVX512] Add parentheses around macro arguments in AVX512VLBW intrinsics. ↵Craig Topper2016-05-171-240/+184
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269743
* [AVX512] Add parentheses around macro arguments in AVX512PF intrinsics. ↵Craig Topper2016-05-171-43/+43
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269742
* [AVX512] Add parentheses around macro arguments in AVX512ER intrinsics. ↵Craig Topper2016-05-171-66/+66
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269741
* [AVX512] Add parentheses around macro arguments in AVX512DQ intrinsics. ↵Craig Topper2016-05-171-403/+445
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269740
* [AVX512] Add parentheses around macro arguments in AVX512BW intrinsics. ↵Craig Topper2016-05-171-162/+120
| | | | | | | | Remove leading underscores from macro argument names. Add explicit typecasts to all macro arguments and return values. And finally reformat after all the adjustments. This is a mostly mechanical change accomplished with a script. I tried to split out any changes to the typecasts that already existed into separate commits. llvm-svn: 269739
* [AVX512] Fix return types in several test cases to match the intrinsic ↵Craig Topper2016-05-171-3/+3
| | | | | | they're testing. llvm-svn: 269738
* [AVX512] Correct types for scalar double precision FMA intrinsics and single ↵Craig Topper2016-05-171-42/+42
| | | | | | precision getexp intrinsics. llvm-svn: 269737
* [WebAssembly] Improve the precision of memory and side effect dependence ↵Dan Gohman2016-05-172-25/+226
| | | | | | | | | | tracking. MachineInstr::isSafeToMove is more conservative than is needed here; use a more explicit check, and incorporate knowledge of some WebAssembly-specific opcodes. llvm-svn: 269736
* [X86] Fix a few intrinsic tests to use the return type that matches the ↵Craig Topper2016-05-171-4/+4
| | | | | | intrinsic they're testing. llvm-svn: 269735
* [X86] Add a few missing typecasts to intrinsics. Found by playing with ↵Craig Topper2016-05-172-4/+6
| | | | | | -fno-lax-vector-conversions on the builtin tests. llvm-svn: 269734
* [AVX512] _m512_setzero_qi/hi should return __m512i.Craig Topper2016-05-172-15/+15
| | | | llvm-svn: 269733
* [AVX512] Fix odd formatting in intrinsic header.Craig Topper2016-05-171-10/+10
| | | | llvm-svn: 269732
* Debug Info: Don't emit a DW_AT_data_member_location for DWARF bitfields.Adrian Prantl2016-05-173-9/+6
| | | | | | | | | The DWARF spec states that a member entry may have either a DW_AT_data_member_location or a DW_AT_data_bit_offset, but not both. This fixes a bug found in PR 27758. llvm-svn: 269731
* Modules: set SystemHeader to true if we are building a system module.Manman Ren2016-05-178-7/+44
| | | | | | | | | | | | If we are processing a #include from a module build, we should treat it as a system header if we're building a system module. Passing an optional flag to HeaderSearch::LookupFile. Before this, the testing case will crash when accessing a freed FileEntry. rdar://26214027 llvm-svn: 269730
* try to avoid unused variable warning in release build; NFCISanjay Patel2016-05-171-1/+2
| | | | llvm-svn: 269729
* [InstCombine] check vector elements before trying to transform LE/GE vector ↵Sanjay Patel2016-05-172-78/+64
| | | | | | | | | | | | | | | | | icmp (PR27756) Fix a bug introduced with rL269426 : [InstCombine] canonicalize* LE/GE vector integer comparisons to LT/GT (PR26701, PR26819) We were assuming that a ConstantDataVector / ConstantVector / ConstantAggregateZero operand of an ICMP was composed of ConstantInt elements, but it might have ConstantExpr or UndefValue elements. Handle those appropriately. Also, refactor this function to join the scalar and vector paths and eliminate the switches. Differential Revision: http://reviews.llvm.org/D20289 llvm-svn: 269728
* llvm-dwp: Provide error handling for invalid string field formsDavid Blaikie2016-05-173-8/+19
| | | | | | | | | | This diagnostic could be improved by adding the name of the input file containing the invalid data and/or some information about how to identify the specific offending attribute/tag in the input. But that's not an immediate priority as these corner cases of invalid input shouldn't come up too often. llvm-svn: 269727
* Remove .hot and .unlikely prefixes from function section names.Easwaran Raman2016-05-162-47/+2
| | | | | | This code currently relies on static methods in ProfileSummary to determine whether a function is hot or unlikley. I am refactoring the ProfileSummary code and these methods will be removed. As discussed offline, the right way to re-introduce this is to add a pass to annotate functions with unlikely/hot hints and use the hints to determine the prefix here. llvm-svn: 269726
* AMDGPU/R600: Use correct number of vector elements when lowering private loadsJan Vesely2016-05-162-5/+108
| | | | | | | | | | Reviewer: tstellardAMD, arsenm Subscribers: arsenm, kzhuravl, llvm-commits Differential Revision: http://reviews.llvm.org/D20032 llvm-svn: 269725
* Avoid leak. Free before resetting.Sean Silva2016-05-161-1/+1
| | | | llvm-svn: 269724
* llvm-dwp: Add error handling for invalid (non-CU) top level tag in ↵David Blaikie2016-05-163-8/+17
| | | | | | | | | | debug_info.dwo The diagnostic could be improved a bit to include information about which input file had the mistake (& which unit (counted, since the name of the unit won't be accessible) within the input). llvm-svn: 269723
* Remove extra semicolon to fix warning. NFC.Michael Kuperstein2016-05-161-1/+1
| | | | llvm-svn: 269722
* Less broken fix for buildbot breakage.Richard Smith2016-05-161-1/+7
| | | | llvm-svn: 269721
* Try to make the buildbots green again: avoid the need for class Attr to beRichard Smith2016-05-161-0/+7
| | | | | | complete for users of AttrVec. llvm-svn: 269720
* [profile] Add portability macro for atomic fetch_and_addXinliang David Li2016-05-163-1/+19
| | | | | | | This is another enabler patch to support value profiling without dynamic memory allocation. llvm-svn: 269719
* Doxygen comments for avxintrin.h.Ekaterina Romanova2016-05-163-169/+853
| | | | | | | | | | | | | | | Added doxygen comments to avxintrin.h's intrinsics. As of now, only around 50% of the intrinsics in this file are documented here. The patches for the other half will be sent out later. Updated bmiintrin.h to fix an incorrect section name. Updated f16cintrin.h to fix incorect parameter names. The doxygen comments are automatically generated based on Sony's intrinsics document. I got an OK from Eric Christopher to commit doxygen comments without prior code review upstream. llvm-svn: 269718
* Switch from SmallVector to TinyPtrVector for the list of attributes on a ↵Richard Smith2016-05-161-2/+3
| | | | | | declaration. This removes a memory allocation for the common case where the declaration has only one attribute. llvm-svn: 269717
* Avoid O(n^2) string analysis when handling GNU __asm__ statements.Richard Smith2016-05-161-8/+15
| | | | llvm-svn: 269716
* Avoid temporary vector for sorting in BitcodeWriterMehdi Amini2016-05-161-13/+10
| | | | | | | As suggested by Duncan, fixup for r269634 and r269635 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 269715
* Debug info: Don't emit a DW_AT_byte_size when emitting a DWARF4 bit field.Adrian Prantl2016-05-162-3/+9
| | | | | | | | | | The DWARF spec clearly states that a bit field member should have either a DW_AT_byte_size or a DW_AT_bit_size, but not both. Also the DW_AT_byte_size is redundant with the size of the type of the member. This fixes a bug found in PR 27758. llvm-svn: 269714
* Look for CMake.app when searching for cmakeTodd Fiala2016-05-161-0/+18
| | | | | | | | | | | | | | On OS X systems, look for /Applications/CMake.app and ~/Applications/CMake.app versions of the cmake command line binary when trying harder to find a cmake not on the system path. Reviewers: clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D20303 llvm-svn: 269713
* AMDGPU: Add some private element size testsMatt Arsenault2016-05-161-6/+126
| | | | llvm-svn: 269712
* Add a (size, value) constructor to TinyPtrVector.Richard Smith2016-05-161-2/+10
| | | | llvm-svn: 269711
* Add missing TinyPtrVector functionality: reverse iterators and conversion ofRichard Smith2016-05-161-1/+21
| | | | | | TinyPtrVector<T*> to ArrayRef<const T*>. llvm-svn: 269710
OpenPOWER on IntegriCloud