- Feb 02, 2021
-
-
Nathan Hawes authored
[VFS] Add support to RedirectingFileSystem for mapping a virtual directory to one in the external FS. Previously file entries in the -ivfsoverlay yaml could map to a file in the external file system, but directories had to list their contents in the form of other file entries or directories. Allowing directory entries to map to a directory in the external file system makes it possible to present an external directory's contents in a different location and (in combination with the 'fallthrough' option) overlay one directory's contents on top of another. rdar://problem/72485443 Differential Revision: https://reviews.llvm.org/D94844
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Fangrui Song authored
-
Fangrui Song authored
-
Fangrui Song authored
The instruction may be `icmp eq i32`. Noticed in an internal Halide+wasm JIT test.
-
Matt Arsenault authored
DBG_VALUES placed between memory instructions would change codegen. Skip over these and re-insert them after the bundle instead of giving up on bundling.
-
MaheshRavishankar authored
Add printer and parser hooks for a custom directive that allows parsing and printing of idioms that can represent a list of values each of which is either an integer or an SSA value. For example in `subview %source[%offset_0, 1] [4, %size_1] [%stride_0, 3]` each of the list (which represents offset, size and strides) is a mix of either statically know integer values or dynamically computed SSA values. Since this is used in many places adding a custom directive to parse/print this idiom allows using assembly format on operations which use this idiom. Differential Revision: https://reviews.llvm.org/D95773
-
Mircea Trofin authored
The switch controls both unused prefix warnings, and warnings about functions which differ under different runs for a prefix, and, thus, end up not having asserts for that prefix. (If the latter case spans to all functions, then the former case kicks in) The switch is on by default, and can be disabled. Differential Revision: https://reviews.llvm.org/D95829
-
Atmn Patel authored
From https://bugs.llvm.org/show_bug.cgi?id=48973, we know that `std::call_once(PM->RTLs.initFlag, &RTLsTy::LoadRTLs, PM->RTLs)` causes compile time problems in libstdc++v3 5.3.1. This is because there was a defect in the standard regarding the `call_once` (LWG 2442). This was fixed in libstdc++ soon thereafter, but there are likely other standard libraries where this will fail. By matching this function call with the other one, we fix this bug. Differential Revision: https://reviews.llvm.org/D95769
-
Philip Reames authored
This is directly analogous to the existing no_caller_saved_registers, but with the opposite intention. A function or call so marked shifts the responsibility of spilling the usual CSRs to it's caller. An indirect call site and callee which don't agree on the attribute is ill defined. The motivation for this change is that being able to prune callee saves (without modifying other details of the calling convention) is sometimes useful when generating stubs and adapters. There's no intention to expose this as a source language feature; this is expected to be used by frontends to implement adapters where warranted. Some specific examples of use cases: * GC compatible compiled code wants to call an externally defined library function without needing to track pointer values through CSRs. * debug enabled code wants to call precompiled library which doesn't provide enough information to track CSRs while preserving debug quality in caller. * adapter stub entering hand written assembler which doesn't follow normal calling conventions.
-
Jonas Devlieghere authored
-
Rahman Lavaee authored
This patch let the yaml encoding use Hex64 values for NumBlocks, BB AddressOffset, BB Size, and BB Metadata. Additionally, it changes the decoded values in elf2yaml to uint64_t to match DataExtractor::getULEB128 return type. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D95767
-
Eric Schweitz authored
This change renames the CplxType class to ComplexType.
-
Philip Reames authored
-
Philip Reames authored
-
Petr Hosek authored
C identifier name input sections such as __llvm_prf_* are GC roots so they cannot be discarded. In LLD, the SHF_LINK_ORDER flag overrides the C identifier name semantics. The !associated metadata may be attached to a global object declaration with a single argument that references another global object, and it gets lowered to SHF_LINK_ORDER flag. When a function symbol is discarded by the linker, setting up !associated metadata allows linker to discard counters, data and values associated with that function symbol. Note that !associated metadata is only supported by ELF, it does not have any effect on non-ELF targets. Differential Revision: https://reviews.llvm.org/D76802
-
Patrick Oppenlander authored
This is consistent with BFD objcopy. Previously llvm objcopy would allocate space for SHT_NOBITS sections often resulting in enormous binary files. New test case (binary-paddr.test %t6). Reviewed By: jhenderson, MaskRay Differential Revision: https://reviews.llvm.org/D95569
-
Stanislav Mekhanoshin authored
Differential Revision: https://reviews.llvm.org/D95733
-
Hongtao Yu authored
Fixing up a couple places where `getCallSiteIdentifier` is needed to support pseudo-probe-based callsites. Also fixing an issue in the extbinary profile reader where the metadata section is not fully scanned based on the number of profiles loaded only for the current module. Reviewed By: wmi, wenlei Differential Revision: https://reviews.llvm.org/D95791
-
Björn Schäpers authored
Differential Revision: https://reviews.llvm.org/D92257
-
Weiwei Li authored
Support OpImageType in SPIRV Dialect. This change doesn't support operand AccessQualifier since it is optinal and only enables under Kernel capability. co-authored-by:
Alan Liu <alanliu.yf@gmail.com> Reviewed By: antiagainst Differential Revision: https://reviews.llvm.org/D95580
-
Philip Reames authored
The main point of committing this early is to have a negative test in tree. Nothing fails in the current tests if we implement this (currently unsound) optimization.
-
Stephen Kelly authored
-
Sanjay Patel authored
This is another step (see D95452) towards correcting fast-math-flags bugs in vector reductions. There are multiple bugs visible in the test diffs, and this is still not working as it should. We still use function attributes (rather than FMF) to drive part of the logic, but we are not checking for the correct FP function attributes. Note that FMF may not be propagated optimally on selects (example in https://llvm.org/PR35607 ). That's why I'm proposing to union the FMF of a fcmp+select pair and avoid regressions on existing vectorizer tests. Differential Revision: https://reviews.llvm.org/D95690
-
Mehdi Amini authored
This reverts commit 35a57f39. A build is broken during clang bootstrap with: In file included from ../libcxx/src/format.cpp:9: /tmp/ci-nGNyLRM9V3/include/c++/v1/format:153:16: error: no member named 'is_constant_evaluated' in namespace 'std::__1' if (_VSTD::is_constant_evaluated() && __id >= __num_args_) ~~~~~~~^ 1 error generated.
-
Mehdi Amini authored
Differential Revision: https://reviews.llvm.org/D95770
-
Florian Hahn authored
A == B map to A >= B && A <= B (https://alive2.llvm.org/ce/z/_dwxKn). This extends the constraint construction to return a list of constraints, which can be used to properly de-compose nested AND & OR.
-
Lei Zhang authored
Support OpImageType in SPIRV Dialect. This change doesn't support operand AccessQualifier since it is optinal and only enables under Kernel capability. co-authored-by:
Alan Liu <alanliu.yf@gmail.com> Reviewed By: antiagainst Differential Revision: https://reviews.llvm.org/D95580
-
AndreyChurbanov authored
The change includes OMP_NUM_TEAMS, OMP_TEAMS_THREAD_LIMIT env variables, omp_set_num_teams, omp_get_max_teams, omp_set_teams_thread_limit, omp_get_teams_thread_limit routines. Differential Revision: https://reviews.llvm.org/D95003
-
Philip Reames authored
This is a (rather delayed) follow up to commit 0129cd50. This commit is entirely NFC, the semantic change to leverage the new information will be submitted separate with a test case.
-
Hanhan Wang authored
This is the last revision to migrate using SimplePadOp to PadTensorOp, and the SimplePadOp is removed in the patch. Update a bit in SliceAnalysis because the PadTensorOp takes a region different from SimplePadOp. This is not covered by LinalgOp because it is not a structured op. Also, remove a duplicated comment from cpp file, which is already described in a header file. And update the pseudo-mlir in the comment. This is as same as D95615 but fixing one dep in CMakeLists.txt Different from D95671, the fix was applied to run target. Reviewed By: mravishankar Differential Revision: https://reviews.llvm.org/D95785
-
Wouter van Oortmerssen authored
As defined in the spec: https://github.com/WebAssembly/memory64/blob/master/proposals/memory64/Overview.md Differential Revision: https://reviews.llvm.org/D95651
-
Michael Holman authored
If the incoming block to a phi node is an EH pad, then we will materialize into an EH pad, which is not supposed to happen. To fix this, I added a check to see if incoming block of a phi node is an EH pad before using it as the insertion point. Differential Revision: https://reviews.llvm.org/D95019
-
Mark de Wever authored
Implements parts of: - P0645 Text Formatting Depends on D92214 Reviewed By: ldionne, curdeius, #libc Differential Revision: https://reviews.llvm.org/D93166
-
Michael Jones authored
Fuchsia's zxtest has a slightly different death test definition, and this macro makes our death test API work on Fuchsia. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D95648
-
David Green authored
Given a shuffle(vqdmulh(shuffle, shuffle), we can flatter the shuffles out if they become an identity mask. This can come up during lane interleaving, when we do that better. Differential Revision: https://reviews.llvm.org/D94034
-
Arthur Eubanks authored
Some benchmarks regress with non-trivial unswitching, so add an option to opt-out of performing non-trivial unswitching while investigating. Reviewed By: asbirlea Differential Revision: https://reviews.llvm.org/D95796
-