- Jun 13, 2020
-
-
George Mitenkov authored
This patch has shift ops conversion implementation. In SPIR-V dialect, `Shift` and `Base` may have different bit width. On the contrary, in LLVM dialect both `Base` and `Shift` have to be of the same bit width. This leads to the following cases: - if `Base` has the same bit width as `Shift`, the conversion is straightforward. - if `Base` has a greater bit width than `Shift`, shift is sign/zero extended first. Then the extended value is passed to the shift. - otherwise the conversion is considered to be illegal. Differential Revision: https://reviews.llvm.org/D81546
-
Jonas Devlieghere authored
The reproducer intentionally leak every object allocated during replay, which means that modules never get orphaned. If this were to happen for another reason, we might not be testing what we think we are. Assert that there are no targets left at the end of a test and that the global module cache is empty in the non-reproducer scenario. Differential revision: https://reviews.llvm.org/D81612
-
Pete Steinfeld authored
I added a test the exercises all of the cases instances of specification expressions as defined in section 10.1.11. Summary: [flang] Added test for specification expressions Reviewers: tskeith, klausler, DavidTruby Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81759
-
HazemAbdelhafez authored
Modify structure type in SPIR-V dialect to support: 1) Multiple decorations per structure member 2) Key-value based decorations (e.g., MatrixStride) This commit kept the Offset decoration separate from members' decorations container for easier implementation and logical clarity. As such, all references to Structure layoutinfo are now offsetinfo, and any member layout defining decoration (e.g., RowMajor for Matrix) will be add to the members' decorations container along with its value if any. Differential Revision: https://reviews.llvm.org/D81426
-
Casey Carter authored
-
Jonas Devlieghere authored
Lit will only look for unittest targets ending in `Tests`. Add an error when the target doesn't have the `Tests` suffix.
-
Thomas Lively authored
Summary: This instruction was implemented in 3181273b, but that commit did not add an intrinsic for it. Reviewers: aheejin Subscribers: dschuff, sbc100, jgravelle-google, sunfish, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D81757
-
Eric Christopher authored
as it seems to be causing some internal crashes in AA after email with the author. This reverts commit f79e6a88.
-
Jonas Devlieghere authored
Lit looks for the Tests prefix in the unit test name.
-
Roman Lebedev authored
This decreases the time consumed by the pass [during RawSpeed unity build] by 25% (0.0586 s -> 0.04388 s). While that isn't really impressive overall, that wasn't the goal here. The memory results here are noticeable. The baseline results are: ``` total runtime: 55.65s. calls to allocation functions: 19754254 (354960/s) temporary memory allocations: 4951609 (88974/s) peak heap memory consumption: 239.13MB peak RSS (including heaptrack overhead): 463.79MB total memory leaked: 198.01MB ``` While with this patch the results are: ``` total runtime: 55.37s. calls to allocation functions: 19068237 (344403/s) # -3.47 % temporary memory allocations: 4261772 (76974/s) # -13.93 % (!!!) peak heap memory consumption: 239.13MB peak RSS (including heaptrack overhead): 463.73MB total memory leaked: 198.01MB ``` So we get rid of *a lot* of temporary allocations. Using `SmallSet<8>` makes sense to me because at least here for x86 BdVer2, the size of that set is *never* more than 3, over all of llvm test-suite + RawSpeed. The story might be different on other targets, not sure if it will ever justify whole DenseSet, but if it does SmallDenseSet might be a compromise.
-
Roman Lebedev authored
-
Roman Lebedev authored
-
Kazushi (Jam) Marukawa authored
Differential Revision: https://reviews.llvm.org/D81331
-
Ronak Chauhan authored
Summary: This commit slightly modifies the MCDisassembler, and llvm-objdump to allow targets to also decode entire symbols. WebAssembly uses the onSymbolStart hook it to decode preludes. WebAssembly partially disassembles the symbol in its target specific way; and then falls back to the normal flow of llvm-objdump. AMDGPU needs it to decode kernel descriptors entirely, and move to the next symbol. This commit is to split the above task into 2. - Changes to llvm-objdump and MC-layer without breaking WebAssembly code [ this commit ] - AMDGPU's implementation of onSymbolStart that decodes kernel descriptors. [ https://reviews.llvm.org/D80713 ] Reviewers: scott.linder, t-tye, sunfish, arsenm, jhenderson, MaskRay, aardappel Reviewed By: scott.linder, jhenderson, aardappel Subscribers: bcain, dschuff, wdng, tpr, sbc100, jgravelle-google, hiraditya, aheejin, MaskRay, rupprecht, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D80512
-
Christopher Tetreault authored
Summary: Inline functions in Type.h depended upon inline functions isVectorTy and getScalarType defined in DerivedTypes.h. Reimplement these functions in Type.h in terms of Type Reviewers: rengolin, efriedma, echristo, c-rhodes, david-arm Reviewed By: echristo Subscribers: tschuett, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81684
-
David Blaikie authored
And add comma separators (to be consistent with recent changes/improvements to the dumping of other section headers) while I'm here.
-
Vladimir Vereschaka authored
In order to support the libcxx new format changes SSHExecutor was replaced with ssh.py script in the following way: LIBxxx_EXECUTOR="<llvm-root>/libcxx/utils/ssh.py --host <username>@<host>" See 96e6cbbf commit for details.
-
Michael Liao authored
Reviewers: arsenm, rampitec Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81710
-
Sterling Augustine authored
Summary: This reverts commit 33fb9cbe. That commit violates layering by adding a dependency from StaticAnalyzer/Core back to StaticAnalyzer/FrontEnd, creating a circular dependency. I can't see a clean way to fix it except refactoring. Reviewers: echristo, Szelethus, martong Subscribers: xazax.hun, baloghadamsoftware, szepet, rnkovacs, a.sidorin, mikhail.ramalho, donat.nagy, dkrupp, Charusso, ASDenysPetrov, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D81752
-
Erich Keane authored
Reported on IRC, the tutorial code at the bottom of the page correctly namespaces the FunctionPassManager, but the as-you-go code does not. This patch adds the namespace to those.
-
Louis Dionne authored
It relied on the site dir being added by a previous config file.
-
Stanislav Mekhanoshin authored
-
Casey Carter authored
-
Amara Emerson authored
Differential Revision: https://reviews.llvm.org/D81419
-
David Green authored
Similar to a recent change to the X86 backend, this changes things so that we always produce a reduction intrinsics for all reduction types, not just the legal ones. This gives a better chance in the backend to custom lower them to something more suitable for MVE. Especially for something like fadd the in-order reduction produced during DAG lowering is already better than the shuffles produced in the midend, and we can do even better with a bit of custom lowering. Differential Revision: https://reviews.llvm.org/D81398
-
Daniel Grumberg authored
-
Louis Dionne authored
The feature isn't defined anywhere, so it's effectively dead.
-
Louis Dionne authored
As an important fly-by fix, also make sure we set those features to their value on the target we run on, not on the host compiling the test suite.
-
Louis Dionne authored
This allows running Lit tests that run ssh without having to manually enter a password (which is inconvenient), by just having ssh-agent setup properly when running the test suite.
-
Michael Liao authored
Reviewers: arsenm Subscribers: sdardis, wdng, hiraditya, asb, rbar, johnrusso, simoncook, sabuasal, niosHD, jrtc27, MaskRay, zzheng, edward-jones, atanasyan, rogfer01, MartinMosbeck, brucehoult, the_o, PkmX, jocewei, Jim, lenary, s.egerton, pzheng, sameer.abuasal, apazos, luismarques, ecnelises, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81708
-
Richard Smith authored
declaration is not visible. In passing, add a test for a similar case of conflicting redeclarations of internal-linkage structured bindings. (This case already works).
-
peter klausler authored
G++ 10.1 emits inappropriate "use of uninitialized data" warnings when compiling f18. The warnings stem from two sites in templatized code whose multiple instantiations magnified the number of warnings. These changes dodge those warnings by making some innocuous changes to the code. In the parser, the idiom defaulted(cut >> x), which yields a parser that always succeeds, has been replaced with a new equivalent pass<T>() parser that returns a default-constructed value T{} in an arguably more readable fashion. This idiom was the only attestation of the basic parser cut, so it has been removed and the remaining code simplified. In Evaluate/traverse.h, a return {}; was replaced with a return of a default-constructed member. Differential Revision: https://reviews.llvm.org/D81747 -
Jacques Pienaar authored
-
Jessica Paquette authored
We select all of these via patterns now, so there's no reason to disallow this. Update select-dup.mir to show that we correctly select the smaller types. Differential Revision: https://reviews.llvm.org/D81322
-
Jessica Paquette authored
This was making it so that the instructions weren't eliminated in select-rev.mir and select-trn.mir despite not being used. Update the tests accordingly. Differential Revision: https://reviews.llvm.org/D81492
-
Jonas Devlieghere authored
Prior to my patch of using the LLVM line table parsing code, SymbolFileDWARF::ParseSupportFiles would only parse the line table prologues to get the file list for any files that could be in the line table. With the old behavior, if we found the file that someone is setting the breakpoint in in the support files list, we would get a valid index. If we didn't, we would not look any further. So someone sets a breakpoint one "MyFile.cpp:12" and if we find "MyFile.cpp" in the support file list for the compile unit, then and only then would we get the entire line table for that compile unit. With the current behavior, no matter what, we always fully parse the line table for all compile units any time any file and line breakpoint is set. This creates a serious problem when debugging a large DWARF in .o file project. This patch re-instates the old behavior. Unfortunately it means we might end up parsing to prologue twice, but I don't think that outweighs the cost of trying to cache/reuse it. Differential revision: https://reviews.llvm.org/D81589
-
Stephen Neuendorffer authored
Differential Revision: https://reviews.llvm.org/D81715
-
Erich Keane authored
We were using llvm::SmallPtrSet for our ODR-use set which was also used for instantiating the implicit lambda captures. The order in which the captures are added depends on this, so the lambda's layout ended up changing. The test just uses floats, but this was noticed with other types as well. This test replaces the short-lived SmallPtrSet (it lasts only for an expression, which, though is a long time for lambdas, is at least not forever) with a SmallSetVector.
-
Louis Dionne authored
Instead of parsing the command each time prior to calling _executeScriptInternal, do it once inside _executeScriptInternal.
-
- Jun 12, 2020
-
-
Huihui Zhang authored
llvm/lib/Target/AArch64/AArch64SLSHardening.cpp:146:5: warning: suggest braces around initialization of subobject [-Wmissing-braces] "__llvm_slsblr_thunk_x0", "__llvm_slsblr_thunk_x1", ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ { llvm/lib/Target/AArch64/AArch64SLSHardening.cpp:168:5: warning: suggest braces around initialization of subobject [-Wmissing-braces] AArch64::X0, AArch64::X1, AArch64::X2, AArch64::X3, AArch64::X4, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ {
-