Commit
e0b1df924ae06d6d88582334087d2eacc6702e8f
by bjoern[clang-format] Fix AlignConsecutiveDeclarations handling of pointers
This is a bug fix of https://bugs.llvm.org/show_bug.cgi?id=49175
The expected code format:
unsigned int* a; int* b; unsigned int Const* c;
The actual code after formatting (without this patch):
unsigned int* a; int* b; unsigned int Const* c;
Differential Revision: https://reviews.llvm.org/D97137
|
 | clang/lib/Format/WhitespaceManager.cpp |
 | clang/unittests/Format/FormatTest.cpp |
Commit
0223ab035c199e537a0040857ba147ced87fd533
by gkm[lld-macho] check minimum header length when opening linkable input files
Bifurcate the `readFile()` API into ... * `readRawFile()` which performs no checks, and * `readLinkableFile()` which enforces minimum length of 20 bytes, same as ld64
There are no new tests because tweaks to existing tests are sufficient.
Differential Revision: https://reviews.llvm.org/D97610
|
 | lld/MachO/Driver.cpp |
 | lld/test/MachO/rename.s |
 | lld/MachO/InputFiles.cpp |
 | lld/test/MachO/invalid/tiny-input.s |
 | lld/MachO/DriverUtils.cpp |
 | lld/MachO/InputFiles.h |
Commit
c6765a4cf194885af4e29466059b2beaacdba904
by craig.topper[X86] Add back SSE check prefix for vec-umulo.ll. Regenerate vec-smulo.ll. NFC
Simon modified the check prefixes in these tests while D97160 was pending review. When D97160 was commited it wasn't updated it merge cleanly, but didn't comprehend the check prefix changes.
|
 | llvm/test/CodeGen/X86/vec_smulo.ll |
 | llvm/test/CodeGen/X86/vec_umulo.ll |
Commit
5867c18e2c0d403b51a594897d56d935286748e4
by stellaraccident[mlir][linalg] Generate additional interfaces for named ops.
* Adds ContractionOpInterface to polymorphic_matmul.
Differential Revision: https://reviews.llvm.org/D97601
|
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml |
 | mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp |
Commit
2ceedc3a201386c6cbbcea5cec3f5e01d04f6445
by stellaraccident[mlir][linalg] Add symbolic type conversion to linalg named ops.
This enables this kind of construct in the DSL to generate a named op that is polymorphic over numeric type variables `T` and `U`, generating the correct arithmetic casts at construction time:
``` @tc_def_op def polymorphic_matmul(A=TensorDef(T1, S.M, S.K), B=TensorDef(T2, S.K, S.N), C=TensorDef(U, S.M, S.N, output=True)): implements(ContractionOpInterface) C[D.m, D.n] += cast(U, A[D.m, D.k]) * cast(U, B[D.k, D.n]) ```
Presently, this only supports type variables that are bound to the element type of one of the arguments, although a further extension that allows binding a type variable to an attribute would allow some more expressiveness and may be useful for some formulations. This is left to a future patch. In addition, this patch does not yet materialize the verifier support which ensures that types are bound correctly (for such simple examples, failing to do so will yield IR that fails verification, it just won't yet fail with a precise error).
Note that the full grid of extensions/truncation/int<->float conversions are supported, but many of them are lossy and higher level code needs to be mindful of numerics (it is not the job of this level).
As-is, this should be sufficient for most integer matmul scenarios we work with in typical quantization schemes.
Differential Revision: https://reviews.llvm.org/D97603
|
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml |
 | mlir/test/Dialect/Linalg/generalize-named-polymorphic-ops.mlir |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp |
Commit
769cd20bdbc00430b7e24ce248b1967d8f14319f
by stellaraccidentNFC: Adds labels to a linalg test and extend a missing case.
|
 | mlir/test/Dialect/Linalg/generalize-named-polymorphic-ops.mlir |