- 17 Sep, 2021 12 commits
-
-
peter klausler authored
Complete folding of the intrinsic reduction function COUNT() for all cases, including partial reductions with DIM= arguments. Differential Revision: https://reviews.llvm.org/D109911
-
Leonard Chan authored
We hit some undefined symbol errors to 128-bit floating point functions when linking this test. ld.lld: error: undefined symbol: __multf3 >>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a >>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a >>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a >>> referenced 4 more times >>> did you mean: __muldf3 >>> defined in: /usr/local/google/home/leonardchan/llvm-monorepo/llvm-build-1-master-fuchsia-toolchain/lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu/libclang_rt.builtins.a Host libc expects these to be defined, and compiler-rt will only define these for certain platforms (see definition for CRT_LDBL_128BIT). Since we likely can't do anything about the host libc, we can at least restrict the test to check that these functions are supported. Differential Revision: https://reviews.llvm.org/D109709
-
LLVM GN Syncbot authored
-
Lang Hames authored
Finalization and deallocation actions are a key part of the upcoming JITLinkMemoryManager redesign: They generalize the existing finalization and deallocate concepts (basically "copy-and-mprotect", and "munmap") to include support for arbitrary registration and deregistration of parts of JIT linked code. This allows us to register and deregister eh-frames, TLV sections, language metadata, etc. using regular memory management calls with no additional IPC/RPC overhead, which should both improve JIT performance and simplify interactions between ORC and the ORC runtime. The SimpleExecutorMemoryManager class provides executor-side support for memory management operations, including finalization and deallocation actions. This support is being added in advance of the rest of the memory manager redesign as it will simplify the introduction of an EPC based RuntimeDyld::MemoryManager (since eh-frame registration/deregistration will be expressible as actions). The new RuntimeDyld::MemoryManager will in turn allow us to remove older remote allocators that are blocking the rest of the memory manager changes.
-
Daniil Suchkov authored
This patch updates tests added in 5f2b7879.
-
peter klausler authored
When the shapes of actual arguments to ELEMENTAL procedures are sufficiently well known during semantics, require them to conform. Differential Revision: https://reviews.llvm.org/D109909
-
Nico Weber authored
Most PDB fields on disk are 32-bit but describe the file in terms of MSF blocks, which are 4 kiB by default. So PDB files can be a bit larger than 4 GiB, and much larger if you create them with a block size > 4 kiB. This is a first (necessary, but by far not not sufficient) step towards supporting such PDB files. Now we don't truncate in-memory file offsets (which are in terms of bytes, not in terms of blocks). No effective behavior change. lld-link will still error out if it were to produce PDBs > 4 GiB. Differential Revision: https://reviews.llvm.org/D109923
-
peter klausler authored
Improve checking for NULL() and NULL(MOLD=) when used as variables and expressions outside the few contexts where a disassociated pointer can be valid. There were both inappropriate errors and missing checks. Differential Revision: https://reviews.llvm.org/D109905
-
Daniil Suchkov authored
To make the IR easier to analyze, this pass makes some minor transformations. After that, even if it doesn't decide to optimize anything, it can't report that it changed nothing and preserved all the analyses. Reviewed By: reames Differential Revision: https://reviews.llvm.org/D109855
-
Daniil Suchkov authored
-
Jon Roelofs authored
Differential revision: https://reviews.llvm.org/D109929
-
Mitch Phillips authored
D107799 changed the paths from lib/libcxx(abi)?.a to lib/<triple>/libcxx(abi)?.a. The build script needs to know to pick up the files from the triple subfolder instead. See https://lab.llvm.org/buildbot/#/builders/37/builds/6764 for buildbot log failure. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D109924
-
- 16 Sep, 2021 28 commits
-
-
MaheshRavishankar authored
The pattern is returning success even if it does no work leading to pattern application running up to the max iteration count and failing. Reviewed By: nicolasvasilache, mravishankar Differential Revision: https://reviews.llvm.org/D109791
-
Aart Bik authored
Reviewed By: bixia Differential Revision: https://reviews.llvm.org/D109919
-
Richard Howell authored
This refactor changes the GlobalMethodPool to a class that contains the DenseMap of methods. This is to allow for the addition of a separate DenseSet in a follow-up diff that will handle method de-duplication when inserting methods into the global method pool. Changes: - the `GlobalMethods` pair becomes `GlobalMethodPool::Lists` - the `GlobalMethodPool` becomes a class containing the `DenseMap` of methods - pass through methods are added to maintain most of the existing code without changing `MethodPool` -> `MethodPool.Methods` everywhere Reviewed By: dexonsmith Differential Revision: https://reviews.llvm.org/D109898
-
William Muir authored
Presently, definitions default to those for Linux which are not defined for FreeBSD (HAVE_LSEEK64, HAVE_MALLINFO, etc.). Patch sets os_defines to posix definitions under FreeBSD. Reviewed By: GMNGeoffrey Differential Revision: https://reviews.llvm.org/D109913
-
Augusto Noronha authored
This reverts commit 47dd1f64. After discussing with Jim Ingham, we agreed to leave the test as-is so we can catch any CI problems instead of silently skipping the test.
-
Vedant Kumar authored
This reverts commit 7eb67748. It causes TestMachCore.MachCoreTestCase to fail.
-
Vedant Kumar authored
A MachO userspace corefile may contain LC_THREAD commands which specify thread exception state. For arm64* only (for now), report a human-readable version of this state as the thread stop reason, instead of 'SIGSTOP'. As a follow-up, similar functionality can be implemented for x86 cores by translating the trapno/err exception registers. rdar://82898146 Differential Revision: https://reviews.llvm.org/D109795
-
Alex Langford authored
I have 2 goals with this change: 1. Disambiguate between CPlusPlus::FindAlternateFunctionManglings and IRExecutionUnit::FindBestAlternateMangledName. These are named very similar things, they try to do very similar things, but their approaches are different. This change should make it clear that one is generating possible alternate manglings (through some heuristics-based approach) and the other is finding alternate manglings (through searching the SymbolFile for potential matches). 2. Change GenerateAlternateFunctionManglings from a static method in CPlusPlusLanguage to a virtual method in Language. This will allow us to remove a direct use of CPlusPlusLanguage in IRExecutionUnit, further pushing it to be more general. This change doesn't meet this goal completely but allows for it to happen later. Though this doesn't remove IRExecutionUnit's dependency on CPlusPlusLanguage, it does bring us closer to that goal. Differential Revision: https://reviews.llvm.org/D109785
-
Jacob Lambert authored
Nonfunctional commit fixing several minor spelling errors in llvm/lib/Target/AMDGPU header files. Testing workflow as a new contributor. Differential Revision: https://reviews.llvm.org/D109733
-
Philip Reames authored
-
Augusto Noronha authored
xcodebuild, which is invoked by the apple_simulator_test decorator, may may return a successful status even if it was unable to run due to the authorization agent denying it. This causes the TestAppleSimulatorOSType to run when it shouldn't, and throw an excpection when parsing the JSON that lists the simulators available. Wrap the json parsing in a try/except block and if it fails, skip the ttest. Differential Revision: https://reviews.llvm.org/D109336
-
Fangrui Song authored
-
Teresa Johnson authored
Skip stack accesses unless requested, as the memory profiler runtime does not currently look at or report accesses for these addresses. Differential Revision: https://reviews.llvm.org/D109868
-
Philip Reames authored
-
Nikita Popov authored
getMetadata() currently uses a weird API where it populates a structure passed to it, and optionally merges into it. Instead, we can return the AAMDNodes and provide a separate merge() API. This makes usages more compact. Differential Revision: https://reviews.llvm.org/D109852
-
Aaron Green authored
On Fuchsia, killing or exiting a process that has a thread listening to its own process's debugger exception channel can hang. Zircon may kill all the threads, send a synthetic exceptions to debugger, and wait for the debugger to have received them. This means the thread listening to the debug exception channel may be killed even as Zircon is waiting for that thread to drain the exception channel, and the process can become stuck in a half-dead state. This situation is "weird" as it only arises when a process is trying to debug itself. Unfortunately, this is exactly the scenario for libFuzzer on Fuchsia: FuzzerUtilFuchsia spawns a crash-handling thread that acts like a debugger in order to be able to rewrite the crashed threads stack and resume them into libFuzzer's usual POSIX signal handlers. In practice, approximately 25% of fuzzers appear to hang on exit, after generating output and artifacts. These processes hang around until the platform is torn done, which is typically a ClusterFuzz VM. Thus, real-world impact has been somewhat mitigated. The issue should still be resolved for local users, though. This change improves the behavior of exit() in libFuzzer by adding an atexit handler which closes an event shared with the crash handling thread. This signals to the crash handler that it should close the exception channel and be joined before the process actually exits. Reviewed By: charco Differential Revision: https://reviews.llvm.org/D109258
-
Rob Suderman authored
TosaOp defintion had an artificial constraint that the input/output types needed to be ranked to invoke the quantization builder. This is correct as an unranked tensor could still be quantized. Reviewed By: NatashaKnk Differential Revision: https://reviews.llvm.org/D109863
-
Amy Huang authored
This test checks that timers are working and printing as expected. I also seem to have changed the order of the timers in my globals refactoring patch, so I fixed it here. Differential Revision: https://reviews.llvm.org/D109904
-
Artem Belevich authored
Otherwise, we fail to compile calls to CUDA kernels that are static members. Differential Revision: https://reviews.llvm.org/D108787
-
Jake Egan authored
AIX and z/OS lack Objective-C support, so mark these tests as unsupported for AIX and z/OS. Reviewed By: jsji Differential Revision: https://reviews.llvm.org/D109060
-
Craig Topper authored
SimplifyDemandedBits can turn srl into sra if the bits being shifted in aren't demanded. This patch can recover the original sra in some cases. I've renamed the tablegen class for detecting W users since the "overflowing operator" term I originally borrowed from Operator.h does not include srl. Reviewed By: luismarques Differential Revision: https://reviews.llvm.org/D109162
-
Amy Huang authored
This patch removes globals from the lldCOFF library, by moving globals into a context class (COFFLinkingContext) and passing it around wherever it's needed. See https://lists.llvm.org/pipermail/llvm-dev/2021-June/151184.html for context about removing globals from LLD. I also haven't moved the `driver` or `config` variables yet. Differential Revision: https://reviews.llvm.org/D109634
-
Jonas Devlieghere authored
This is a protected function that's not implemented.
-
Vang Thao authored
In https://reviews.llvm.org/D100481, forceful inline of all non-kernel functions using lds was disabled since AMDGPULowerModuleLDS pass now handles static lds. However that pass does not handle extern lds so non-kernel functions using extern lds must sill be inline. Reviewed By: hsmhsm, arsenm Differential Revision: https://reviews.llvm.org/D109773
-
Arthur Eubanks authored
This makes some tests in vector-reductions-logical.ll more stable when applying D108837. The cost of branching is higher when vector ops are involved due to potential SLP transformations. Reviewed By: spatel Differential Revision: https://reviews.llvm.org/D108935
-
Saleem Abdulrasool authored
The trailing `>` was missing, which resulted in the reference not being processed properly.
-
Dávid Bolvanský authored
If power is even: powi(-x, p) -> powi(x, p) powi(fabs(x), p) -> powi(x, p) powi(copysign(x, y), p) -> powi(x, p)
-