- May 05, 2023
-
-
Joseph Huber authored
We use a bump pointer to implement malloc for the hermetic tests. Currently, we bump the pointer up by any amount. This means that calling `malloc(1)` will misalign the buffer so any following `malloc(8)` accesses will not be aligned. This causes problems in architectures which require alignment. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D149863
-
Arthur Eubanks authored
Matches the CMake build, otherwise we're rebuilding tblgen (and everything else) when there's a change almost anywhere in LLVM.
-
Felipe de Azevedo Piovezan authored
This commit splits a function that both parses MD nodes from YAML into DI{Expr,Loc,Variable} objects AND adds an entry to the MF variable table, so that each of those jobs is done separately. It will enable subsequent patches to reuse the MD node parsing code. Differential Revision: https://reviews.llvm.org/D149870 -
Valentin Clement authored
This patch lowers the data clause on the OpenACC compute construct to their corresponding acc data operand operation. The decomposition is the same as in D149673. Note that `private` and `firstprivate` are not lowered to data operand operation as they do not have one and will likely have dedicated design/process. Depends on D149673 Reviewed By: razvanlupusoru, jeanPerier Differential Revision: https://reviews.llvm.org/D149785
-
Florian Hahn authored
Update the HCFG builder to directly connect the created CFG to the existing Plan's entry. This allows removing `setEntry`, which can cause leaks when the existing entry is replaced. Should fix https://lab.llvm.org/buildbot/#/builders/5/builds/33455/steps/13/logs/stdio
-
Mehdi Amini authored
When tooling out there produces a reproducer that is archived, the first thing a user is likely to expect is to process this as they do with any MLIR file. However https://reviews.llvm.org/D126447 changed the behavior of mlir-opt to eliminate the `--run-reproducer` option and instead automatically run it when present in the input file. This creates a discrepancy in how mlir-opt behaves when fed with an input file, and is surprising for users. The explicit passing of `--run-reproducer` to express user-intent seems more in line with what is expected from `mlir-opt`. Reviewed By: rriddle, jpienaar Differential Revision: https://reviews.llvm.org/D149820
-
Shafik Yaghmour authored
Prior to P2448R2 we were more aggressive in diagnosing ill-formed constexpr functions. Many of these restrictions were relaxed and now it is not required for defaulted comparison operators to call constexpr functions. This behavior is extended to before C++23 and diagnostic for it's use can be enabled w/ -pedantic or -Wc++2b-default-comp-relaxed-constexpr This fixes: https://github.com/llvm/llvm-project/issues/61238 Differential Revision: https://reviews.llvm.org/D146090
-
Dave Lee authored
Last use removed in f7420453e80b9294273009efcebaceac2383269e.
-
Mark de Wever authored
D149553 changes the name of the LangOptions member. This change allows libc++ to work with either name. Reviewed By: philnik, #libc Differential Revision: https://reviews.llvm.org/D149554
-
Valentin Clement authored
This patch lowers the data clause on the OpenACC data construct to their corresponding acc data operand operation. The copy clause is decomposed into acc.copyin before and acc.copyout after the acc.data operation. The copyout close is decomposed into acc.create before and acc.copyout after the acc.data operation. The attach clause is decomposed into acc.attach before and acc.detach after the acc.data operation. Depends on D149601 Reviewed By: jeanPerier Differential Revision: https://reviews.llvm.org/D149673
-
Jon Chesterfield authored
Will be necessary for correct locking on volta. API-only change to help with rebasing the rest of the stack on this. Reviewed By: jhuber6 Differential Revision: https://reviews.llvm.org/D149871
-
Amir Ayupov authored
Dumping jump table and tail call fdata is covered by subsequent iteration over successors. Reviewed By: #bolt, maksfb Differential Revision: https://reviews.llvm.org/D149799
-
Peiming Liu authored
Reviewed By: aartbik, vzakhari Differential Revision: https://reviews.llvm.org/D149874
-
Mark de Wever authored
During the ISO C++ Committee meeting plenary session the C++23 Standard has been voted as technical complete. This updates the reference to c++2b to c++23 and updates the __cplusplus macro. Drive-by fixes c++1z -> c++17 and c++2a -> c++20 when seen. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D149553
-
David Stone authored
Sema.h is huge. This makes a small reduction to it by moving EnterExpressionEvaluationContext into a new header, since it is an independent component. Differential Revision: https://reviews.llvm.org/D149796
-
Alexey Lapshin authored
This addresses the issue found by: https://lab.llvm.org/buildbot#builders/178/builds/4571
-
Alexey Bataev authored
insts. If the vectorizable GEP node is built, which should not be scheduled, and at least one node is a non-gep instruction, need to insert the vectorized instructions before the last instruction in the list, not before the first one, otherwise the instructions may be emitted in the wrong order.
-
Fangrui Song authored
The AOK_SizeDirective part from 5b37c181 (2014-08) seems unneeded nowadays (the root cause has likely been fixed elsewhere). The part abuses that `call dword ptr foo` assembles the same way as `call foo` in Intel syntax, which is going to be fixed (changed) by D149579. The generated object files for CodeGen/ms-inline-asm{,-functions,-variables,-static-variable}.c and CodeGenCXX/ms-inline-asm-fields.cpp are unchanged (-mno-incremental-linker-compatible) with just this patch. When D149579 is subsequently applied, the FIXME part of `kptr` in CodeGen/ms-inline-asm-functions.c will be fixed. Differential Revision: https://reviews.llvm.org/D149695
-
Teresa Johnson authored
This reverts commit bfe72059, and follow on fix e3e6bc69, due to some remaining instability exposed by the bot enabling expensive checks: https://lab.llvm.org/buildbot/#/builders/42/builds/9842
-
Valentin Clement authored
Add support to lower data exit operations and use it for the copyout, detach and delete clause on the `!$acc exit data` construct. This patch refactor the data entry op creation so most part of the code can be shared with the data exit op. Reviewed By: jeanPerier Differential Revision: https://reviews.llvm.org/D149601
-
Mehdi Amini authored
-
Nikolas Klauser authored
All the used OpenMP pragmas are available with OpenMP 4.0, so they can all share a single conditional block. Reviewed By: ldionne, #libc Spies: yaxunl, sstefan1, guansong, jplehr, libcxx-commits, sunshaoce Differential Revision: https://reviews.llvm.org/D149603
-
Fangrui Song authored
The asm in a naked function may reasonably expect the argument registers and the return address register (if present) to be live. When using -pg and -finstrument-functions, functions are instrumented by adding a function call to `_mcount/__cyg_profile_func_enter/__cyg_profile_func_enter_bare`/etc, which will clobber these registers. If the return address register is clobbered, the function will be unable to return to the caller, possibly causing an infinite loop. ``` __attribute__((naked)) void g() { #if defined(__arm__) __asm__("bx lr"); #else __asm__("ret"); #endif } int main() { g(); } ``` It seems that the only one reasonable way to handle the combination is to disable instrumenting for naked functions. GCC PR: https://gcc.gnu.org/PR109707 Close https://github.com/llvm/llvm-project/issues/62504 Reviewed By: hans Differential Revision: https://reviews.llvm.org/D149721 -
Slava Zakharin authored
hlfir.assign, in general, ends up calling the Assign runtime that asserts that the types of LHS and RHS match. In case of implicit logical<->integer conversions (allowed as an extension) the operands of hlfir.assign have non-matching types. This change makes sure that the lowering produces explicit type cast (either as a scalar fir.convert or as a hlfir.elemental producing array expression). Reviewed By: jeanPerier Differential Revision: https://reviews.llvm.org/D149765
-
Peiming Liu authored
This addressed some unresolved comments in https://reviews.llvm.org/D142930 Reviewed By: aartbik, wrengr Differential Revision: https://reviews.llvm.org/D148565
-
Nikolas Klauser authored
Reviewed By: ldionne, #libc Spies: sstefan1, jplehr, libcxx-commits, miyuki Differential Revision: https://reviews.llvm.org/D149787
-
- May 04, 2023
-
-
Akash Banerjee authored
This patch migrates the MapCombinedInfoTy from Clang codegen to OpenMPIRBuilder. Differential Revision: https://reviews.llvm.org/D149666
-
Florian Hahn authored
Fix a leak introduced in b85a402d and flagged by LSan https://lab.llvm.org/buildbot#builders/5/builds/33452
-
Joseph Huber authored
Now that a large amount of GPU tests can be run in parallel, we should document spurious failures. It is a well-known issue that launching many GPU applications in parallel can lead to various problems, the worst of which being an indefinite hang. Differential Revision: https://reviews.llvm.org/D149857
-
Siyuan Zhu authored
Partially `fix` https://github.com/llvm/llvm-project/issues/62441. Extend isImpliedCondOperands() to handle ugt/uge and sgt/sge predicates. alive2 proof: https://alive2.llvm.org/ce/z/jLFDAv and https://alive2.llvm.org/ce/z/Z8idUd Differential Revision: https://reviews.llvm.org/D149510
-
Siyuan Zhu authored
ugt/uge/sgt/sge test for the extension to isImpliedCondOperands case from issue 62441 and 61393: (X >> Z) <=(u) Y ==> X <=(to u) Y and (X > Y +_{nuw} 1) ==> X != Y Differential Revision: https://reviews.llvm.org/D149512 -
Alvin Wong authored
Depends on D149002 Differential Revision: https://reviews.llvm.org/D149346
-
Alvin Wong authored
Add a callback from interception to allow asan on Windows to produce better error messages. If an unrecoverable error occured when intercepting functions, print a message before terminating. Additionally, when encountering unknown instructions, a more helpful message containing the address and the bytes of the unknown instruction is now printed to help identify the issue and make it easier to propose a fix. Depends on D149549 Differential Revision: https://reviews.llvm.org/D149002
-
Alvin Wong authored
Do not treat unknown instructions as a fatal error. In most cases, failure to intercept a function is reported by the caller, though requires setting verbosity to 1 or higher to be visible. Better error message reporting for asan will be added in a separate patch. Differential Revision: https://reviews.llvm.org/D149549
-
Alvin Wong authored
The i686-w64-windows-gnu target does not use SEH (which MSVC uses), but DWARF-2 exception handling or possibly sjlj depending on the toolchain build options. On this target we have to actually intercept functions in libc++ and libunwind which handles throwing exceptions. This fixes the `TestCases/intercept-rethrow-exception.cpp` test. The x86_64-w64-windows-gnu target already works because it uses SEH which is handled by intercepting RaiseException, so this change does not affect x86_64. Depends on https://reviews.llvm.org/D148990 Differential Revision: https://reviews.llvm.org/D148991
-
Alvin Wong authored
These assembly patterns are needed to intercept some libc++ and libunwind functions built by Clang for i686-w64-windows-gnu target. Differential Revision: https://reviews.llvm.org/D148990
-
Louis Dionne authored
Differential Revision: https://reviews.llvm.org/D149696
-
Teresa Johnson authored
Follow up to bfe72059 to require asserts which is needed for the use of -stats. This showed up in the following bot failure: https://lab.llvm.org/buildbot/#/builders/91/builds/16760
-
Yeting Kuo authored
The patch makes visitFSUBForFMACombine serve vp.fsub too. It helps DAGCombiner to fuse vp.fsub and vp.fmul patterns to vp.fma. Reviewed By: luke Differential Revision: https://reviews.llvm.org/D149821
-
Aaron Ballman authored
This also fixes a missing close li tag as a drive-by
-