- Jul 26, 2022
-
-
Kazu Hirata authored
-
Kazu Hirata authored
-
Nico Weber authored
-
Nico Weber authored
After bc39d7bd (ported to GN in 94c00c10), libclang uses symbol_exports, and clang/test/LibClang/symbols.test wants the versioned name to be `LLVM_[0-9]$` instead of `FOO`.
-
Sinan Lin authored
It would be better for CodeMetrics to use hasOneLiveUse while analyzing static and called once callsites, since inline cost now uses hasOneLiveUse instead of hasOneUse to avoid overpessimization on dead constant cases (since this patch https://reviews.llvm.org/D109294). This change has no noticeable influence now, but it helps improve the accuracy of cost models of passes that use CodeMetrics. Reviewed By: fhahn, nikic Differential Revision: https://reviews.llvm.org/D130461
-
Nico Weber authored
-
zhongyunde authored
Fix https://github.com/llvm/llvm-project/issues/56681 Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D130418
-
Tom Stellard authored
This partially reverts c7b3a910. Having libclang.so with a different SONAME than the other LLVM libraries was causing a lot of confusion for users. Also, this change did not really acheive it's purpose of allowing apps to use newer versions of libclang.so without rebuilding, because a new version of libclang.so requires a new version of libLLVM.so, which does not have a stable ABI. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D129160
-
Amir Ayupov authored
The test exercises an implicit ptr-to-int conversion which is made an error in D129881. We acknowledge the error but still want to test this case. Add `-Wno-int-conversion` to silence the error. Reviewed By: maksfb Differential Revision: https://reviews.llvm.org/D130546
-
Xiang Li authored
A new helper class DXILOpBuilder is added to create DXIL op function calls. TableGen backend for DXILOperation will create table for DXIL op function parameter types. When create DXIL op function, these parameter types will used to create the function type. Reviewed By: bogner Differential Revision: https://reviews.llvm.org/D130291
-
Jun Zhang authored
Also move MangleCtx when moving some lazy emission states in CodeGenModule. Without this patch clang-repl hits an invalid address access when passing `-Xcc -O2` flag. Signed-off-by:
Jun Zhang <jun@junz.org> Differential Revision: https://reviews.llvm.org/D130420
-
Sunho Kim authored
Adds keep-alive edges to pdata section to prevent dead strip of block when its parent function is alive. Reviewed By: lhames Differential Revision: https://reviews.llvm.org/D129945
-
Sunho Kim authored
Consider lib/dll files in llvm-jitlink. Reviewed By: lhames Differential Revision: https://reviews.llvm.org/D129944
-
Luo, Yuanke authored
Currently the X86 shuffle lowering would widen the element type for shuffle if the mask element value is adjacent. For below example %t2 = add nsw <16 x i32> %t0, %t1 %t3 = sub nsw <16 x i32> %t0, %t1 %t4 = shufflevector <16 x i32> %t2, <16 x i32> %t3, <16 x i32> <i32 16, i32 17, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15> ret <16 x i32> %t4 Compiler would transform the shuffle to %t4 = shufflevector <8 x i64> %t2, <8 x i64> %t3, <8 x i64> <i32 8, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7> This may lose the oppotunity to let ISel select mask instruction when avx512 is enabled. This patch is to prevent the tranform when avx512 feature is enabled. Thank Simon for the idea. Differential Revision: https://reviews.llvm.org/D129537 -
Slava Gurevich authored
Improve LLDB reliability by fixing the following "uninitialized variables" static code inspection warnings from scan.coverity.com: 1476275, 1274012, 1455035, 1364789, 1454282 1467483, 1406152, 1406255, 1454837, 1454416 1467446, 1462022, 1461909, 1420566, 1327228 1367767, 1431254, 1467299, 1312678, 1431780 1454731, 1490403 Differential Revision: https://reviews.llvm.org/D130528
-
Kazu Hirata authored
This fixes the warning: llvm-project/flang/lib/Lower/OpenMP.cpp:94:10: error: unused variable 'lastPrivBlock' [-Werror,-Wunused-variable]
-
Sunho Kim authored
Implement IMAGE_COMDAT_SELECT_LARGEST partially. It's going to fail if larger symbol appears but this hasn't happened at least in vcruntime library. We probably would not implement this properly as it requires complicated runtime patching which is not of nature of JIT. However, we'd like to validate if larger section appears and report to the user in the near future. Reviewed By: lhames Differential Revision: https://reviews.llvm.org/D129941
-
Sunho Kim authored
Implement IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY/LIBRARY characteristics flag. Since COFFObjectFile class will set undefined flag for symbols with no alias flag, ORC ObjectFileInterface will not pull in this symbol. So, we only need to make sure the scope is local. NOLIBRARY and LIBRARY are handled in the same way for now. (which is what lld does right now) Reviewed By: lhames Differential Revision: https://reviews.llvm.org/D129939
-
Sunho Kim authored
Handles duplicate external symbols. This happens in few static libraries generaed from msvc toolchain. Reviewed By: lhames Differential Revision: https://reviews.llvm.org/D129937
-
Weverything authored
-
John Ericson authored
If `CMAKE_INSTALL_BINDIR` is a different absolute path per project, as it is with NixOS when we install every package to its own prefix, the old way fails when the absolute path gets prepended with `CMAKE_INSTALL_PREFIX`. The `extend_path` function does what we want, but it is currently internal-only. So easier to just inline the one small case of it we need. Also fix one stray `bin` -> `CMAKE_INSTALL_BINDIR` Reviewed By: sebastian-ne Differential Revision: https://reviews.llvm.org/D101070
-
jacquesguan authored
This patch supports the scalable splat part for scalarizeExtractedBinop. Differential Revision: https://reviews.llvm.org/D129725
-
Slava Gurevich authored
This reverts commit b9aedd94.
-
jacquesguan authored
This patch adds constant folder for Exp2Op which only supports single and double precision floating-point. Differential Revision: https://reviews.llvm.org/D130472
-
Jacques Pienaar authored
When this was updated in D127139 the update in-place case was no longer marked as pessimistic. Add back in. Differential Revision: https://reviews.llvm.org/D130453
-
River Riddle authored
This commit fixes a failure edge case where we accidentally drop forward declared blocks in the error case. This allows for running the invalid.mlir test in asan mode now. Fixes #51387 Differential Revision: https://reviews.llvm.org/D130132
-
Arnamoy Bhattacharyya authored
This patch adds an initial support to the lastprivate clause for worksharing loop. The patch creates necessary control flow to guarantee the store of the value from the logical last iteration of the workshare loop. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D130027
-
Daniel Bertalan authored
Similarly to -load_hidden, this flag instructs the linker to not export symbols from the specified archive. While that flag takes a path, -hidden-l looks for the specified library name in the search path. The test changes are needed because -hidden-lfoo resolves to libfoo.a, not foo.a. Differential Revision: https://reviews.llvm.org/D130529
-
Slava Gurevich authored
Improve LLDB reliability by fixing the following "uninitialized variables" static code inspection warnings from scan.coverity.com: 1476275, 1274012, 1455035, 1364789, 1454282 1467483, 1406152, 1406255, 1454837, 1454416 1467446, 1462022, 1461909, 1420566, 1327228 1367767, 1431254, 1467299, 1312678, 1431780 1454731, 1490403 Differential Revision: https://reviews.llvm.org/D130528
-
River Riddle authored
The current Parser library is solely focused on providing API for the textual MLIR format, but MLIR will soon also provide a binary format. This commit renames the current Parser library to AsmParser to better correspond to what the library is actually intended for. A new Parser library is added which will act as a unified parser interface between both text and binary formats. Most parser clients are unaffected, given that the unified interface is essentially the same as the current interface. Only clients that rely on utilizing the AsmParserState, or those that want to parse Attributes/Types need to be updated to point to the AsmParser library. Differential Revision: https://reviews.llvm.org/D129605
-
Amara Emerson authored
of the first operands of each. Fixes issue #55287 Differential Revision: https://reviews.llvm.org/D130525
-
Shafik Yaghmour authored
[Clang] Fix how we set the NumPositiveBits on an EnumDecl to cover the case of single enumerator with value zero or an empty enum Currently in Sema::ActOnEnumBody(...) when calculating NumPositiveBits we miss the case where there is only a single enumerator with value zero and the case of an empty enum. In both cases we end up with zero positive bits when in fact we need one bit to store the value zero. This PR updates the calculation to account for these cases. Differential Revision: https://reviews.llvm.org/D130301
-
Craig Topper authored
D130508 handles more constants than just 1 or -1. We need to extract the constant instead of relying isOneConstant or isAllOnesConstant.
-
Alexander Shaposhnikov authored
Add assert for AtomicRMW: Ordering != AtomicOrdering::Unordered (https://github.com/llvm/llvm-project/blob/main/llvm/lib/IR/Verifier.cpp#L3944) and adjust expandAtomicStore accordingly. Test plan: 1/ ninja check-llvm check-clang check-lld 2/ Bootstrapped LLVM/Clang pass tests Differential revision: https://reviews.llvm.org/D130457
-
Fabian Parzefall authored
Rather than iterating over the whole function from the start until no internal calls are found, process each block only once and continue processing after splitting. This version of the function also does not seemingly invalidate iterators from within the loop. Reviewed By: maksfb Differential Revision: https://reviews.llvm.org/D130436
-
Fangrui Song authored
This compensates for 8f0c901c which enabled -Wunused-command-line-argument for unimplemented -mtune= in the generic code. Ignoring -mtune= appears to be longstanding and the error-free behavior in the presence of -Werror is unfortunately relied on by the Linux kernel's arm and powerpc ports. Ignore the warnings for the upcoming 15.0.0 branch and will implement functionality to fill the test gap soon. Link: https://github.com/ClangBuiltLinux/linux/issues/1674
-
lipracer authored
ArrayRef<Value> can implicit convert to ValueRange,when we call TypeRange(SmallVector<Value>) is ambiguity. TypeRange(ValueRange values) TypeRange(ArrayRef<Value> values) Reviewed By: rriddle, Mogball Differential Revision: https://reviews.llvm.org/D129475
-
lipracer authored
When we apply parent patch : https://reviews.llvm.org/D129475 The prompt I get with the clang compiler is: ValueRange is imcomplete type,ValueRange is a forward declaration in the file TypeRange.h, and the file OperationSupport.h already includes the file TypeRange.h.The class TypeRange and the class ValueRange depend on each other. Reviewed By: rriddle, Mogball Differential Revision: https://reviews.llvm.org/D130332
-
Augie Fackler authored
We no longer need specialized knowledge of these allocator functions in this file since we have the correct attributes available now. As far as I can tell the changes in the attributor tests are due to things getting more consistent on alloc-family once we remove the static list entries. The two test changes in NewGVN merit extra scrutiny: NewGVN appears to be _extremely_ sensitive to the inaccessiblememonly for reasons that are beyond me. As a result, I had-enumerated all the attributes on allocation functions in those two tests instead of using -inferattrs. I assumed that the two -disable-simplify-libcalls tests there no longer are sensible since the function declaration now includes all the relevant attributes. Differential Revision: https://reviews.llvm.org/D130107
-
Augie Fackler authored
As my goal is to remove at least _some_ functions from the static list in MemoryBuiltins.cpp, these tests either need to run inferattrs or statically declare these attributes to keep passing. A couple of tests had alternate cases which are no longer meaningful, e.g. `malloc-load-removal.ll`. Differential Revision: https://reviews.llvm.org/D123087
-