SuccessChanges

Summary

  1. [OpenMP] Fixed the test environment when building along with LLVM (details)
  2. [OpenMP] Fixed an issue that wrong LLVM headers might be included when building libomptarget (details)
  3. [libc] Add implementation of fmaf. (details)
  4. [mlir][ODS] Rename several uses of 'description' to 'summary' (details)
  5. [mlir][ODS] Fix the use of cppClassName in Type constraints for TypeDefs (details)
  6. [mlir] Add hoisting transformation for transfer ops on tensor (details)
  7. [OpenMP] Use c_int/c_size_t in Fortran target memory routine interface (details)
Commit e2a623094f6bc1b01f9661043b3df908ca1bd037 by tianshilei1992
[OpenMP] Fixed the test environment when building along with LLVM

Currently all built libraries in OpenMP are anywhere if building along
with LLVM. It is not an issue if we don't execute any test. However, almost all
tests for `libomptarget` fails because in the lit configuration, we only set
`<build_dir>/libomptarget` to `LD_LIBRARY_PATH` and `LIBRARY_PATH`. Since those
libraries are everywhere, `clang` can no longer find `libomptarget.so` or those
deviceRTLs anymore.

In this patch, we set a unified path for all built libraries, no matter whether
it is built along with LLVM or not. In this way, our lit configuration can work
propoerly.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D93736
The file was modifiedopenmp/libomptarget/src/CMakeLists.txt
The file was modifiedopenmp/libomptarget/CMakeLists.txt
Commit 5acdae1f9a772e16850b0ee9648d79a7c3becf23 by tianshilei1992
[OpenMP] Fixed an issue that wrong LLVM headers might be included when building libomptarget

Wrong LLVM headers might be included if we don't set `include_directories`
to a right place. This will cause a compilation error if LLVM is installed in
system directories.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D93737
The file was modifiedopenmp/libomptarget/src/CMakeLists.txt
Commit 4726bec8f29bd535e2709b491d223d42bd20c120 by lntue
[libc] Add implementation of fmaf.

Differential Revision: https://reviews.llvm.org/D94018
The file was modifiedlibc/config/linux/x86_64/entrypoints.txt
The file was addedlibc/src/math/fmaf.h
The file was addedlibc/test/src/math/FmaTest.h
The file was addedlibc/test/src/math/fmaf_test.cpp
The file was modifiedlibc/test/src/math/CMakeLists.txt
The file was modifiedlibc/utils/FPUtil/FPBits.h
The file was modifiedlibc/utils/MPFRWrapper/MPFRUtils.cpp
The file was modifiedlibc/spec/stdc.td
The file was modifiedlibc/utils/MPFRWrapper/MPFRUtils.h
The file was addedlibc/src/math/fmaf.cpp
The file was modifiedlibc/src/math/CMakeLists.txt
The file was modifiedlibc/config/linux/aarch64/entrypoints.txt
Commit e0a93e4b65b63b0ae0fbde826790dc1728789fab by riddleriver
[mlir][ODS] Rename several uses of 'description' to 'summary'

Right now constraint/predicate traits/etc. use their "description" field as a one line human readable string. This breaks the current convention, by which a "description" may be multi-line. This revision renames the "description" field in these cases to "summary" which matches what the string is actually used as. This also unbreaks the use of TypeDefs(and eventually AttrDefs) in conjunction with existing type constraint facilities like `Optional`.

Differential Revision: https://reviews.llvm.org/D94133
The file was modifiedmlir/lib/TableGen/Constraint.cpp
The file was modifiedmlir/lib/TableGen/OpTrait.cpp
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp
The file was modifiedmlir/include/mlir/TableGen/Type.h
The file was modifiedmlir/tools/mlir-tblgen/OpDocGen.cpp
The file was modifiedmlir/lib/TableGen/TypeDef.cpp
The file was modifiedmlir/test/mlir-tblgen/op-attribute.td
The file was modifiedmlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
The file was modifiedmlir/lib/TableGen/Type.cpp
The file was modifiedmlir/include/mlir/Dialect/ArmSVE/ArmSVE.td
The file was modifiedmlir/include/mlir/Dialect/Quant/QuantOpsBase.td
The file was modifiedmlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeBase.td
The file was modifiedmlir/docs/OpDefinitions.md
The file was modifiedmlir/include/mlir/TableGen/Constraint.h
The file was modifiedmlir/include/mlir/IR/OpBase.td
The file was modifiedmlir/tools/mlir-tblgen/OpFormatGen.cpp
The file was modifiedmlir/include/mlir/TableGen/TypeDef.h
The file was modifiedmlir/include/mlir/Dialect/Async/IR/AsyncBase.td
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
The file was modifiedmlir/include/mlir/TableGen/OpTrait.h
The file was modifiedmlir/tools/mlir-tblgen/EnumsGen.cpp
The file was modifiedmlir/unittests/TableGen/structs.td
The file was modifiedmlir/tools/mlir-tblgen/StructsGen.cpp
Commit c42cee0c64fe20235123ba44aac12d7e38117a7e by riddleriver
[mlir][ODS] Fix the use of cppClassName in Type constraints for TypeDefs

This field is currently being used to mean "Fully resolved class name", which breaks the usage by TypeDefs. This revision prefixes the name with the dialect namespace when necessary.

Differential Revision: https://reviews.llvm.org/D94192
The file was modifiedmlir/include/mlir/IR/OpBase.td
The file was modifiedmlir/test/mlir-tblgen/op-decl.td
The file was modifiedmlir/lib/TableGen/Type.cpp
The file was modifiedmlir/include/mlir/TableGen/Type.h
Commit efd05040e13e942a4fbb79eb798fb9833e319b51 by thomasraoux
[mlir] Add hoisting transformation for transfer ops on tensor

Add same hoisting transformation existing for transfer ops on buffers for
transfer_ops on tensor. The logic is significantly different so this is done as
a separate transformation and it is expect that user would know which
transformation to use based on the flow.

Differential Revision: https://reviews.llvm.org/D94115
The file was modifiedmlir/test/lib/Transforms/TestLinalgHoisting.cpp
The file was modifiedmlir/test/Dialect/Linalg/hoisting.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorUtils.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h
The file was modifiedmlir/lib/Dialect/Vector/VectorUtils.cpp
Commit fb1c52852690cb6ad6f7f2a7b5c35bf4d0c56e44 by hansang.bae
[OpenMP] Use c_int/c_size_t in Fortran target memory routine interface

The Fortran interface is now in line with 5.1 specification.

Differential Revision: https://reviews.llvm.org/D94042
The file was modifiedopenmp/runtime/src/include/omp_lib.f90.var
The file was modifiedopenmp/runtime/src/include/omp_lib.h.var