summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* FileSpec: Fix PrependPathComponent("/")Pavel Labath2017-01-162-25/+45
| | | | | | | | | | | | | | | | Summary: PrependPathComponent was unconditionally inserting path separators between the path components. This is not correct if the prepended path is "/", which caused problems down the line. Fix the function to use the same algorithm as AppendPathComponent and add a test. This fixes one part of llvm.org/pr31611. Reviewers: clayborg, zturner Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D28677 llvm-svn: 292100
* clang-format: [JS] revert over-eager ASI check.Martin Probst2017-01-162-6/+23
| | | | | | | | | | | | Summary: Change r291428 introduced ASI detection after closing curly braces. That would generally be correct, however this breaks indentation for structural statements. What happens is that CompoundStatementIndenter increases indentation for the current line, then after reading ASI creates a new line (with the increased line level), and only after the structural parser sees e.g. the if/then/else branch closed, line level is reduced. That leads to the new line started by ASI having a level too high. Reviewers: djasper Subscribers: sammccall, cfe-commits, klimek Differential Revision: https://reviews.llvm.org/D28763 llvm-svn: 292099
* [clang-move] Dump enum and type alias declarations.Haojian Wu2017-01-162-13/+17
| | | | | | | | | | Reviewers: ioeric Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D28293 llvm-svn: 292098
* Added a workaround for a `-fdelayed-template-parsing` bug.Michael Park2017-01-162-11/+13
| | | | | | | | | | | | | | | Summary: There seems to be an additional bug in `-fdelayed-template-parsing` similar to http://llvm.org/viewvc/llvm-project?view=revision&revision=236063. This is a workaround for it for <variant> to compile with `clang-cl` on Windows. Reviewers: EricWF Differential Revision: https://reviews.llvm.org/D28734 llvm-svn: 292097
* [X86] Merge the disassemblers handling of the different TYPE_RELs by getting ↵Craig Topper2017-01-163-36/+32
| | | | | | the size information from the ENCODING field. NFCI llvm-svn: 292096
* [X86] Reduce the number of operand 'types' the disassembler needs to deal ↵Craig Topper2017-01-164-189/+108
| | | | | | | | | with. NFCI We were frequently checking for a list of types and the different types conveyed no real information. So lump them together explicitly. llvm-svn: 292095
* [AVX-512] Teach the disassembler about all of the EVEX gather and scatter ↵Craig Topper2017-01-163-4/+162
| | | | | | instructions. llvm-svn: 292094
* [AVX-512] Begin giving the disassembler a way to recognize that VSIB is a ↵Craig Topper2017-01-164-15/+40
| | | | | | | | different encoding than regular addressing modes. This part first teaches it not to check error if EVEX.V2 is used by a VSIB instruction. llvm-svn: 292093
* Fix typos. NFCXin Tong2017-01-161-2/+2
| | | | llvm-svn: 292092
* Implement the missing constexpr stuff in <array>. Fixes PR#31645.Marshall Clow2017-01-164-8/+62
| | | | llvm-svn: 292091
* Use error() instead of fatal() to handle file open error.Rui Ueyama2017-01-161-2/+3
| | | | llvm-svn: 292090
* [AVX-512] Add more gather/scatter encoding test cases.Craig Topper2017-01-162-0/+176
| | | | llvm-svn: 292089
* [AVX-512] Correct memory operand size for VPGATHERQPS and VPGATHERQDCraig Topper2017-01-165-62/+69
| | | | | | | | | with ZMM index. Similar for SCATTER and the prefetch gather and scatter instructions. Fixes PR31618. llvm-svn: 292088
* [AVX-512] Fix register class in one of the gather/scatter memory operands so ↵Craig Topper2017-01-161-1/+1
| | | | | | that all 32 bit registers can be allowed. llvm-svn: 292087
* Reland "[CMake][libcxx] Check that we have libcxxabi before using it"Petr Hosek2017-01-161-1/+2
| | | | | | This relands commit r291726. llvm-svn: 292086
* Reland "[CMake][libcxx] Do not rely on the existence of c++abi or unwind ↵Petr Hosek2017-01-162-4/+6
| | | | | | | | targets" This relands commit r291727. llvm-svn: 292085
* Reland "[CMake][libcxx] Move Python check to main CMake file"Petr Hosek2017-01-162-7/+9
| | | | | | This relands commit r291728. llvm-svn: 292084
* Reland "[CMake][compiler-rt] Mark libcxx build for tsan as standalone"Petr Hosek2017-01-161-0/+1
| | | | | | This relands commit r291722. llvm-svn: 292083
* [InstCombine] add tests to show missed vector folds; NFCSanjay Patel2017-01-152-14/+43
| | | | | | Also, add comments and remove bogus comment. llvm-svn: 292082
* Empty line. NFC.Xin Tong2017-01-151-1/+0
| | | | llvm-svn: 292081
* Use getLoopLatch in place of isLoopSimplifyFormXin Tong2017-01-153-4/+85
| | | | | | | | | | | | | | Summary: Use getLoopLatch in place of isLoopSimplifyForm. we do not need to know whether the loop has a preheader nor dedicated exits. Reviewers: hfinkel, sanjoy, atrick, mkuper Subscribers: mzolotukhin, llvm-commits Differential Revision: https://reviews.llvm.org/D28724 llvm-svn: 292078
* [CostModel][X86] Fix AVX512BW vector shift costs for vXi16 typesSimon Pilgrim2017-01-154-10/+28
| | | | | | We already have patterns in place to support 128/256-bit shifts without AVX512VL llvm-svn: 292077
* [CostModel][X86] Drop separate AVX512VL checks - they match existing AVX512 ↵Simon Pilgrim2017-01-153-51/+9
| | | | | | | | costs Keep the tests though. llvm-svn: 292076
* [CostModel][X86] Update vector shift tests to correctly check by ↵Simon Pilgrim2017-01-153-199/+232
| | | | | | | | non-constant uniform values. Use shuffle( scslar_to_vector, zeroinitializer) pattern instead of shuffle( vec, zeroinitializer) llvm-svn: 292075
* Delete a dead argument. NFCXin Tong2017-01-151-6/+5
| | | | llvm-svn: 292074
* [InstCombine] fix formatting; NFCSanjay Patel2017-01-151-24/+22
| | | | llvm-svn: 292073
* [InstCombine][SSE] Tests showing missed opportunities to pass demanded elts ↵Simon Pilgrim2017-01-151-0/+47
| | | | | | through a pshufb shuffle mask llvm-svn: 292072
* [NVPTX] Add fptosi tests to convert-fp.ll.Justin Lebar2017-01-151-48/+67
| | | | | | These seem to have been left off by accident. llvm-svn: 292071
* [NVPTX] Add codegen tests for llvm.fma.Justin Lebar2017-01-151-0/+25
| | | | llvm-svn: 292070
* [NVPTX] Modernize intrinics.ll test.Justin Lebar2017-01-151-13/+12
| | | | llvm-svn: 292069
* [NVPTX] Let there be One True Way to set NVVMReflect params.Justin Lebar2017-01-154-111/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Previously there were three ways to inform the NVVMReflect pass whether you wanted to flush denormals to zero: * An LLVM command-line option * Parameters to the NVVMReflect constructor * Metadata on the module itself. This change removes the first two, leaving only the third. The motivation for this change, aside from simplifying things, is that we want LLVM to be aware of whether it's operating in FTZ mode, so other passes can use this information. Ideally we'd have a target-generic piece of metadata on the module. This change moves us in that direction. Reviewers: tra Subscribers: jholewinski, llvm-commits Differential Revision: https://reviews.llvm.org/D28700 llvm-svn: 292068
* Fix compilation on MSVC, NFCHongbin Zheng2017-01-152-5/+5
| | | | | | Differential Revision: https://reviews.llvm.org/D28739 llvm-svn: 292067
* Fix blend mask by switch the side of the operand since Blend node uses ↵Michael Zuckerman2017-01-1511-98/+100
| | | | | | opposite mask then Select NODE. llvm-svn: 292066
* Fix un-initialized error introduced by r291959.Daniel Jasper2017-01-151-0/+2
| | | | | | | | This is uncovered when running tools/dsymutil/X86/empty_range.s.test with ASAN. Haven't investigate yet, whether that means there is an ODR violation in that test. llvm-svn: 292065
* [InstCombine] use m_APInt to allow ashr folds for vectors with splat constantsSanjay Patel2017-01-158-34/+20
| | | | llvm-svn: 292064
* [InstCombine] add explanatory comments to tests; NFCSanjay Patel2017-01-151-0/+6
| | | | llvm-svn: 292063
* Reverted: Track validity of pass resultsSerge Pavlov2017-01-1512-68/+17
| | | | | | Commits r291882 and related r291887. llvm-svn: 292062
* Revert "[GlobalISel] track predecessor mapping during switch lowering."Daniel Jasper2017-01-153-110/+18
| | | | | | | | | | This reverts commit r291973. The test fails in a Release build with LLVM_BUILD_GLOBAL_ISEL enabled. AFAICT, llc segfaults. I'll add a few more details to the original commit. llvm-svn: 292061
* [PM] Clean up the testing for IVUsers, especially with the new PM.Chandler Carruth2017-01-154-1/+11
| | | | | | | | | | First, I've moved a test of IVUsers from the LSR tree to a dedicated IVUsers test directory. I've also simplified its RUN line now that the new pass manager's loop PM is providing analyses on their own. No functionality changed, but it makes subsequent changes cleaner. llvm-svn: 292060
* NewGVN: Change a bunch of densemap find_or_creates to lookups, since they ↵Daniel Berlin2017-01-151-8/+8
| | | | | | should not be creating new entries llvm-svn: 292059
* [PM] Teach the optimization remarks emitter to handle invalidationChandler Carruth2017-01-153-0/+96
| | | | | | | | | | events. This pass sometimes has a pointer to BlockFrequencyInfo so it needs custom invalidation logic. It is also otherwise immutable so we can reduce the number of invalidations that happen substantially. llvm-svn: 292058
* These two functions should be const. We often could detect it but this just ↵Daniel Berlin2017-01-151-2/+2
| | | | | | makes it always true. llvm-svn: 292057
* Update update_test_checks so that . is a valid identifier character in ↵Daniel Berlin2017-01-151-1/+1
| | | | | | addition to _ llvm-svn: 292056
* [Orc][RPC] Add an RPCFunctionNotSupported error type and return it fromLang Hames2017-01-153-2/+34
| | | | | | | | | | negotiateFunction where appropriate. Replacing the old ECError with a custom type allows us to attach the name of the function that could not be negotiated, enabling better diagnostics for negotiation failures. llvm-svn: 292055
* [PM] Introduce an analysis set used to preserve all analyses overChandler Carruth2017-01-1540-73/+182
| | | | | | | | | | | | | | | a function's CFG when that CFG is unchanged. This allows transformation passes to simply claim they preserve the CFG and analysis passes to check for the CFG being preserved to remove the fanout of all analyses being listed in all passes. I've gone through and removed or cleaned up as many of the comments reminding us to do this as I could. Differential Revision: https://reviews.llvm.org/D28627 llvm-svn: 292054
* [AVX-512] Remove unnecessary duplicate broadcast patterns. NFCCraig Topper2017-01-151-6/+0
| | | | llvm-svn: 292053
* [code-completion] Fix crash when trying to do postfix completion of instance ↵Argyrios Kyrtzidis2017-01-152-4/+17
| | | | | | member inside a static function. llvm-svn: 292052
* [AVX-512] Replicate some broadcast patterns to VLX and disable the AVX2 ↵Craig Topper2017-01-152-1/+8
| | | | | | patterns when VLX is available. llvm-svn: 292051
* [X86] Remove untested MOVDDUP patterns.Craig Topper2017-01-151-17/+0
| | | | | | | | These all involve bitcasts around the memory operands. This isn't something we normally do for isel patterns. I suspect DAG combine should convert the load type making this unnecessary. llvm-svn: 292050
* Move a flag definition to the right place as -demangle is not ignored.Rui Ueyama2017-01-151-1/+2
| | | | llvm-svn: 292049
OpenPOWER on IntegriCloud