diff options
author | Andrew Stubbs <ams@codesourcery.com> | 2021-10-16 18:41:39 +0200 |
---|---|---|
committer | Tobias Burnus <tobias@codesourcery.com> | 2021-10-18 08:10:44 +0200 |
commit | 0eb56ebc053810fb86eb7d356fe59dd32055b6d5 (patch) | |
tree | 39ae1b7eb765f1dc2cbd00effa865e00f4863703 /gcc/config.in | |
parent | 5b85107d3ce704bf5f6fff63d1736ddc00265d24 (diff) | |
download | gcc-0eb56ebc053810fb86eb7d356fe59dd32055b6d5.tar.gz |
amdgcn: Support LLVM 13 assembler syntax
The LLVM devs have changed the assembler architecture attribute names on both
CLI and in the ".amdgcn_target" directive, and changed the attribute syntax
inside the directive, without keeping any backwards compatibility. :-(
This patch improves our configure tests to detect what dialect to use, what
attributes are valid, and adjusts the specs to match.
gcc/ChangeLog:
* config.in: Regenerate.
* config/gcn/gcn-hsa.h (X_FIJI): New macro.
(X_900): New macro.
(X_906): New macro.
(X_908): New macro.
(A_FIJI): Rename to ...
(S_FIJI): ... this.
(A_900): Rename to ...
(S_900): ... this.
(A_906): Rename to ...
(S_906): ... this.
(A_908): Rename to ...
(S_908): ... this.
(SRAMOPT): New macro.
(ASM_SPEC): Adjust xnack option usage.
* config/gcn/gcn.c (output_file_start): Adjust amdgcn_target usage.
* configure: Regenerate.
* configure.ac: Detect LLVM assembler dialect.
(cherry picked from commit 6ca03ca35a58ebf9792aa8a08adf00b6fd3e0015)
Diffstat (limited to 'gcc/config.in')
-rw-r--r-- | gcc/config.in | 44 |
1 files changed, 40 insertions, 4 deletions
diff --git a/gcc/config.in b/gcc/config.in index 963f02f68db..2de5a463315 100644 --- a/gcc/config.in +++ b/gcc/config.in @@ -1444,30 +1444,66 @@ #endif -/* Define if your assembler allows -mattr=+sram-ecc for fiji. */ +/* Define if your assembler expects amdgcn_target gfx908+xnack syntax. */ +#ifndef USED_FOR_TARGET +#undef HAVE_GCN_ASM_V3_SYNTAX +#endif + + +/* Define if your assembler expects amdgcn_target gfx908:xnack+ syntax. */ +#ifndef USED_FOR_TARGET +#undef HAVE_GCN_ASM_V4_SYNTAX +#endif + + +/* Define if your assembler allows -mattr=+sramecc for fiji. */ #ifndef USED_FOR_TARGET #undef HAVE_GCN_SRAM_ECC_FIJI #endif -/* Define if your assembler allows -mattr=+sram-ecc for gfx900. */ +/* Define if your assembler allows -mattr=+sramecc for gfx900. */ #ifndef USED_FOR_TARGET #undef HAVE_GCN_SRAM_ECC_GFX900 #endif -/* Define if your assembler allows -mattr=+sram-ecc for gfx906. */ +/* Define if your assembler allows -mattr=+sramecc for gfx906. */ #ifndef USED_FOR_TARGET #undef HAVE_GCN_SRAM_ECC_GFX906 #endif -/* Define if your assembler allows -mattr=+sram-ecc for gfx908. */ +/* Define if your assembler allows -mattr=+sramecc for gfx908. */ #ifndef USED_FOR_TARGET #undef HAVE_GCN_SRAM_ECC_GFX908 #endif +/* Define if your assembler allows -mattr=+xnack for fiji. */ +#ifndef USED_FOR_TARGET +#undef HAVE_GCN_XNACK_FIJI +#endif + + +/* Define if your assembler allows -mattr=+xnack for gfx900. */ +#ifndef USED_FOR_TARGET +#undef HAVE_GCN_XNACK_GFX900 +#endif + + +/* Define if your assembler allows -mattr=+xnack for gfx906. */ +#ifndef USED_FOR_TARGET +#undef HAVE_GCN_XNACK_GFX906 +#endif + + +/* Define if your assembler allows -mattr=+xnack for gfx908. */ +#ifndef USED_FOR_TARGET +#undef HAVE_GCN_XNACK_GFX908 +#endif + + /* Define to 1 if you have the `getchar_unlocked' function. */ #ifndef USED_FOR_TARGET #undef HAVE_GETCHAR_UNLOCKED |