- Jan 11, 2024
-
-
xumingjie.enna1 authored
Reland "[asan] Use InternalMmapVector for error_message_buffer, reallocate when the size of error_message_buffer is not enough" Fix deadlock Address review comments
-
- Jan 10, 2024
-
-
xumingjie.enna1 authored
This reverts commit 3cf10f33.
-
xumingjie.enna1 authored
-
xumingjie.enna1 authored
Revert "[asan] Use InternalMmapVector for error_message_buffer, reallocate when the size of error_message_buffer is not enough" This reverts commit 37e6da69.
-
- Jan 09, 2024
-
-
xumingjie.enna1 authored
[asan] Use InternalMmapVector for error_message_buffer, reallocate when the size of error_message_buffer is not enough
-
Mitch Phillips authored
Requested in https://github.com/llvm/llvm-project/pull/77078, I agree that we may as well be unambiguous.
-
Jay Foad authored
GFX12 has separate wait instructions per counter e.g. S_WAIT_LOADCNT. S_WAITCNT still exists but is deprecated and codegen should stop using it. S_WAITCNT_* (e.g. S_WAITCNT_VSCNT) are removed. This patch adds/removes MC layer support for these instructions.
-
Benjamin Maxwell authored
This adds MLIR versions of the Arm streaming vector length intrinsics. These allow reading the streaming vector length regardless of the streaming mode.
-
Luke Lau authored
toFeatures and toFeatureVector both output a list of target feature flags, just with a slightly different interface. toFeatures keeps any unsupported extensions, and also provides a way to append negative extensions (AddAllExtensions=true). This patch combines them into one function, so that a later patch will be be able to get a std::vector of features that includes all the negative extensions, which was previously only possible through the StrAlloc interface.
-
avl-llvm authored
[DWARFLinker][DWARFLinkerParallel][NFC] Refactor DWARFLinker&DWARFLinkerParallel to have a common library. Part 1. (#75925) This patch creates DWARFLinkerBase library, places DWARFLinker code into DWARFLinker\Classic, places DWARFLinkerParallel into DWARFLinker\Parallel. updates BOLT to use new library. This patch is NFC.
-
jeanPerier authored
This is done using libquadmath and the mappings are only available if libquadmath was found by cmake. Support for non quad bessels is already available on POSIX platform using libm extensions.
-
Nikita Popov authored
When initializing a union that constrain a struct with a flexible array member, and the initializer list is empty, we currently trigger an assertion failure. This happens because getFlexibleArrayInitChars() assumes that the initializer list is non-empty. Fixes https://github.com/llvm/llvm-project/issues/77085.
-
Matt Arsenault authored
The library implementation is just a wrapper around a call to the intrinsic, but loses metadata. Swap out the call site to the intrinsic so that the lowering can see the !fpmath metadata and fast math flags. Since d56e0d07, clang started placing !fpmath on OpenCL library sqrt calls. Also don't bother emitting native_sqrt anymore, it's just another wrapper around llvm.sqrt.
-
Andrzej Warzyński authored
As per the docs [1]: ``` In absence of an explicit layout, a memref is considered to have a multi-dimensional identity affine map layout. ``` This patch makes sure that MemRefs with no strides (i.e. no explicit layout) are treated as contiguous when checking whether a particular vector is a contiguous slice of the given MemRef. [1] https://mlir.llvm.org/docs/Dialects/Builtin/#layout Follow-up for #76428.
-
Adrian Kuegel authored
-
Jinyang He authored
The shouldInsertExtraNopBytesForCodeAlign() need STI to check whether relax is enabled or not. It is initialized when call setEmitNops. The setEmitNops may not be called in a section which has instructions but is not executable. In this case uninitialized STI will cause problems. Thus, check hasEmitNops before call it. Fixes: https://github.com/llvm/llvm-project/pull/76552#issuecomment-1878952480
-
Jinyang He authored
[LoongArch] Support R_LARCH_{ADD,SUB}_ULEB128 for .uleb128 and force relocs when sym is not in section (#76433) 1, Follow RISCV 1df5ea29 to support generates relocs for .uleb128 which can not be folded. Unlike RISCV, the located content of LoongArch should be zero. LoongArch fixup uleb128 value by in-place addition and subtraction reloc types named R_LARCH_{ADD,SUB}_ULEB128. The located content can affect the result and R_LARCH_ADD_ULEB128 has enough info to represent the first symbol value, so it needs to be set to zero. 2, Force relocs if sym is not in section so that it can emit relocs for external symbol. Fixes: https://github.com/llvm/llvm-project/pull/72960#issuecomment-1866844679 -
Hana Dusíková authored
-
Lu Weining authored
-
Aiden Grossman authored
The GHC CC got added to RISCV in a8dc2110 but it never got documented in the LangRef. This adds documentation in the LangRef noting that RISCV is supports the GHC calling convention and notes the specific limitations of the GHC CC on RISCV.
-
Nick Anderson authored
Port CodeGenPrepare to new pass manager and dependency BasicBlockSectionsProfileReader Fixes: #75380 Co-authored-by:Krishna-13-cyber <84722531+Krishna-13-cyber@users.noreply.github.com>
-
Shengchen Kan authored
This test should be added after #73529
-
Chia authored
This patch aims to use `vaaddu` with rounding mode rdn (i.e `vxrm[1:0] = 0b10`) for `ISD::AVGFLOORU`. ### Source code ``` define <8 x i8> @vaaddu_auto(ptr %x, ptr %y, ptr %z) { %xv = load <8 x i8>, ptr %x, align 2 %yv = load <8 x i8>, ptr %y, align 2 %xzv = zext <8 x i8> %xv to <8 x i16> %yzv = zext <8 x i8> %yv to <8 x i16> %add = add nuw nsw <8 x i16> %xzv, %yzv %div = lshr <8 x i16> %add, <i16 1, i16 1, i16 1, i16 1, i16 1, i16 1, i16 1, i16 1> %ret = trunc <8 x i16> %div to <8 x i8> ret <8 x i8> %ret } ``` ### Before this patch ``` vaaddu_auto: vsetivli zero, 8, e8, mf2, ta, ma vle8.v v8, (a0) vle8.v v9, (a1) vwaddu.vv v10, v8, v9 vnsrl.wi v8, v10, 1 ret ``` ### After this patch ``` vaaddu_auto: vsetivli zero, 8, e8, mf2, ta, ma vle8.v v8, (a0) vle8.v v9, (a1) csrwi vxrm, 2 vaaddu.vv v8, v8, v9 ret ``` ### Note on signed averaging addition Based on the rvv spec, there is also a variant for signed averaging addition called `vaadd`. But AFAIU, no matter in which rounding mode, we cannot achieve the semantic of signed averaging addition through `vaadd`. Thus this patch only introduces `vaaddu`. -
Matt Arsenault authored
This makes it possible to pass null_frag to the MAIInst multiclass. null_frag does not work as you may hope if used as the input to a PatFrag, which is what happens when it's passed through to *MAIFrag. Avoid this by checking for null_frag. It might be possible to hack up tablegen to allow consuming PatFrag inputs.
-
Kazu Hirata authored
-
SunilKuravinakop authored
Changes uploaded to the phabricator on Dec 16th are lost because the phabricator is down. Hence re-uploading it to the github.com. Changes to be committed: modified: clang/include/clang/Sema/Sema.h modified: clang/lib/Sema/SemaOpenMP.cpp modified: clang/test/OpenMP/generic_loop_ast_print.cpp modified: clang/test/OpenMP/loop_bind_messages.cpp modified: clang/test/PCH/pragma-loop.cpp --------- Co-authored-by: Sunil Kuravinakop
-
Fangrui Song authored
Fixes: b8dface2 ThinLTO asan build may place `asan_globals` before the associated `.bss.xxx` section. `rel->getOutputSection()` is nullptr because `rel->parent` hasn't been set, leading to a crash. Simplify return `s->name` in this case.
-
Kazu Hirata authored
It's been more than 3 years since -pgo-instr-old-cfg-hashing was introduced by: commit 120e66b3 Author: Hiroshi Yamauchi <yamauchi@google.com> Date: Tue Jul 28 10:09:49 2020 -0700 I don't think anyone really cares about the ability to use the old CFG hashing at this point.
-
ZijunZhaoCCK authored
Clang always silently ignores garbage target versions and this makes debug harder. So clang will report when target versions are invalid.
-
Brad Smith authored
illumos has an older version of the Solaris linker that does not support the GNU version script compat nor version scripts and does not support -Bsymbolic-functions. Treat illumos linker separately. The libclang/CMakeLists part lifted from NetBSD's pkgsrc. Build tested on Solaris 11.4 and OpenIndiana 2023.10. /usr/bin/ld --version ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.3260 ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1790 (illumos)
-
Fangrui Song authored
Complement #72610 (non-SHF_ALLOC sections). GCC-generated .gcc_exception_table has the SHF_ALLOC flag and may contain R_RISCV_SET_ULEB128/R_RISCV_SUB_ULEB128 relocations.
-
Justin Fargnoli authored
This PR adds promised interface declarations for `ConvertToLLVMPatternInterface` in all the dialects that support the `ConvertToLLVM` dialect extension. Promised interfaces allow a dialect to declare that it will have an implementation of a particular interface, crashing the program if one isn't provided when the interface is used.
-
Vitaly Buka authored
-
Craig Topper authored
This is needed to properly support Zve32x.
-
James Y Knight authored
Targets affected: - NVPTX and BPF: set to 64 bits. - ARC, Lanai, and MSP430: set to 0 (they don't implement atomics). Those which didn't yet add AtomicExpandPass to their pass pipeline now do so. This will result in larger atomic operations getting expanded to `__atomic_*` libcalls via AtomicExpandPass. On all these targets, this now matches what Clang already does in the frontend. The only targets which do not configure AtomicExpandPass now are: - DirectX and SPIRV: they aren't normal backends. - AVR: a single-cpu architecture with no privileged/user divide, which could implement all atomics by disabling/enabling interrupts, regardless of size/alignment. Will be addressed by future work.
-
Jim Lin authored
ANDN/ORN/XNOR are like other ALU instructions. It should be able to be predicated by the cpu that supports short-forward-branch.
-
wangpc authored
-
Ben Shi authored
1. Improve the 'errno' modeling. 2. Improve constraints of the arguments.
-
Kazu Hirata authored
-
Vitaly Buka authored
Msan does not unwind stack in malloc without origins, but we still need trace for fatal errors.
-