- Mar 01, 2022
-
-
Balázs Kéri authored
Add a checker to maintain the system-defined value 'errno'. The value is supposed to be set in the future by existing or new checkers that evaluate errno-modifying function calls. Reviewed By: NoQ, steakhal Differential Revision: https://reviews.llvm.org/D120310
-
Jonas Devlieghere authored
WithColor has an "auto detection mode" which looks whether the corresponding whether the corresponding cl::opt is enabled or not. While this is great when opting into cl::opt, it's not so great for downstream users of this utility, which might have their own competing options to enable or disable colors. The WithColor constructor takes a color mode, but the big benefit of the class are its static error and warning helpers and default error handlers. In order to allow users of this utility to enable or disable colors globally, this patch adds the ability to specify a global auto detection function. By default, the auto detection function behaves the way that it does today. The benefit of this patch lies in that it can be overwritten. In addition to a ability to change the auto detection function, I've also made it possible to get your hands on the default auto detection function, so you swap it back if if you so desire. This patch allow downstream users (like LLDB) to globally disable colors with its own command line flag. Differential revision: https://reviews.llvm.org/D120593
-
Fangrui Song authored
glibc 2.37 will remove prelink support. See https://sourceware.org/pipermail/libc-alpha/2022-January/135565.html for its broken current state. Reviewed By: kstoimenov Differential Revision: https://reviews.llvm.org/D120520
-
Weining Lu authored
-
Amir Ayupov authored
Reassigning the operand didn't update the operand type which resulted in an assertion (`Assertion `isReg() && "This is not a register operand!"' failed.`) Reset the instruction instead. Test Plan: ``` ninja check-bolt ... PASS: BOLT-Unit :: Core/./CoreTests/X86/MCPlusBuilderTester.ReplaceRegWithImm/0 (90 of 136) ``` Reviewed By: rafauler Differential Revision: https://reviews.llvm.org/D120263
-
Jez Ng authored
This makes it easier to debug those errors. See e.g. https://github.com/llvm/llvm-project/issues/52767#issuecomment-1028713943 We take the approach of 'reverse-engineering' the InputSection from the output buffer offset. This provides for a cleaner Target API, and is similar to LLD-ELF's implementation of getErrorPlace(). Reviewed By: #lld-macho, Roger Differential Revision: https://reviews.llvm.org/D118903
-
Phoebe Wang authored
This is to match GCC's optimizations: https://gcc.godbolt.org/z/3odh9e7WE Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D120199
-
Lian Wang authored
Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D120656
-
Zhihao Yuan authored
Given a dependent `T` (maybe an undeduced `auto`), Before: new T(z) --> new T((z)) # changes meaning with more args new T{z} --> new T{z} T(z) --> T(z) T{z} --> T({z}) # forbidden if T is auto After: new T(z) --> new T(z) new T{z} --> new T{z} T(z) --> T(z) T{z} --> T{z} Depends on D113393 Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D120608
-
Zhihao Yuan authored
https://wg21.link/p0849 Reviewed By: aaron.ballman, erichkeane Differential Revision: https://reviews.llvm.org/D113393
-
Eli Friedman authored
Trying to invoke an x64 binary on ARM64 Windows 10 won't work, and will print an obscure error message. Choose the 32-bit linker instead, which will run under emulation. The x64 linker should in theory run under ARM64 Windows 11. We could detect this using IsWow64GuestMachineSupported(), but I don't have a setup to test that with at the moment. Differential Revision: https://reviews.llvm.org/D120681
-
Michael Kruse authored
signed/unsigned comparison in gtest macro. Also fix buidlbots: https://lab.llvm.org/buildbot#builders/36/builds/18337 https://lab.llvm.org/buildbot#builders/57/builds/15594
-
Kirill Stoimenov authored
This is a clean-up patch. The functional pass was rolled into the module pass in D112732. Reviewed By: vitalybuka, aeubanks Differential Revision: https://reviews.llvm.org/D120674
-
Michael Kruse authored
Add applyStaticChunkedWorkshareLoop method implementing static schedule when chunk-size is specified. Unlike a static schedule without chunk-size (where chunk-size is chosen by the runtime such that each thread receives one chunk), we need two nested loops: one for looping over the iterations of a chunk, and a second for looping over all chunks assigned to the threads. This patch includes the following related changes: * Adapt applyWorkshareLoop to triage between the schedule types, now possible since all schedules have been implemented. The default schedule is assumed to be non-chunked static, as without OpenMPIRBuilder. * Remove the chunk parameter from applyStaticWorkshareLoop, it is ignored by the runtime. Change the value for the value passed to the init function to 0, as without OpenMPIRBuilder. * Refactor CanonicalLoopInfo::setTripCount and CanonicalLoopInfo::mapIndVar as used by both, applyStaticWorkshareLoop and applyStaticChunkedWorkshareLoop. * Enable Clang to use the OpenMPIRBuilder in the presence of the schedule clause. Differential Revision: https://reviews.llvm.org/D114413
-
Peter Klausler authored
Add a header-only implementation of Briggs & Torczon's fast small integer set data structure to flang/include/flang/Common, and use it in the runtime to manage a pool of Fortran unit numbers with recycling. This replaces the bit set previously used for that purpose. The set is initialized on demand with the negations of all the NEWUNIT= unit numbers that can be returned to any kind of integer variable. For programs that require more concurrently open NEWUNIT= unit numbers than the pool can hold, they are now allocated with a non-recycling counter. This allows as many open units as the operating system provides. Many of the top-line comments in flang/unittests/Runtime had the wrong path name. I noticed this while adding a unit test for the fast integer set data structure, and cleaned them up. Differential Revision: https://reviews.llvm.org/D120685
-
Arthur O'Dwyer authored
Reviewed as part of D118616.
-
Siva Chandra Reddy authored
Only the methods currently required by the libc have been added. Most of the existing uses of atomic operations have been switched over to this new class. A future change will clean up the rest of uses. This change now allows building mutex and condition variable code with a C++ compiler which does not have stdatomic.h, for example g++. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D120642
-
Kiran Chandramohan authored
This patch includes some changes which brings the code in line with llvm coding guidelines. -> Remove curlies for one line if statements. -> Remove else after return. -> Removes a few usage of auto. -> Add Doxygen comments Addresses post review comments in D120403 by @schweitz. Reviewed By: schweitz Differential Revision: https://reviews.llvm.org/D120657
-
not-jenni authored
Reviewed By: rsuderman Differential Revision: https://reviews.llvm.org/D120338
-
Peter Klausler authored
Derived types with allocatable and pointer components cannot be used in I/O data transfer statements unless they have defined I/O procedures available (as type-bound or regular generics). These cases are caught as errors by the I/O runtime library, but it would be better if they were flagged during compilation. (Address comment in review: don't use explicit name string lengths.) Differential Revision: https://reviews.llvm.org/D120675
-
Jonas Devlieghere authored
This reverts commit a83cf7a8 because it breaks a bunch of build bots.
-
Hsiangkai Wang authored
This patch adds support for the following SME instruction: * RDSVL The reference can be found here: https://developer.arm.com/documentation/ddi0602/2021-12 Differential Revision: https://reviews.llvm.org/D120603
-
Hsiangkai Wang authored
This patch adds support for the following SME instructions: * ADDSPL, ADDSVL The reference can be found here: https://developer.arm.com/documentation/ddi0602/2021-12 Differential Revision: https://reviews.llvm.org/D120554
-
Okwan Kwon authored
Add a pattern matcher for ExtractSliceOp when its source is a constant. The matching heuristics can be governed by the control function since generating a new constant is not always beneficial. Differential Revision: https://reviews.llvm.org/D119605
-
Jonas Devlieghere authored
WithColor has an "auto detection mode" which looks whether the corresponding whether the corresponding cl::opt is enabled or not. While this is great when opting into cl::opt, it's not so great for downstream users of this utility, which might have their own competing options to enable or disable colors. The WithColor constructor takes a color mode, but the big benefit of the class are its static error and warning helpers and default error handlers. In order to allow users of this utility to enable or disable colors globally, this patch adds the ability to specify a global auto detection function. By default, the auto detection function behaves the way that it does today. The benefit of this patch lies in that it can be overwritten. In addition to a ability to change the auto detection function, I've also made it possible to get your hands on the default auto detection function, so you swap it back if if you so desire. This patch allow downstream users (like LLDB) to globally disable colors with its own command line flag. Differential revision: https://reviews.llvm.org/D120593
-
- Feb 28, 2022
-
-
Clint Caywood authored
__builtin_clz requires just a single instruction on x86 and arm, so this is a performance improvement. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D120579
-
LLVM GN Syncbot authored
-
Louis Dionne authored
libc++abi should be responsible for installing its own headers, it doesn't make sense for libc++ to be responsible for it. Differential Revision: https://reviews.llvm.org/D101458
-
Louis Dionne authored
-
Louis Dionne authored
-
Lei Zhang authored
If we have a chain of `tensor.insert_slice` ops inserting some `tensor.pad` op into a `linalg.fill` and ranges do not overlap, we can also elide the `tensor.pad` later. Reviewed By: ThomasRaoux Differential Revision: https://reviews.llvm.org/D120446
-
Lei Zhang authored
Fold tensor.insert_slice(tensor.pad(<input>), linalg.fill) into tensor.insert_slice(<input>, linalg.fill) if the padding value and the filling value are the same. Reviewed By: ThomasRaoux Differential Revision: https://reviews.llvm.org/D120410
-
Martin Storsjö authored
International currency symbols (like USD, EUR) are returned with a trailing space, like "USD ", on previously supported Unix platforms. On Windows, the locales return them without a trailing space. Also adjust the test for expecting a different unicode sequence for the national currency symbol for ru_RU.UTF-8 and zh_CN.UTF-8. Differential Revision: https://reviews.llvm.org/D120547
-
Yaxun (Sam) Liu authored
It should be oclc_abi_version* instead of abi_version*. Reviewed by: Artem Belevich Differential Revision: https://reviews.llvm.org/D120557
-
Philip Reames authored
-
Scott Linder authored
Last year I was working at Swift to add support for [Localization of Compiler Diagnostic Messages](https://forums.swift.org/t/localization-of-compiler-diagnostic-messages/36412/41). We are currently using YAML as the new diagnostic format. The LLVM::YAMLParser didn't have a support for multiline string literal folding and it's crucial to have that for the diagnostic message to help us keep up with the 80 columns rule. Therefore, I decided to add a multiline string literal folding support to the YAML parser. Patch By: @HassanElDesouky (Hassan ElDesouky) Differential Revision: https://reviews.llvm.org/D102590
-
Jorge Gorbe Moya authored
Since https://reviews.llvm.org/D120334, passing a temporary LangOptions object to Lexer results in stack-use-after-scope.
-
Arthur Eubanks authored
Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D120666
-
Craig Topper authored
I think the immediate values we check for on the GREV nodes already protect this, but better to be explicit.
-
Valentin Clement authored
Just adds some lowering test for complex operations. These were not added when the lowering landed. This patch is part of the upstreaming effort from fir-dev branch. Reviewed By: schweitz Differential Revision: https://reviews.llvm.org/D120672
-