- Nov 04, 2020
-
-
Sebastian Neubauer authored
Previously, the default value for ieee mode was - on for compute kernels and compute shaders, - off for all shaders except compute shaders. This commit changes the default to be - on for compute kernels, - off for shaders. This aligns the default value with the settings that are actually in use. To my knowledge, all users of shader calling conventions (mesa and llpc) disable the ieee mode by default. Differential Revision: https://reviews.llvm.org/D89388
-
Vitaly Buka authored
Unrelated system warnings may confuse "check 0"
-
Andrzej Warzynski authored
Failing buildbot: http://lab.llvm.org:8011/#/builders/33/builds/478 Patch that introduced the breaking change: https://reviews.llvm.org/D90667
-
Stefan Gränitz authored
Oneshot temporary labels for declaring function size can be omitted. Follow-up from D90331. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D90676
-
Qiu Chaofan authored
Since glibc has supported math library functions conforming IEEE 128-bit floating point types on some platform (like ppc64le), we can fix clang's math builtins missing this type. Reviewed By: bkramer Differential Revision: https://reviews.llvm.org/D90593
-
Clement Courbet authored
This is needed to benchmark instruction that touch EFLAGS (e.g. STD: set direction flag). Differential Revision: https://reviews.llvm.org/D90742
-
Kadir Cetinkaya authored
This will enable some fragments to apply their features selectively. Depends on D90270. Differential Revision: https://reviews.llvm.org/D90455
-
Pavel Labath authored
This class and it's surroundings contain a lot of shady code, but as far as I can tell all of that code is unreachable (there is no code actually setting the value to eValueTypeVector). According to history this class was introduced in 2012 in r167033/0665a0f0. At that time, the code seemed to serve some purpose, and it had two entry points (in Value::SetContext and ClangExpressionDeclMap::LookupDecl). The first entry point was deleted in D17897 and the second one in r179842/44342735. The stated purpose of the patch introducing this class was to fix TestRegisters.py, and "expr $xmm0" in particular. Both of these things function perfectly well these days without this class.
-
Vitaly Buka authored
-
Clement Courbet authored
-
David Green authored
-
Vitaly Buka authored
Warning should be fixed with d48f2d7c
-
Vy Nguyen authored
Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D90720
-
Sander de Smalen authored
This patch replaces the AArch64StackOffset class by the generic one defined in TypeSize.h. Reviewed By: david-arm Differential Revision: https://reviews.llvm.org/D88983
-
Clement Courbet authored
The X86 exegesis target is never executed run on non-X86 hosts, disable X86 instrinsic code on non-X86 targets. This reverts commit 8cfc8721.
-
Alex Zinenko authored
When the "after" region of a WhileOp is merely forwarding its arguments back to the "before" region, i.e. WhileOp is a canonical do-while loop, a simpler CFG subgraph that omits the "after" region with its extra branch operation can be produced. Loop rotation from general "while" to "if { do-while }" is left for a future canonicalization pattern when it becomes necessary. Differential Revision: https://reviews.llvm.org/D90604 -
Alex Zinenko authored
The lowering is a straightforward inlining of the "before" and "after" regions connected by (conditional) branches. This plugs the WhileOp into the progressive lowering scheme. Future commits may choose to target WhileOp instead of CFG when lowering ForOp. Differential Revision: https://reviews.llvm.org/D90603
-
Alex Zinenko authored
The new construct represents a generic loop with two regions: one executed before the loop condition is verifier and another after that. This construct can be used to express both a "while" loop and a "do-while" loop, depending on where the main payload is located. It is intended as an intermediate abstraction for lowering, which will be added later. This form is relatively easy to target from higher-level abstractions and supports transformations such as loop rotation and LICM. Differential Revision: https://reviews.llvm.org/D90255
-
Nathan Ridge authored
This is needed to implement call hierarchy. Differential Revision: https://reviews.llvm.org/D89670
-
Praveen G authored
Add the semantic checks for the OpenMP 4.5 - 2.15.4.1 copyin clause. Resolve OpenMPThreadprivate directive since the list of items specified in copyin clause should be threadprivate. Test cases : omp-copyin01.f90, omp-copyin02.f90, omp-copyin03.f90, omp-copyin04.f90, omp-copyin05.f90 Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D89385 -
Fangrui Song authored
This functions appear to be unused for many years.
-
Clement Courbet authored
Still issues on some architectures. This reverts commit fd13d7ce.
-
Clement Courbet authored
Use `__builtin_ia32_fxsave64` under __GNUC__, (_fxsave64) does not exist in old versions of gcc (pre-9.1). This reverts commit e128f9ca.
-
Stella Laurenzo authored
* All functions that return an Operation now return an OpView. * All functions that accept an Operation now accept an _OperationBase, which both Operation and OpView extend and can resolve to the backing Operation. * Moves user-facing instance methods from Operation -> _OperationBase so that both can have the same API. * Concretely, this means that if there are custom op classes defined (i.e. in Python), any iteration or creation will return the appropriate instance (i.e. if you get/create an std.addf, you will get an instance of the mlir.dialects.std.AddFOp class, getting full access to any custom API it exposes). * Refactors all __eq__ methods after realizing the proper way to do this for _OperationBase. Differential Revision: https://reviews.llvm.org/D90584
-
Stella Laurenzo authored
* For C, this needs to be inline static like the others. Differential Revision: https://reviews.llvm.org/D90740
-
Martin Storsjö authored
This reverts commit 59b22e49. That commit broke building for ARM and AArch64, reproducible like this: $ cat apedec-reduced.c a; b(e) { int c; unsigned d = f(); c = d >> 32 - e; return c; } g() { int h = i(); if (a) h = h << a | b(a); return h; } $ clang -target aarch64-linux-gnu -w -c -O3 apedec-reduced.c clang: ../lib/Transforms/InstCombine/InstructionCombining.cpp:3656: bool llvm::InstCombinerImpl::run(): Assertion `DT.dominates(BB, UserParent) && "Dominance relation broken?"' failed. Same thing for e.g. an armv7-linux-gnueabihf target.
-
Mehdi Amini authored
This is useful in C source files where it is easy for a typo to be silently assumed by the compiler to be an implicit declaration. Differential Revision: https://reviews.llvm.org/D90727
-
Mehdi Amini authored
This delegate the control of the buffering to the user of the API. This seems like a safer option as messages are immediately propagated to the user, which may lead to less surprising behavior during debugging for instance. In terms of performance, a user can add a buffered stream on the other side of the callback. Differential Revision: https://reviews.llvm.org/D90726
-
Mehdi Amini authored
This is exposing the basic functionalities (create, nest, addPass, run) of the PassManager through the C API in the new header: `include/mlir-c/Pass.h`. In order to exercise it in the unit-test, a basic TableGen backend is also provided to generate a simple C wrapper around the pass constructor. It is used to expose the libTransforms passes to the C API. Reviewed By: stellaraccident, ftynse Differential Revision: https://reviews.llvm.org/D90667
-
Arthur Eubanks authored
Reviewed By: asbirlea Differential Revision: https://reviews.llvm.org/D90207
-
Craig Topper authored
We should be able to map this to fsri with adjustment of the immediate.
-
Xiang1 Zhang authored
Reviewed By: thanm, clin1 Differential Revision: https://reviews.llvm.org/D86673
-
Michael Liao authored
- Basically iterate each pair of memory operands from both instructions and return true if any of them may alias. - The exception are memory instructions without any memory operand. They may touch everything and could alias to any memory instruction. Differential Revision: https://reviews.llvm.org/D89447
-
Nathan James authored
This enables using the arrow operator to access members of the contained item. ```lang=c++ Located<std::string> X; const char* CStr = X->c_str(); ``` This is inline with how classes like `Optional` handle the arrow operator. Reviewed By: kadircet Differential Revision: https://reviews.llvm.org/D90682
-
Gaurav Jain authored
Differential Revision: https://reviews.llvm.org/D90725
-
Amara Emerson authored
For the <2 x float> case, instead of adding another combine or legalization to get it into a <4 x float> form, I'm just adding a GISel specific selection pattern to cover it. Differential Revision: https://reviews.llvm.org/D90699
-
Rahul Joshi authored
- Verify that attributes parsed using a custom parser do not have duplicates. - If there are duplicated in the attribute dictionary in the input, they get caught during the dictionary parsing. - This check verifies that there is no duplication between the parsed dictionary and any attributes that might be added by the custom parser (or when the custom parsing code adds duplicate attributes). - Fixes https://bugs.llvm.org/show_bug.cgi?id=48025 Differential Revision: https://reviews.llvm.org/D90502
-
peter klausler authored
Add explicit member initializers to the declarations of some constexpr values added in a recent patch to avoid an apparent problem with gcc 8.2.0 with default initializers. Differential revision: https://reviews.llvm.org/D90696
-
mikeurbach authored
Previously, they were only defined for `FuncOp`. To support this, `FunctionLike` needs a way to get an updated type from the concrete operation. This adds a new hook for that purpose, called `getTypeWithoutArgsAndResults`. For now, `FunctionLike` continues to assume the type is `FunctionType`, and concrete operations that use another type can hide the `getType`, `setType`, and `getTypeWithoutArgsAndResults` methods. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D90363
-
Siva Chandra Reddy authored
-