- Jun 29, 2021
-
-
Arthur O'Dwyer authored
With the STL containers, I didn't enable move operations in C++03 mode because that would change the overload resolution for things that today are copy operations. With iostreams, though, the copy operations aren't present at all, and so I see no problem with enabling move operations even in (Clang's greatly extended) C++03 mode. Clang's C++03 mode does not support delegating constructors. Differential Revision: https://reviews.llvm.org/D104310
-
Stephan Herhut authored
This reverts commit 7d6e589f. Windows build was unbroken.
-
Anirudh Prasad authored
- In the caller of the overridden `parseStatement` function (i.e. the `AsmParser::Run()`) in the case of an error **and** if we're not at the start of the statement, we "eat" up until the end of the current statement, so we don't have to process it again. - However, in the HLASMAsmParser class what's happening is that, if an error occurs at the very start of the statement (for example, you invoke the HLASMAsmParser to parse a gnu directive), we will error out, but we never really progress in terms of the next token in the statement to parse. We simply keep looping processing the same error over and over again (partly because we're at the start of the statement) - To remedy this, when the `parseAsHLASMLabel` function fails, before returning, we "eat" until the end of the statement function, so we don't process it anymore. Reviewed By: uweigand Differential Revision: https://reviews.llvm.org/D104869
-
Sjoerd Meijer authored
This reverts commit 51e434fc because of a build bot failure in test-suite::GCC-C-execute-pr60960.test that I need to investigate.
-
Sjoerd Meijer authored
-
Melanie Blower authored
This reverts commit 4f1238e4. Buildbot fails on predecessor patch
-
Melanie Blower authored
Revert "[clang][PATCH][nfc] Refactor TargetInfo::adjust to pass DiagnosticsEngine to allow diagnostics on target-unsupported options" This reverts commit 2c02b0c3. buildbot fails
-
Arnold Schwaighofer authored
There is a constraint that coro.suspend instructions need to be in their own blocks. The coro split pass initially creates IR that obeys this constraint (which is later checked). Sinking rematerializable instructions into these blocks breaks that constraint. Instead rematerialize in the predecessor block to the suspend's single predecessor block. Differential Revision: https://reviews.llvm.org/D104051
-
LLVM GN Syncbot authored
-
Melanie Blower authored
This patch adds a new clang builtin, __arithmetic_fence. The purpose of the builtin is to provide the user fine control, at the expression level, over floating point optimization when -ffast-math (-ffp-model=fast) is enabled. The builtin prevents the optimizer from rearranging floating point expression evaluation. The new option fprotect-parens has the same effect on parenthesized expressions, forcing the optimizer to respect the parentheses. Reviewed By: aaron.ballman, kpn Differential Revision: https://reviews.llvm.org/D100118
-
Melanie Blower authored
[clang][PATCH][nfc] Refactor TargetInfo::adjust to pass DiagnosticsEngine to allow diagnostics on target-unsupported options Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D104729
-
Melanie Blower authored
[llvm][clang][fpenv] Create new intrinsic llvm.arith.fence to control FP optimization at expression level This intrinsic blocks floating point transformations by the optimizer. Author: Pengfei Reviewed By: LuoYuanke, Andy Kaylor, Craig Topper, kpn Differential Revision: https://reviews.llvm.org/D99675
-
Louis Dionne authored
Differential Revision: https://reviews.llvm.org/D104669
-
William S. Moses authored
MemRefDataFlow performs mem2reg style operations for affine load/stores. Unfortunately, it is not presently correct in the presence of external operations such as memref.cast, or function calls. This diff extends the functionality of the pass to remain correct in the presence of such ops. Differential Revision: https://reviews.llvm.org/D104053
-
Stephan Herhut authored
Gate the include of alloca.h behind _WIN32 guard. Differential Revision: https://reviews.llvm.org/D105036
-
Stefan Pintilie authored
Added the option `-altivec-src-compat=[mixed,gcc,xl]`. The default at this time is `mixed`. The default behavior for clang is for all vector compares to return a scalar unless the vectors being compared are vector bool or vector pixel. In that case the compare returns a vector. With the gcc case all vector compares return vectors and in the xl case all vector compares return scalars. This patch does not change the default behavior of clang. This option will be used in future patches to implement behaviour compatibility for the vector bool/pixel types. Reviewed By: bmahjour Differential Revision: https://reviews.llvm.org/D103615
-
William S. Moses authored
A canonicalization accidentally will remove a memref allocation if it is only stored into. However, this is incorrect if the allocation is the value being stored, not the allocation being stored into. Differential Revision: https://reviews.llvm.org/D104947
-
- Jun 28, 2021
-
-
Jay Foad authored
This is just for consistency with all other instruction multiclasses that pass around pseudo names as arguments.
-
Nico Weber authored
This reverts commit 6f3b775c. Test fails flakily, see comments on https://reviews.llvm.org/D103967 Also revert follow-up "[Analyzer] Attempt to fix windows bots test failure b/c of new-line" This reverts commit fe0e861a.
-
Nico Weber authored
This reverts commit adace796. Still breaks things, see comment on https://reviews.llvm.org/D91722
-
David Spickett authored
Previously xscale was known to everything apart from the ELF streamer so we would crash as soon as you tried to output an object file. Reviewed By: nickdesaulniers Differential Revision: https://reviews.llvm.org/D104776
-
Florian Hahn authored
Precommit test case for a change to GetIndexDifference in D99424.
-
naromero77 authored
Updated Fortran LLVM Test-suite docs to reflect latest changes. Reviewed By: Meinersbur, xgupta Differential Revision: https://reviews.llvm.org/D104961
-
William S. Moses authored
Given a select that returns the logical negation of the condition, replace it with a not of the condition. Differential Revision: https://reviews.llvm.org/D104966
-
Stefan Gränitz authored
The underlying TargetProcessControl API changes with D104694. Once it landed I can patch and re-enable the example.
-
Jacques Pienaar authored
This reverts commit e9396449. Breaks Windows build.
-
Zarko Todorovski authored
On AIX the alignment implementation has the storage aligned to the preferred alignment instead of the alignment of a type. Macro guard these tests for AIX and have them pass when the "reference alignment" is less than or equal to the alignment observed. In other words, the alignment applied is at least as strict as the required alignment. Reviewed By: hubert.reinterpretcast Differential Revision: https://reviews.llvm.org/D104786
-
Sander de Smalen authored
This patch relands https://reviews.llvm.org/D104454, but fixes some failing builds on Mac OS which apparently has a different definition for size_t, that caused 'ambiguous operator overload' for the implicit conversion of TypeSize to a scalar value. This reverts commit b732e6c9.
-
Ahsan Saghir authored
Peephole optimizer should not be introducing sub-reg definitions as they are illegal in machine SSA phase. This patch modifies the optimizer to not emit sub-register definitions. Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D103408
-
Bradley Smith authored
This helps remove extra comparisons when generating masks for fixed length masked operations. Differential Revision: https://reviews.llvm.org/D104910
-
Jonathan Crowther authored
In typeinfo there is a reinterpret_cast between a uintptr_t and size_t. These are two integer types and therefore a reinterpret_cast is not right for this situation. It looks like it may have been copied and pasted from above in the file. An implicit cast works in it's place. Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D104814
-
Reshabh Sharma authored
Compiler crashes at an assertion while casting operands to PtrToIntInst at some cases when ptrtoint is present as an explicit operand to inttoptr. Explicit instruction operator as operand can not be casted to an Instruction. This patch replaces cast from PtrToInst to Operator which are later checked for constant expressions. Differential Revision: https://reviews.llvm.org/D105002
-
Joseph Huber authored
-
Gabor Marton authored
-
Ben Shi authored
Reviewed By: dylanmckay Differential Revision: https://reviews.llvm.org/D99239
-
Joseph Huber authored
-
Brendon Cahoon authored
Adds legalizer, register bank select, and instruction select support for G_SBFX and G_UBFX. These opcodes generate scalar or vector ALU bitfield extract instructions for AMDGPU. The instructions allow both constant or register values for the offset and width operands. The 32-bit scalar version is expanded to a sequence that combines the offset and width into a single register. There are no 64-bit vgpr bitfield extract instructions, so the operations are expanded to a sequence of instructions that implement the operation. If the width is a constant, then the 32-bit bitfield extract instructions are used. Moved the AArch64 specific code for creating G_SBFX to CombinerHelper.cpp so that it can be used by other targets. Only bitfield extracts with constant offset and width values are handled currently. Differential Revision: https://reviews.llvm.org/D100149
-
Corentin Jabot authored
Partially implement P0315R4. This patch allow lambda in unevaluated context. It does not implement temp.deduct/9.
-
Lucas Prates authored
-
Stephan Herhut authored
This lowering uses a library call to implement copying in the general case, i.e., supporting arbitrary rank and strided layouts.
-