- Aug 18, 2020
-
-
Georgii Rymar authored
We currently call the `llvm_unreachable` for the following YAML: ``` --- !ELF FileHeader: Class: ELFCLASS32 Data: ELFDATA2LSB Type: ET_REL Machine: EM_NONE Flags: [ ] ``` it happens because the `Flags` key is present, though `EM_NONE` is a machine type that has no known `EF_*` values and we call `llvm_unreachable` by mistake. Differential revision: https://reviews.llvm.org/D86138
-
Alexey Bataev authored
If the declaration is used in the reduction clause, it is captured by reference by default. But if the declaration is a pointer and it is a base for array-like reduction, this declaration can be captured by value, since the pointee is reduced but not the original declaration. Differential Revision: https://reviews.llvm.org/D85321
-
Eduardo Caldas authored
In this process we also create some other tests, in order to not lose coverage when focusing on the annotated code Differential Revision: https://reviews.llvm.org/D85962
-
Eduardo Caldas authored
We add the method `SyntaxTreeTest::treeDumpEqualOnAnnotations`, which allows us to compare the treeDump of only annotated code. This will reduce a lot of noise from our `BuildTreeTest` and make them short and easier to read.
-
Ronak Chauhan authored
Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D86136
-
Simon Pilgrim authored
(256 / SrcEltBits) == ((2 * EltSizeInBits * NumElts) / (EltSizeInBits * Scale)) == (2 * (NumElts / Scale)) == NumSrcElts
-
Nico Weber authored
This reverts commit be3ef93b. Test fails on macOS and Windows, e.g. http://45.33.8.238/win/22216/step_11.txt
-
Ronak Chauhan authored
AMDGPU ISA isn't backwards compatible and hence -mcpu must always be specified during disassembly. However, the AMDGPU target CPU is stored in e_flags in the ELF object. This patch allows targets to implement CPU string detection, and also implements it for AMDGPU by looking at e_flags. Reviewed By: scott.linder Differential Revision: https://reviews.llvm.org/D84519
-
Luboš Luňák authored
I intentionally decided not to reset the column automatically anywhere, because I don't know where and if at all that should happen. There should be always an indication of being scrolled (too much) to the right, so I'll leave this to whoever has an opinion. Differential Revision: https://reviews.llvm.org/D85290
-
Alex Zinenko authored
Provide C API for MLIR standard types. Since standard types live under lib/IR in core MLIR, place the C APIs in the IR library as well (standard ops will go into a separate library). This also defines a placeholder for affine maps that are necessary to construct a memref, but are not yet exposed to the C API. Reviewed By: stellaraccident Differential Revision: https://reviews.llvm.org/D86094
-
Paul Walker authored
Right shift patterns will no longer incorrectly accept a shift amount of zero. At the same time they will allow larger shift amounts that are now saturated to their upper bound. Patterns have been extended to enable immediate forms for shifts taking an arbitrary predicate. This patch also unifies the code path for immediate parsing so the i64 based shifts are no longer treated specially. Differential Revision: https://reviews.llvm.org/D86084
-
Sam Parker authored
Copy some generic functions and apply minsize for arm.
-
Paul Walker authored
Also strengthens the CHECK lines for scalable vector splat tests. Differential Revision: https://reviews.llvm.org/D86070
-
Simon Pilgrim authored
This patch adds lowerShuffleWithVTRUNC to handle basic binary shuffles that can be lowered either as a pure ISD::TRUNCATE or a X86ISD::VTRUNC (with undef/zero values in the remaining upper elements). We concat the binary sources together into a single 256-bit source vector. To avoid regressions we perform this after we've tried to lower with PACKS/PACKUS which typically does a cleaner job than a concat. For non-AVX512VL cases we have to canonicalize VTRUNC cases to use a 512-bit source vectors (inserting undefs/zeros in the upper elements as necessary), truncate and then (possibly) extract the 128-bit result. This should address the last regressions in D66004 Differential Revision: https://reviews.llvm.org/D86093
-
sameeran joshi authored
Summary: Other LLVM sub-projects use docs/ folder for documentation files. Follow LLVM project policy. Modify `documentation/` references in sources to `docs/`. This patch doesn't modify files to reStructuredText(.rst) file format. Reviewed By: DavidTruby, sscalpone Differential Revision: https://reviews.llvm.org/D85884
-
QingShan Zhang authored
even with different preds
-
Rainer Orth authored
Two tests `FAIL` on 32-bit sparc: Profile-sparc :: Posix/instrprof-gcov-parallel.test UBSan-Standalone-sparc :: TestCases/Float/cast-overflow.cpp The failure mode is similar: Undefined first referenced symbol in file __atomic_store_4 /var/tmp/instrprof-gcov-parallel-6afe8d.o __atomic_load_4 /var/tmp/instrprof-gcov-parallel-6afe8d.o Undefined first referenced symbol in file __atomic_load_1 /var/tmp/cast-overflow-72a808.o This is a known bug: `clang` doesn't inline atomics on 32-bit sparc, unlike `gcc`. The patch therefore `XFAIL`s the tests. Tested on `sparcv9-sun-solaris2.11` and `amd64-pc-solaris2.11`. Differential Revision: https://reviews.llvm.org/D85346
-
LLVM GN Syncbot authored
-
Shinji Okumura authored
This patch introduces a new abstract attribute `AANoUndef` which corresponds to `noundef` IR attribute and deduce them. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D85184
-
Georgii Rymar authored
This is splitted out from D85519, but significantly reworked. Changes: 1) This test was changed to stop using python. 2) Use NoHeaders: true instead of `llvm-objcopy --strip-sections`. 3) Test llvm-readelf too (not just llvm-readobj). 4) Simplify the YAML used a bit (e.g. remove PT_LOAD). 5) Test 2 different cases: objects with section header table and without. Differential revision: https://reviews.llvm.org/D86073
-
Georgii Rymar authored
The `mips-got-overlapped.test` was introduced in D16968 and its intention is to check that when there is an empty section at the same address as `.got`, then we are able to locate `.got` and dump it. The issue is that this test does not test llvm-readelf and uses a precompiled object. This path starts using YAML instead and merges mips-got-overlapped.test to mips-got.test. Differential revision: https://reviews.llvm.org/D86080
-
Alex Zinenko authored
The type printer was ignoring the memory space on unranked memrefs. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D86096
-
Jakub Lichman authored
The function makes too strong assumption regarding parent FuncOp which gets broken when FuncOp is first lowered to llvm function. In this fix we generalize the assumption to allocation scope and add assertion to produce user friendly message in case our assumption is broken. Differential Revision: https://reviews.llvm.org/D86086
-
Nathan Ridge authored
Fixes https://github.com/clangd/clangd/issues/307 Differential Revision: https://reviews.llvm.org/D86047
-
David Blaikie authored
Theory was that we should never reach a non-type unit (eg: type in an anonymous namespace) when we're already in the invalid "encountered an address-use, so stop emitting types for now, until we throw out the whole type tree to restart emitting in non-type unit" state. But that's not the case (prior commit cleaned up one reason this wasn't exposed sooner - but also makes it easier to test/demonstrate this issue)
-
David Blaikie authored
This reads more like what you'd expect the DWARF to look like (from the lexical order of C++ - template parameters come before members, etc), and also happens to make it easier to tickle (& thus test) a bug related to type units and Split DWARF I'm about to fix.
-
Johannes Doerfert authored
Before this change we looked through all memory operations in a function even if the first was an unknown call that could do anything. This did cost a lot of time but there is little use to do so. We also avoid creating AAs for things that we would have looked at in case no other AA will; that is the reason for the test changes. Running only the attributor-cgscc pass on a IR version of `llvm-test-suite/MultiSource/Applications/SPASS/clause.c` reduced the time we spend in `AAMemoryLocation::update` from 4% total to 0.9% (disclaimer: no accurate measurements).
-
Johannes Doerfert authored
-
Johannes Doerfert authored
-
Johannes Doerfert authored
Before we tired to create a dominator tree for a declaration when we wanted to determine if the function pointer is `nonnull`. We now avoid looking at global values if `Value::getPointerDereferenceableBytes` not already determined `nonnull`.
-
Nathan Ridge authored
Summary: RecursiveASTVisitor needs to traverse TypeConstraint::ImmediatelyDeclaredConstraint Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D84136
-
Nathan Ridge authored
Summary: This will be needed to support call hierarchy Reviewers: kadircet Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D83536
-
Harmen Stoppels authored
Currently it is hard to avoid having LLVM link to the system install of ncurses, since it uses check_library_exists to find e.g. libtinfo and not find_library or find_package. With this change the ncurses lib is found with find_library, which also considers CMAKE_PREFIX_PATH. This solves an issue for the spack package manager, where we want to use the zlib installed by spack, and spack provides the CMAKE_PREFIX_PATH for it. This is a similar change as https://reviews.llvm.org/D79219, which just landed in master. Differential revision: https://reviews.llvm.org/D85820
-
Amy Kwan authored
This patch implements the vec_extractm function prototypes in altivec.h in order to utilize the vector extract with mask instructions introduced in Power10. Differential Revision: https://reviews.llvm.org/D82675
-
Arthur Eubanks authored
These all are legacy PM-specific or have a corresponding NPM RUN line. Reviewed By: ychen Differential Revision: https://reviews.llvm.org/D86124
-
Hamilton Tobon Mosquera authored
[OpenMPOpt][HideMemTransfersLatency] Split __tgt_target_data_begin_mapper into its "issue" and "wait" counterparts. WIP that tries to hide the latency of runtime calls that involve host to device memory transfers by splitting them into their "issue" and "wait" versions. The "issue" is moved upwards as much as possible. The "wait" is moved downards as much as possible. The "issue" issues the memory transfer asynchronously, returning a handle. The "wait" waits in the returned handle for the memory transfer to finish. We still lack of the movement.
-
Leonard Chan authored
This reverts commit da0592e4. Reverting because this is incompatible with cmake 3.13.5, with the minimum supported version being 3.13.4. See https://luci-milo.appspot.com/p/fuchsia/builders/ci/clang-linux-x64/b8871967816877544224.
-
Hongtao Yu authored
https://reviews.llvm.org/D84191 caused a html doc build issue with the changes in `llvm-objdump.rst`. It looks like a blank line is missing from the `code-block` directives. Test Plan: Differential Revision: https://reviews.llvm.org/D86123
-
Aditya Kumar authored
Reviewers: sebpop Reviewed By: hiraditya Differential Revision: https://reviews.llvm.org/D86032
-
Craig Topper authored
[X86] When manually creating intrinsic nodes in X86ISelLowering, make sure we use getTargetConstant and pointer type for the intrinsic ID. Doesn't really matter in practice but that's how the nodes are normally created by SelectionDAGBuilder. So we should match. Found by temporarily hacking type checks into isel table.
-