- Jun 01, 2024
-
-
Adam Paszke authored
-
Craig Topper authored
The C intrinsics should allow a value to be specified for the upper elements. This used to work before https://reviews.llvm.org/D146752 which should have only changed the behavior for the autovectorizer. It clearly changed all reductions.
-
Kazu Hirata authored
The function has been deprecated since: commit f9306f6d Author: Kazu Hirata <kazu@google.com> Date: Tue Oct 24 23:03:13 2023 -0700
-
Jeremy Kun authored
Rebased over https://github.com/llvm/llvm-project/pull/93243 Co-authored-by:
Jeremy Kun <j2kun@users.noreply.github.com>
-
Paul Kirth authored
Currently, with PIC relocatable links, FatLTO sections are treated as orphan sections and incorrectly concatenated together. This test verifies the current behavior, but should be fixed to either merge those sections into a single llvm module, similar to what `llvm-link` would produce, or to drop them altogether.
-
shaw young authored
Removed mutability from BB::LayoutIndex, subsequently removed const from BB::SetLayout, and changed BF::dfs to track visited blocks with a set as opposed to tracking and altering LayoutIndexes for more consistent code.
-
Petr Hosek authored
We weren't applying the libdir subdir to header directories but this is necessary for correctness when building e.g. ASan variant. This change also updates path construction logic accross all runtimes and ensures they're consistent.
-
RoseZhang03 authored
forward fix for #93620 -GCC doesn't recognize [[clang:: ']] prefix, so restored the original __attribute__ syntax
-
Daniel Thornburgh authored
If built statically, `libedit` may have a private static library dependency on a provider of the `terminfo` API (e.g., `ncurses`). This means that multiple libraries would need to be provided as the value for `LibEdit_LIBRARIES`, but the current implementation of `FindLibEdit` precludes this. This PR allows a list to be passed to `LibEdit_LIBRARIES`.
-
Joseph Huber authored
Summary: The logic since the next-gen plugins was added was that every single agent would get access to a memory pool we allocated. This is necessary for things like fine-grained memory and to faciliate d2d copied. However, there are cases where an agent cannot legally access a memory pool. We have a debug check for this, but it would always be triggered in these situations because both uses of the function simply passed every agent. This patch changes the behavior by only enabling memory pool access for agents that can access the memory pool.
-
Valentin Clement authored
-
Dave Lee authored
Reduce false positive identification of C names as Dlang mangled names. This happens when a C function uses the prefix `_D`. The [Dlang ABI](https://dlang.org/spec/abi.html#name_mangling) shows that mangled names have a length immediately following the `_D` prefix. This change checks for a digit after the `_D` prefix, when identifying the mangling scheme of a symbol. This doesn't prevent false positives entirely, but does make it less likely.
-
Fangrui Song authored
The `FA < FB` check added by https://reviews.llvm.org/D153096 is slow. Compute an informal layout order to speed up computation when `AttemptToFoldSymbolOffsetDifference` is repeatedly called for the same section. Commit 9500a5d0 ("[MC] Make UseAssemblerInfoForParsing mostly true") exposed this performance pitfall, which was mitigated by `setUseAssemblerInfoForParsing(false)` workarounds (e.g. commit 245491a9). The workaround can be removed now.
-
Paul T Robinson authored
…g run" (#93988)" This reverts commit 64169580. Fix bots by using different options.
-
Erick Velez authored
Require a template argument list after an identifier prefixed by the template keyword. Introduced by [CWG 96](https://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#96), but the current wording of [[temp.names]p5](https://eel.is/c++draft/temp.names#6) was introduced in [P1787R6](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1787r6.html ), and became [temp.names]p6 somewhere else. Fixes #53095 --------- Co-authored-by:
Shafik Yaghmour <shafik.yaghmour@intel.com>
-
Luke Lau authored
-
Aaron Ballman authored
That's on the CMPLX macros which Clang supports via __builtin_complex.
-
Valentin Clement (バレンタイン クレメン) authored
Prepare the argument and map them to their corresponding dummy symbol in order to lower the specification expression of the function result. Extract the preparation of arguments according to the interface to its own function to be reused. It seems there is no need to conditionally compute the length on the input since all the information comes from the CharBoxValue or the descriptor for cases where the number of element could be 0.
-
Valentin Clement (バレンタイン クレメン) authored
The BIND(C) attribute attached to a function can be lost when we do indirect call. This information might be useful for codegen that have specific ABI. This patch carry over the BIND(C) information to the fir.call operation.
-
Keith Smiley authored
-
jimingham authored
But one made in a situation where that's impossible might only have an error, and no symbol context, so that's not necessarily true. Check for the target's validity before using it. Fixes issue #93313
-
Keith Smiley authored
I missed this since it was still broken because of another patch https://github.com/llvm/llvm-project/pull/93996
-
Keith Smiley authored
-
Kazu Hirata authored
This patch switches to uint32_t for linear call stack IDs as uint32_t is sufficient to index into the call stack array.
-
David Stone authored
-
Nico Weber authored
-
RoseZhang03 authored
- In /libc/src/__support/ OSUtil, changed quick_exit to just exit, and put in namespace LIBC_NAMESPACE::internal. - In /libc/src/stdlib added quick_exit - Added test files for quick_exit
-
Paul T Robinson authored
Reverts llvm/llvm-project#93960 The change to offloading-interoperability.c broke many bots.
-
Paul T Robinson authored
-
Konstantin Zhuravlyov authored
-
Nikita Popov authored
This test currently has an explicit regex for characters that are supposedly valid inside a directory name -- however, it does not actually cover all necessary characters. For example, this test fails if the path contains a tilde. Instead, replace this with a wildcard.
-
Fangrui Song authored
Some linker scripts don't converge. https://reviews.llvm.org/D66279 ("[ELF] Make LinkerScript::assignAddresses iterative") detected convergence of symbol assignments. This patch detects convergence of output section addresses. While input sections might also have convergence issues, they are less common as expressions that could cause convergence issues typically involve output sections and symbol assignments. GNU ld has an error `non constant or forward reference address expression for section` that correctly rejects ``` SECTIONS { .text ADDR(.data)+0x1000 : { *(.text) } .data : { *(.data) } } ``` but not the following variant: ``` SECTIONS { .text foo : { *(.text) } .data : { *(.data) } foo = ADDR(.data)+0x1000; } ``` Our approach consistently rejects both cases. Link: https://discourse.llvm.org/t/lld-and-layout-convergence/79232 Pull Request: https://github.com/llvm/llvm-project/pull/93888
-
- May 31, 2024
-
-
Victor Perez authored
Define pass for GPU to LLVM conversion for SPIR-V backend tool ingest. Supported operations: - `gpu.block_id` - `gpu.global_id` - `gpu.block_dim` - `gpu.thread_id` - `gpu.grid_dim` - `gpu.barrier` - `gpu.shuffle` --------- Signed-off-by:Victor Perez <victor.perez@codeplay.com>
-
erichkeane authored
Seemingly I forgot to implement the appertainment checks when doing the original device_type implementation, so we fell through to the 'not implemented' section of the diagnostics. This patch corrects the appertainment, so that we disallow it correctly.
-
Ivan Kosarev authored
Removes ~100K instances of SIAssemblerPredicate and VIAssemblerPredicate fields from instruction records.
-
Vladislav Dzhidzhoev authored
This argument allows to set specific sysroot pass which will be used for building LLDB API test programs. It might come in handy for setting up cross-platform remote runs of API tests on Windows host. It can be useful for cross-compiling LLDB API tests. The argument can be set using `LLDB_TEST_USER_ARGS` argument: ``` cmake ... -DLLDB_TEST_USER_ARGS="...;--sysroot;C:\path\to\sysroot;..." ... ```
-
Valentin Clement (バレンタイン クレメン) authored
In some cases where we have an `hlfir.no_reassoc` operation, the bufferization pass could not earse the hlfir.destroy op during the `hlfir.associate` op conversion as show in the example below. ``` func.func @double_free(%arg0: !fir.boxchar<1>) { %c5 = arith.constant 5 : index %true = arith.constant true %0 = hlfir.as_expr %arg0 move %true : (!fir.boxchar<1>, i1) -> !hlfir.expr<!fir.char<1,?>> %1 = hlfir.no_reassoc %0 : !hlfir.expr<!fir.char<1,?>> %2:3 = hlfir.associate %1 typeparams %c5 {adapt.valuebyref} : (!hlfir.expr<!fir.char<1,?>>, index) -> (!fir.boxchar<1>, !fir.ref<!fir.char<1,?>>, i1) fir.call @noop(%2#0) : (!fir.boxchar<1>) -> () hlfir.end_associate %2#1, %2#2 : !fir.ref<!fir.char<1,?>>, i1 hlfir.destroy %0 : !hlfir.expr<!fir.char<1,?>> return } func.func private @noop(!fir.boxchar<1>) ``` The bufferization pass is looking at uses of its source `%1` that is the result of an `hlfir.no_reassoc` operation. In order to avoid double free generation, also look at the indirection in presence of `hlfir.no_reassoc`. -
Vladislav Dzhidzhoev authored
1. Use dashes (-) instead of colons (:) as time separator in a session log file name since Windows doesn't support saving files with names containing colons. 2. Temporary file creation code is changed in the test: On Windows, the temporary file should be closed before 'session save' writes session log to it. NamedTemporaryFile() can preserve the file after closing it with delete_on_close=False option. However, this option is only available since Python 3.12. Thus mkstemp() is used for temporary file creation as the more compatible option.
-
Luke Lau authored
-
Kirill Podoprigora authored
-