- May 02, 2020
-
-
Craig Topper authored
[CostModel][X86][ARM] Teach default implementation of getCastInstrCost to not add a split/join cost if source type and the destination type both have a SplitVector action If both the source and the destination need to be split then the two halves of the split operation are completely independent and don't need to be split or joined. So we don't need to assess a cost for the split or join. Differential Revision: https://reviews.llvm.org/D79111
-
Craig Topper authored
I think some copy/pasting was used to create loops of different VFs. But the increment of the induction variable wasn't updated to match the VF. This has no effect on the pattern matching we're testing, it just helps the test make sense to the reader.
-
Alexander Shaposhnikov authored
N_PEXT bit should not affect whether a symbol is considered to be external or not. This also fixes the construction of the symbol table since it relies on the correct ordering of symbols. Test plan: make check-all Differential revision: https://reviews.llvm.org/D78888
-
Julian Lettner authored
String interpolation is a Python3 feature, we can't use it yet.
-
Thomas Lively authored
Summary: As described in https://github.com/WebAssembly/simd/pull/209. This is the final reorganization of the SIMD opcode space before standardization. It has been landed in concert with corresponding changes in other projects in the WebAssembly SIMD ecosystem. Reviewers: aheejin Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D79224
-
Nemanja Ivanovic authored
Over time, we have made many additions to this file and it has frankly become a bit of a mess. This has led to at least one issue - we have a number of instructions where the side effects flag should be set to false and we neglected to do this. This patch suggests a refactoring that should make the file much more maintainable. The file is split up into major sections and the nesting level is reduced, predicate blocks merged, etc. Sections: - Custom PPCISD node definitions - Predicate definitions - Instruction formats - Instruction definitions - Helper DAG definitions - Anonymous patterns - Instruction aliases Differential revision: https://reviews.llvm.org/D78132
-
Julian Lettner authored
-
Julian Lettner authored
-
Julian Lettner authored
-
Julian Lettner authored
Factor out the report generators from main.py into reports.py. I verified that we generate the exact same output by running `check-all` and comparing the new and old output for both report flavors.
-
Julian Lettner authored
Don't update whole test object from the remote (pickled) finished test object. Doing so also changes the config and suite members, which we want to avoid.
-
LLVM GN Syncbot authored
-
Kellie Medlin authored
Summary: Similar to other formats, input sections in the MachO implementation are now grouped under output sections. This is primarily a refactor, although there's some new logic (like resolving the output section's flags based on its inputs). Differential Revision: https://reviews.llvm.org/D77893
-
River Riddle authored
This was missed in the original revision. This allows for using the opaque Attribute accessors when the elements are strings.
-
https://reviews.llvm.org/D79215Mircea Trofin authored
Operator error - performed the rename and didn't save.
-
Mircea Trofin authored
Summary: shouldInline makes a decision based on the InlineCost of a call site, as well as an evaluation on whether the site should be deferred. This means it's possible for the decision to be not to inline, even for an InlineCost that would otherwise allow it. Both uses of shouldInline performed the exact same logic after calling it. In addition, the decision on whether to inline or not was communicated through two values of the Option<InlineCost> return value: None, or an InlineCost evaluating to false. Simplified by: - encapsulating the decision in the return object. The bool it evaluates to communicates unambiguously the decision. The InlineCost is also available. - encapsulated the common post-shouldInline code into shouldInline. Reviewers: davidxl, echristo, eraman Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D79215
-
River Riddle authored
-
Davide Italiano authored
-
Davide Italiano authored
-
- May 01, 2020
-
-
Sander de Smalen authored
This patch adds builtins for: - svasrd - svlsl - svlsr
-
Fangrui Song authored
After SHF_ALLOC sections are ordered by LMA: * If initial sections are empty, GNU objcopy skips their contents while we emit leading zeros. (binary-paddr.test %t4) * If trailing sections are empty, GNU objcopy skips their contents while we emit trailing zeros. (binary-paddr.test %t5) This patch matches GNU objcopy's behavior. Linkers don't keep p_memsz PT_LOAD segments. Such empty sections would not have a containing PT_LOAD and `Section::ParentSegment` might be null if linkers fail to optimize the file offsets (lld D79254). In particular, without D79254, the arm Linux kernel's multi_v5_defconfig depends on this behavior: in `vmlinux`, an empty .text_itcm is mapped at a very high address (0xfffe0000) but the kernel does not expect `objcopy -O binary` to create a very large `arch/arm/boot/Image` (0xfffe0000-0xc0000000 ~= 1GiB). See https://bugs.llvm.org/show_bug.cgi?id=45632 Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D79229
-
Francesco Petrogalli authored
Summary: The linear parameter token in the mangling function must be multiplied by the pointee size in bytes when the parameter is a pointer. Reviewers: ABataev, andwar, jdoerfert Subscribers: yaxunl, guansong, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D78965
-
David Tenty authored
Summary: Currently the XCOFF backend does not support writing 64-bit object files, which the ORC JIT tests will try to exercise if we are on AIX. This patch selectively disables the tests on AIX for now. Reviewers: hubert.reinterpretcast, jasonliu, DiggerLin, stevewan, lhames Reviewed By: hubert.reinterpretcast, lhames Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78813
-
Jonas Devlieghere authored
This adds an RunCommandInterpreter overload that returns an instance of SBCommandInterpreterRunResults. The goal is to avoid having to add more and more overloads when we need more output arguments. Differential revision: https://reviews.llvm.org/D79120
-
Christopher Tetreault authored
Summary: Update cst_pred_ty to only work on FixedVectorType. It operates on integers and integer vectors, and returns true if the predicate returns true for all elements of the vector. This operation is not possible on scalable vectors. Make this behavior explicit in the code and document the fact that it only tests fixed width vectors. Identified by test LLVM.Transforms/InstCombine::nsw.ll Reviewers: efriedma, c-rhodes, david-arm, spatel Reviewed By: david-arm Subscribers: tschuett, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D79195
-
Louis Dionne authored
Slightly older Clangs seem to think they are more clever than they really are, and they think the code can never be executed. The code can actually be executed in case the exception runtime is mis-implemented, which is exactly what this test is testing. This commit just disables the spurious warning.
-
Michał Górny authored
Link to LLVMTestingSupport via target_link_libraries() instead of clang_target_link_libraries(). The latter is ineffective if tests are linked to libclang.so. This solution is consistent with what other tests do.
-
Jonas Devlieghere authored
A missing `=` turned a comparison into an assignment.
-
River Riddle authored
This is more efficient and removes the need for derived ranges to handle the degenerate empty case.
-
Vladimir Vereschaka authored
llvm-lit gets '.py' extension on Windows host during its configuration. We need to provide a correct name for llvm-lit including file extension within LLVM_CONFIG_DEFAULT_EXTERNAL_LIT variable. Update for commit 45526d29. Differential Revision: https://reviews.llvm.org/D79144
-
Vedant Kumar authored
Summary: Have stripNonLineTableDebugInfo() attach updated !llvm.loop metadata to an instruction (instead of updating and then discarding the metadata). This fixes "!dbg attachment points at wrong subprogram for function" errors seen while archiving an iOS app. It would be nice -- as a follow-up -- to catch this issue earlier, perhaps by modifying the verifier to constrain where DILocations are allowed. Any alternative suggestions appreciated. rdar://61982466 Reviewers: aprantl, dsanders Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D79200
-
Louis Dionne authored
The issues we were seeing before should have been fixed, but it's hard to say for sure without running through the bots again.
-
Jonas Devlieghere authored
This patch adds a new class CommandInterpreterRunResult which will be backing the SBCommandInterpreterRunResult. It keeps track of the number of errors as well as the result which is an enum, as proposed by Pavel in D79120. The command interpreter now populates the results directly, instead of its own member variables. Differential revision: https://reviews.llvm.org/D79209
-
Fangrui Song authored
Prepare for the upcomong change that removes unneeded sh_offset advancement for empty sections whose PT_LOAD are removed.
-
Stephen Neuendorffer authored
Differential Revision: https://reviews.llvm.org/D79146
-
Nico Weber authored
The approach in D30000 assumes that the '/' returned by path::begin() is the first element for absolute paths, but that's not true on Windows. Also, on Windows backslashes in include lines often end up escaped so that there are two of them. Having backslashes in include lines is undefined behavior in most cases and implementation-defined behavior in C++20, but since clang treats it as normal repeated path separators, the diagnostic should too. Unbreaks -Wnonportable-include-path for absolute paths on Windows, and unbreaks it on non-Windows in the case of absolute paths with repeated directory separators. This affects e.g. the `#include __FILE__` technique if the file passed to clang has the wrong case for the drive letter. Before: C:\src\llvm-project>bin\clang-cl.exe c:\src\llvm-project\test.cc c:\\src\\llvm-project\\test.cc(4,10): warning: non-portable path to file '"c\\srccllvm-projectctest.cc.'; specified path differs in case from file name on disk [-Wnonportable-include-path] ^ Now: C:\src\llvm-project> out\gn\bin\clang-cl c:\src\llvm-project\test.cc c:\\src\\llvm-project\\test.cc(4,10): warning: non-portable path to file '"C:\\src\\llvm-project\\test.cc"'; specified path differs in case from file name on disk [-Wnonportable-include-path] ^ Differential Revision: https://reviews.llvm.org/D79223
-
Craig Topper authored
We use the vpmovqd instruction which is a single uop. So the cost should be 1.
-
Lang Hames authored
-
Lang Hames authored
Calling setProcessAllSections(true) is required to make sure that all sections, even those not marked as necessary for execution, are passed to the memory manager.
-
Louis Dionne authored
The tests were disabled under ASAN/MSAN because old Clangs were very slow to build the test cases. However, I checked with the Clang used on our build bots and the tests are not slow to build anymore, so the tests can be re-enabled.
-