[all-commits] [llvm/llvm-project] 2146fd: Revert "Reland "[AArch64] Decouple feature depende...

Fangrui Song via All-commits all-commits at lists.llvm.org
Thu Jun 13 11:49:44 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2146fd0d8d0ede4657354594c012e7543534cd87
      https://github.com/llvm/llvm-project/commit/2146fd0d8d0ede4657354594c012e7543534cd87
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-06-13 (Thu, 13 Jun 2024)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/test/CodeGen/aarch64-cpu-supports-target.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/aarch64-sme-attrs.cpp
    M clang/test/CodeGen/aarch64-targetattr.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/Sema/aarch64-neon-target.c
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/lib/TargetParser/AArch64TargetParser.cpp

  Log Message:
  -----------
  Revert "Reland "[AArch64] Decouple feature dependency expansion. (#94279)" (#95231)"

This reverts commit 70510733af33c70ff7877eaf30d7718b9358a725.

The following code is now incorrectly rejected.

```
% cat neon.c
#include <arm_neon.h>
__attribute__((target("arch=armv8-a")))
uint64x2_t foo(uint64x2_t a, uint64x2_t b) {
  return veorq_u64(a, b);
}
% newclang --target=aarch64-linux-gnu -c neon.c
neon.c:5:10: error: always_inline function 'veorq_u64' requires target feature 'outline-atomics', but would be inlined into function 'foo' that is compiled without support for 'outline-atomics'
    5 |   return veorq_u64(a, b);
      |          ^
1 error generated.
```

"+outline-atomics" seems misleading here.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list