- Nov 20, 2020
-
-
Sanjay Patel authored
See discussion in D90554. This is a partial un-revert of 32dd5870. I'm adding back the baseline tests first, so we don't have to back-track as much in case there are still problems.
-
Rainer Orth authored
During the initial Solaris sanitizer port, I missed to enable the `sanitizer_common` and `ubsan_minimal` testsuites. This patch fixes this, correcting a few unportabilities: - `Posix/getpass.cpp` failed to link since Solaris lacks `libutil`. Omitting the library lets the test `PASS`, but I thought adding `%libutil` along the lines of `%librt` to be overkill. - One subtest of `Posix/getpw_getgr.cpp` is disabled because Solaris `getpwent_r` has a different signature than expected. - `/dev/null` is a symlink on Solaris. - XPG7 specifies that `uname` returns a non-negative value on success. Tested on `amd64-pc-solaris2.11` and `sparcv9-sun-solaris2.11`. Differential Revision: https://reviews.llvm.org/D91606
-
Stephan Herhut authored
This canonicalization helps propagate shape information through the program. Differential Revision: https://reviews.llvm.org/D91854
-
Sanjay Patel authored
-
Stephan Herhut authored
This canonicalization is useful to resolve loads into scalar values when doing partial bufferization. Differential Revision: https://reviews.llvm.org/D91855
-
Raphael Isemann authored
Commit f3aa9e36 fixed the embedded OS build by removing all passed args for `GetName`/`GetDemangledName`. The motivation for this was that these arguments were apparently removed in commit 22b04487. However, only `GetName`'s language argument was removed but the mangling preference argument was *not* removed (and unfortunately had a default argument). So when that commit removed all the args it didn't just fix the build but it also changed all the mangling preferences to 'demangled' for all `GetName` calls. Also some `GetName` calls were outside the TARGET_OS_EMBEDDED ifdef, so this change ended up breaking the following tests on macOS: lldb-api :: lang/objc/objc-static-method-stripped/TestObjCStaticMethodStripped.py lldb-api :: lang/objc/objc-super/TestObjCSuper.py From what I can see f3aa9e36 removed 12 ePreferMangled args and this patch re-adds 12 args with roughly the same line numbers, so this *should* restore the old behaviour and also keep the embedded build working. On the other hand, ObjectFileMachO::ParseSymtab is a very successful attempt at writing the longest possible function within LLVM, so this fix is partly based on the engineering principle known as "hoping for the best".
-
Kazushi (Jam) Marukawa authored
Implement getMinimumJumpTableEntries() to specify threshold for jump table genaration. We use 8 for the case of PIC mode to relieve the impact of PIC calculation required to implement PIC mode jump table. Update jump table regression test also. Reviewed By: simoll Differential Revision: https://reviews.llvm.org/D91785
-
Stephan Herhut authored
For equal operands, comparisons can be decided statically. Differential Revision: https://reviews.llvm.org/D91856
-
Mikhail Goncharov authored
This reverts commit f8284d21. Revert "[mlir][Linalg] NFC: Expose some utility functions used for promotion." This reverts commit 0c59f515. Revert "Remove unused isZero function" This reverts commit 0f9f0a40. Change f8284d21 led to multiple failures in IREE compilation.
-
Simon Pilgrim authored
Minor cleanup to move more target specific tests out of the root codegen test folder
-
Simon Pilgrim authored
Minor cleanup to move more target specific tests out of the root codegen test folder
-
Rainer Orth authored
As reported in PR 48202, two allocator tests `FAIL` on Solaris/sparcv9, presumably because Solaris uses the full 64-bit address space and the allocator cannot deal with that: SanitizerCommon-Unit :: ./Sanitizer-sparcv9-Test/SanitizerCommon.CombinedAllocator32Compact SanitizerCommon-Unit :: ./Sanitizer-sparcv9-Test/SanitizerCommon.SizeClassAllocator32Iteration This patch disables the tests. Tested on `sparcv9-sun-solaris2.11`. Differential Revision: https://reviews.llvm.org/D91622
-
Rainer Orth authored
Many of the `FastUnwindTest.*` tests `FAIL` on SPARC, both Solaris and Linux. The issue is that the fake stacks used in those tests don't match the requirements of the SPARC unwinder in `sanitizer_stacktrace_sparc.cpp` which has to look at the register window save area. I'm disabling the failing tests. Tested on `sparcv9-sun-solaris2.11`. Differential Revision: https://reviews.llvm.org/D91618
-
Simon Pilgrim authored
-
David Spickett authored
This extends the "memory region" command to show tagged regions on AArch64 Linux when the MTE extension is enabled. (lldb) memory region the_page [0x0000fffff7ff8000-0x0000fffff7ff9000) rw- memory tagging: enabled This is done by adding an optional "flags" field to the qMemoryRegion packet. The only supported flag is "mt" but this can be extended. This "mt" flag is read from /proc/{pid}/smaps on Linux, other platforms will leave out the "flags" field. Where this "mt" flag is received "memory region" will show that it is enabled. If it is not or the target doesn't support memory tagging, the line is not shown. (since majority of the time tagging will not be enabled) Testing is added for the existing /proc/{pid}/maps parsing and the new smaps parsing. Minidump parsing has been updated where needed, though it only uses maps not smaps. Target specific tests can be run with QEMU and I have added MTE flags to the existing helper scripts. Reviewed By... -
Eugene Zhulenev authored
Depends On D89963 **Automatic reference counting algorithm outline:** 1. `ReturnLike` operations forward the reference counted values without modifying the reference count. 2. Use liveness analysis to find blocks in the CFG where the lifetime of reference counted values ends, and insert `drop_ref` operations after the last use of the value. 3. Insert `add_ref` before the `async.execute` operation capturing the value, and pairing `drop_ref` before the async body region terminator, to release the captured reference counted value when execution completes. 4. If the reference counted value is passed only to some of the block successors, insert `drop_ref` operations in the beginning of the blocks that do not have reference coutned value uses. Reviewed By: silvas Differential Revision: https://reviews.llvm.org/D90716 -
Sebastian Neubauer authored
Extract the scratch offset from the scratch buffer descriptor that is stored in the global table. Differential Revision: https://reviews.llvm.org/D91701
-
QingShan Zhang authored
-
Max Kazantsev authored
-
Georgii Rymar authored
Our code that dumps groups has 3 noticeable issues: 1) It uses `unwrapOrError` in many places. 2) It doesn't allow reporting unique warnings, because the `getGroups` helper is not a member of `DumpStyle<ELFT>`. 3) It might just crash. See the comment for `StrTableOrErr->data() + Sym.st_name` line. In this patch I am starting addressing these points. For start I've converted one of `unwrapOrError` calls to a unique warning. Differential revision: https://reviews.llvm.org/D91798
-
Kirill Bobyrev authored
-
Georgii Rymar authored
Our `printStackSize` implementation currently uses API like `RelocationRef`, `object::symbol_iterator`. It is not ideal as it doesn't allow to handle possible error conditions properly. Some time ago I started rewriting it and this NFC patch is a one more step toward to it. Here I am introducing the `forEachRelocationDo` helper. With it it is possible to iterate over all kinds of relocations, what is helpful for improving the code in `printStackSize` and around. Differential revision: https://reviews.llvm.org/D91530
-
AndreyChurbanov authored
This reverts commit 9cfad5f9.
-
Max Kazantsev authored
Slightly simplified version of original test reported by Congzhe Cao.
-
Michał Górny authored
-
Michał Górny authored
The problem is not specific to arch but to the whole Darwin platform. Reverts: 0fd04337
-
Liu, Chen3 authored
For MASM syntax, the prefixes are not enclosed in braces. The assembly code should like: "evex vcvtps2pd xmm0, xmm1" Differential Revision: https://reviews.llvm.org/D90441
-
Georgii Rymar authored
This allows to reuse the RelocationResolver from the code that doesn't want to deal with `RelocationRef` class. I am going to use it in llvm-readobj. See the description of D91530 for more details. Differential revision: https://reviews.llvm.org/D91533
-
Qiu Chaofan authored
-
Arthur Eubanks authored
Fixes cspgo_profile_summary.ll under NPM. Reviewed By: xur Differential Revision: https://reviews.llvm.org/D91826
-
Eric Christopher authored
Temporarily Revert "[CostModel] remove cost-kind predicate for intrinsics in basic TTI implementation" as it's causing crashes in the optimizer. A reduced testcase has been posted as a follow-up. This reverts commit f7eac51b. Temporarily Revert "[CostModel] make default size cost for libcalls small (again)" as it depends upon the primary revert. This reverts commit 8ec7ea3d. Temporarily Revert "[CostModel] add tests for math library calls; NFC" as it depends upon the primary revert. This reverts commit df09f825. Temporarily Revert "[LoopUnroll] add test for full unroll that is sensitive to cost-model; NFC" as it depends upon the primary revert. This reverts commit 618d555e.
-
Kazu Hirata authored
-
Haruki Imai authored
D78076 supports big endian in DenseElementsAttr, but does not work when APInt has multiple words(the number of bits > 64). This patch updates D78076 to support it. This patch removed the fix in D78076 and re-implemented to support multiple words. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D80272
-
Geoffrey Martin-Noble authored
Unused since https://reviews.llvm.org/D91503 and triggering -Wunused-function Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D91838
-
MaheshRavishankar authored
Exposing some utility functions from Linalg to allow for promotion of fused views outside of the core tile+fuse logic. This is an alternative to patch D91322 which adds the promotion logic to the tileAndFuse method. Downside with that approach is that it is not easily customizable based on needs. Differential Revision: https://reviews.llvm.org/D91503
-
MaheshRavishankar authored
Enhance the tile+fuse logic to allow fusing a sequence of operations. Differential Revision: https://reviews.llvm.org/D90991
-
MaheshRavishankar authored
Differential Revision: https://reviews.llvm.org/D91749
-
Bill Wendling authored
Clang generates a '%' prefix for some registers in CFI directives. E.g. ".cfi_register lr, r12" becomes ".cfi_register lr, %r12" after processing. Differential Revision: https://reviews.llvm.org/D91735
-
Arthur Eubanks authored
-
Duncan P. N. Exon Smith authored
The assertion logic in SmallVector::assertSafeToReferenceAfterResize is hard to follow; split out SmallVector::isSafeToReferenceAfterResize and add early returns and comments. No functionality change here.
-