SuccessChanges

Summary

  1. [OpenMP][Docs] Add remarks intro section (details)
  2. [OpenMP][Fix] Make the arch selector for x86_64 work (details)
  3. [OpenMP][FIX] Ensure the isa trait is evaluated last (details)
  4. [clang] Change builtin object size when subobject is invalid (details)
  5. [OpenMP][Docs] Mark finished features as done (details)
  6. [llvm-pdbutil] Don't crash when printing unknown CodeView type records (details)
  7. [mlir] Adds argument attributes for using LLVM's sret and byval attributes (details)
Commit 9ae171bcd38cdefa64c9dd5d763d16007eebcd0d by johannes
[OpenMP][Docs] Add remarks intro section

Reviewed By: jhuber6

Differential Revision: https://reviews.llvm.org/D93735
The file was modifiedopenmp/docs/remarks/OptimizationRemarks.rst
Commit d970a285b8567b93aea39e7e4d10965fe8b7340c by johannes
[OpenMP][Fix] Make the arch selector for x86_64 work

The triple uses a bar "x86-64" instead of an underscore. Since we
have troubles accepting x86-64 as an identifier, we stick with
x86_64 in the frontend and translate it explicitly.

Reviewed By: tianshilei1992

Differential Revision: https://reviews.llvm.org/D93786
The file was addedclang/test/OpenMP/declare_variant_ast_x86_64.c
The file was modifiedllvm/lib/Frontend/OpenMP/OMPContext.cpp
Commit 36c4dc9b42fe2e6af4ab488b7c4013d5082b67f6 by johannes
[OpenMP][FIX] Ensure the isa trait is evaluated last

Since isa can cause diagnostics we want it to be evaluated last to avoid
the "unknown isa" warning if the rest of the selector wouldn't match
anyway. That allows us to guard isa with arch properly.

Reviewed By: jhuber6

Differential Revision: https://reviews.llvm.org/D93785
The file was modifiedclang/test/OpenMP/begin_declare_variant_messages.c
The file was modifiedclang/test/OpenMP/declare_variant_messages.c
The file was modifiedclang/test/OpenMP/nvptx_declare_variant_name_mangling.cpp
The file was modifiedclang/test/OpenMP/declare_variant_messages.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPKinds.def
Commit 275f30df8ad6de75e1f29e4b33eaeb67686caf0d by George Burgess IV
[clang] Change builtin object size when subobject is invalid

Motivating example:

```
  struct { int v[10]; } t[10];

  __builtin_object_size(
      &t[0].v[11], // access past end of subobject
      1            // request remaining bytes of closest surrounding
                   // subobject
  );
```

In GCC, this returns 0. https://godbolt.org/z/7TeGs7

In current clang, however, this returns 356, the number of bytes
remaining in the whole variable, as if the `type` was 0 instead of 1.
https://godbolt.org/z/6Kffox

This patch checks for the specific case where we're requesting a
subobject's size (type 1) but the subobject is invalid.

Differential Revision: https://reviews.llvm.org/D92892
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/CodeGen/object-size.c
Commit 6e7101530dae78efd7b5cdffc1338790ed3e5705 by johannes
[OpenMP][Docs] Mark finished features as done

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D94185
The file was modifiedclang/docs/OpenMPSupport.rst
Commit ce7f30b2a874386a0ce089c98327acb65e87b04d by alexandre.ganea
[llvm-pdbutil] Don't crash when printing unknown CodeView type records

Differential Revision: https://reviews.llvm.org/D93720
The file was addedllvm/test/tools/llvm-pdbutil/unknown-records.test
The file was addedllvm/test/tools/llvm-pdbutil/Inputs/unknown-record.obj
The file was modifiedllvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
The file was modifiedllvm/tools/llvm-pdbutil/FormatUtil.h
The file was modifiedllvm/tools/llvm-pdbutil/FormatUtil.cpp
Commit 70b841ac317765c5c504334f7a22ac085f14ac2d by eschweitz
[mlir] Adds argument attributes for using LLVM's sret and byval attributes
to the conversion of LLVM IR dialect. These attributes are used in FIR to
support the lowering of Fortran using target-specific calling conventions.

Add roundtrip tests.

Add changes per review comments/concerns.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D94052
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/func.mlir
The file was modifiedmlir/test/Target/llvmir-invalid.mlir