- Feb 06, 2024
-
-
Simon Pilgrim authored
[X86] Regenerate some vector constant comments missed in recent patches to improve mask predicate handling in addConstantComments These were missed as filecheck just ignores what's after the end of the check pattern for each line
-
Mészáros Gergely authored
Previously `__builtin_printf` would result to emitting call to `printf`, even though directly calling `printf` was translated. Ref: #68478
-
Anton Korobeynikov authored
-
David Spickett authored
Seems the easiest way to quiet this workflow while we figure out the final form of it.
-
Tom Stellard authored
There is more space available on /mnt (~56G) than on / (~30G), and we are starting to see some of the CI jobs run out of disk space on Linux.
-
agozillon authored
This patch seeks to add an initial lowering for pointers and allocatable variables captured by implicit and explicit map in Flang OpenMP for Target operations that take map clauses e.g. Target, Target Update. Target Exit/Enter etc. Currently this is done by treating the type that lowers to a descriptor (allocatable/pointer/assumed shape) as a map of a record type (e.g. a structure) as that's effectively what descriptor types lower to in LLVM-IR and what they're represented as in the Fortran runtime (written in C/C++). The descriptor effectively lowers to a structure containing scalar and array elements that represent various aspects of the underlying data being mapped (lower bound, upper bound, extent being the main ones of interest in most cases) and a pointer to the allocated data. In this current iteration of the mapping we map the structure in it's entirety and then attach the underlying data pointer and map the data to the device, this allows most of the required data to be resident on the device for use. Currently we do not support the addendum (another block of pointer data), but it shouldn't be too difficult to extend this to support it. The MapInfoOp generation for descriptor types is primarily handled in an optimization pass, where it expands BoxType (descriptor types) map captures into two maps, one for the structure (scalar elements) and the other for the pointer data (base address) and links them in a Parent <-> Child relationship. The later lowering processes will then treat them as a conjoined structure with a pointer member map.
-
Stanislav Mekhanoshin authored
-
Stanislav Mekhanoshin authored
Opsel bits are swapped. Actual byte select table: Byte OPSEL 0 0 1 2 2 1 3 3
-
Han-Chung Wang authored
Reverts llvm/llvm-project#79752 because it is causing regressions in downstream projects.
-
Yingwei Zheng authored
The assertion in #80597 failed when we were trying to compute known bits of a value in an unreachable BB. https://github.com/llvm/llvm-project/blob/859b09da08c2a47026ba0a7d2f21b7dca705864d/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp#L749-L810 In this case, `SignBits` is 30 (deduced from instr info), but `Known` is `10000101010111010011110101000?0?00000000000000000000000000000000` (deduced from dom cond). Setting high bits of `lshr Known, 1` will lead to conflict. This patch masks out high bits of `Known.Zero` to address this problem. Fixes #80597.
-
Benjamin Kramer authored
-
Billy Laws authored
ISel handles filling in x4/x5 when calling variadic functions as they don't correspond to the 5th/6th X64 arguments but rather to the end of the shadow space on the stack and the size in bytes of all stack parameters (ignored and written as 0 for calls from entry thunks). Will PR a follow up with ISel handling after this is merged.
-
Timm Bäder authored
Emit them just like the others, but these are integer typed.
-
Louis Dionne authored
This reverts commit 372f7dd4, which is not needed by Chrome anymore.
-
Mark de Wever authored
The issue addresses an obvious wording issue. Implementing the constructors as specified in the synposis, as libc++ did, already implements the fixed behaviour. Updates: - LWG3346 pair and tuple copy and move constructor have backwards specification
-
Tom Eccles authored
The website renders this `<h1>` as the page title in the index. This patch updates the title to better fit with the names of the other pages. See the index here https://flang.llvm.org/docs/
-
Louis Dionne authored
-
Valentin Clement (バレンタイン クレメン) authored
Reverts llvm/llvm-project#80351 Breaks some buildbot
-
Rajveer Singh Bharadwaj authored
Fixes #78754
-
Dimitry Andric authored
As of 4d20cfcf, `__bit_reference` contains a template `__fill_n` with a bool `_FillValue` parameter. Unfortunately there is a relatively widely used piece of scientific software called NetCDF, which exposes a (C) macro `_FillValue` in its public headers. When building the NetCDF C++ bindings, this quickly leads to compilation errors when the macro interferes with the template in `__bit_reference`. Rename the parameter to `_FillVal` to avoid the conflict.
-
Valentin Clement (バレンタイン クレメン) authored
This patch adds a simple pass to replace the uses inside compute operation. It replaces the `varPtr` values with their corresponding `accPtr` values gathered through the dataClauseOperands. private and reductions variables are not included in this pass since they will normally be replace when they are materialized. --------- Co-authored-by:Slava Zakharin <szakharin@nvidia.com>
-
Timm Bäder authored
-
Simon Pilgrim authored
Handle masked predicated movss/movsd in addConstantComments now that we can generically handle the destination + mask register This will more significantly help improve 'fixup constant' comments from #73509
-
Simon Pilgrim authored
Handle masked predicated load/broadcasts in addConstantComments now that we can generically handle the destination + mask register This will more significantly help improve 'fixup constant' comments from #73509
-
Simon Pilgrim authored
Remove handling from EmitAnyX86InstComments and handle all VPMOVSX/VPMOVZX comments in addConstantComments now that we can generically handle the destination + mask register and shuffle mask comment
-
Simon Pilgrim authored
This will allow us to easily use printDstRegisterName for other mask predicate destination registers, and printout shuffle masks from other instruction types.
-
Louis Dionne authored
We strive not to use raw assert(...) anymore in libc++abi in preparation for using the hardening framework.
-
Matthias Springer authored
Pass `DeallocationOptions` instead of `privateFuncDynamicOwnership`. This will make it easier to add new options in the future.
-
Louis Dionne authored
This was incorrectly removed when I split up the header.
-
Sirui Mu authored
This PR implements the `insque` and `remque` entrypoint functions.
-
NagyDonat authored
This commit improves alpha.security.ArrayBoundV2 in two connected areas: (1) It calls `markInteresting()` on the symbolic values that are responsible for the out of bounds access. (2) Its index-is-in-bounds assumptions are reported in note tags if they provide information about the value of an interesting symbol. This commit is limited to "display" changes: it introduces new diagnostic pieces (potentially to bugs found by other checkers), but ArrayBoundV2 will make the same assumptions and detect the same bugs before and after this change. As a minor unrelated change, this commit also updates/removes some very old comments which became obsolete due to my previous changes.
-
Louis Dionne authored
We noticed that some feature-test macros were not conditional on configuration flags like _LIBCPP_HAS_NO_FILESYSTEM. As a result, code attempting to use FTMs would not work as intended. This patch adds conditionals for a few feature-test macros, but more issues may exist. rdar://122020466
-
Loïc Joly authored
-
Joseph Huber authored
Summary: This function is always false in the current implementation and is not even considered required. Just remove it and if someone needs it in the future they can add it back in. This is done to simplify the interface prior to other changes
-
- Feb 05, 2024
-
-
Marius Brehler authored
This adds a conversion from an externaly defined `func.func`, a `func.func` without function body, to an `emitc.func` with an `extern` specifier.
-
Razvan Lupusoru authored
After PR#68727 the source for both the fir.box_addr and a box became the same. Thus the detection that only one of the sources was direct and the special logic around it was being skipped. As a result, the test included would show a "MayAlias" result instead of a "NoAlias" result.
-
lntue authored
-
Florian Hahn authored
This fixes a crash in the attached test case due to missing type inference for ICmp VPInstructions.
-
Timm Baeder authored
This is similar to c1ad363e, but with the additional twist that initializing an existing value from a `MemberExpr` was not working correctly.
-
cor3ntin authored
If the pattern of a pack indexing type did not contain a pack, we would still construct a pack indexing type (to improve error messages) but we would fail to make the type as dependent, leading to infinite recursion when trying to extract a canonical type.
-